mremi/

Dolist库在Symfony2中的实现

安装: 487

依赖者: 0

建议者: 0

安全: 0

星标: 0

关注者: 2

分支: 0

开放问题: 0

类型:symfony-bundle

v1.0.0 2013-07-20 09:15 UTC

This package is auto-updated.

Last update: 2024-08-26 23:52:52 UTC


README

SensioLabsInsight

Build Status Total Downloads Latest Stable Version

本包实现了Dolist库在Symfony2中的应用。

许可证

本包遵循MIT许可证

先决条件

本包需要Symfony 2.1+版本。

基本文档

安装

安装是一个快速的三步过程

  1. 使用composer下载MremiDolistBundle
  2. 启用Bundle
  3. 配置MremiDolistBundle

第1步:使用composer下载MremiDolistBundle

在composer.json中添加MremiDolistBundle

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

现在运行命令,让composer下载Bundle

$ php composer.phar update mremi/dolist-bundle

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

第2步:启用Bundle

在kernel中启用Bundle

<?php
// app/AppKernel.php

public function registerBundles()
{
    $bundles = array(
        // ...
        new Mremi\DolistBundle\MremiDolistBundle(),
    );
}

第3步:配置MremiDolistBundle

该Bundle默认配置合理,如下所示。但是您至少需要配置账户标识符和认证密钥。

# app/config/config.yml
mremi_dolist:
    api:
        # mandatory
        account_id:         your_account_identifier
        authentication_key: your_authentication_key

        # optional, default values are:
        authentication:
            wsdl:    http://api.dolist.net/v2/AuthenticationService.svc?wsdl
            options:
                soap_version:       1 # SOAP_1_1
                proxy_host:         ~
                proxy_port:         ~
                proxy_login:        ~
                proxy_password:     ~
                compression:        ~
                encoding:           ~
                trace:              %kernel.debug%
                classmap:           ~
                exceptions:         ~
                connection_timeout: 2
                typemap:            ~
                cache_wsdl:         ~
                user_agent:         ~
                stream_context:     ~
                features:           ~
                keep_alive:         ~
            retries: 1

        # optional, default values are:
        contact:
            wsdl:          http://api.dolist.net/v2/ContactManagementService.svc?wsdl
            options:
                soap_version:       1 # SOAP_1_1
                proxy_host:         ~
                proxy_port:         ~
                proxy_login:        ~
                proxy_password:     ~
                compression:        ~
                encoding:           ~
                trace:              %kernel.debug%
                classmap:           ~
                exceptions:         ~
                connection_timeout: 2
                typemap:            ~
                cache_wsdl:         ~
                user_agent:         ~
                stream_context:     ~
                features:           ~
                keep_alive:         ~
            retries: 1

添加/更新联系人

两个服务允许您添加或更新联系人,使用方式如下

<?php

$contactManager = $container->get('mremi_dolist.api.contact_manager');
$fieldManager = $container->get('mremi_dolist.api.field_manager');

$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;

$contactManager = $container->get('mremi_dolist.api.contact_manager');

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

$contacts = $contactManager->getContacts($request);

贡献

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

这里缺少功能?请自由创建pull request来解决问题!

希望这有所帮助,如果您觉得有用,请分享并推荐! :)

@mremitsme