mremi / dolist

一个用于与Dolist CRM API交互的PHP5库

v1.0.0 2013-07-19 21:04 UTC

This package is auto-updated.

Last update: 2024-08-26 23:03:38 UTC


README

SensioLabsInsight

Build Status Total Downloads Latest Stable Version

此库允许您与Dolist CRM的API进行交互。

基本文档

安装

只需一步

使用composer下载Dolist

在composer.json中添加Dolist

{
    "require": {
        "mremi/dolist": "dev-master"
    }
}

现在运行以下命令让composer下载库:

$ php composer.phar update mremi/dolist

Composer会将库安装到项目的vendor/mremi目录。

添加/更新联系人

<?php

use Mremi\Dolist\Authentication\AuthenticationManager;
use Mremi\Dolist\Authentication\AuthenticationRequest;
use Mremi\Dolist\Contact\ContactManager;
use Mremi\Dolist\Contact\FieldManager;

$contactSoapClient = new \SoapClient('http://api.dolist.net/v2/ContactManagementService.svc?wsdl', array(
    'soap_version'       => SOAP_1_1,
    'trace'              => true,
    'connection_timeout' => 2,
    // ...
));
$authSoapClient = new \SoapClient('http://api.dolist.net/v2/AuthenticationService.svc?wsdl', array(
    'soap_version'       => SOAP_1_1,
    'trace'              => true,
    'connection_timeout' => 2,
    // ...
));
$authRequest = new AuthenticationRequest('YOUR_ACCOUNT_IDENTIFIER', 'YOUR_AUTHENTICATION_KEY');
$authManager = new AuthenticationManager($authSoapClient, $authRequest, 3);

$contactManager = new ContactManager($contactSoapClient, $authManager, 3);
$fieldManager   = new FieldManager;

$contact = $contactManager->create();
$contact->setEmail('test@example.com');
$contact->addField($fieldManager->create('firstname', 'Firstname'));
$contact->addField($fieldManager->create('lastname', 'Lastname'));

$ticket = $contactManager->save($contact);

$saved = $contactManager->getStatusByTicket($ticket);

if ($saved->isOk()) {
    // contact has been saved...
} else {
    // something is wrong...
    echo sprintf('Returned code: %s, description: %s', $saved->getReturnCode(), $saved->getDescription());
}

检索联系人

<?php

use Mremi\Dolist\Contact\GetContactRequest;

$request = new GetContactRequest;
$request->setOffset(50);
// ...
$contacts = $contactManager->getContacts($request);
// ...

贡献

有任何疑问或反馈?请提交一个问题,我会尽快回复。

这里缺少功能吗?请随意创建一个pull request来解决它!

希望这对你有所帮助,如果有的话,请分享和推荐! :)

@mremitsme