shoppimon / ockham
支持/工单系统API抽象层
Requires
- php: >=5.5
Requires (Dev)
- phpunit/phpunit: 4.*
- uservoice/uservoice: >= 0.0.9
- zendframework/zend-mail: >=2.3.0
- zendframework/zend-servicemanager: >=2.3.0
Suggests
- uservoice/uservoice: Enables the UserVoice service adapter (for uservoice users)
- zendframework/zend-mail: Enables sending tickets via email using Zend\Mail
This package is not auto-updated.
Last update: 2024-09-28 17:12:41 UTC
README
Ockham是一个最小的抽象层,封装了不同的API以支持第三方工单系统。它的目的不是提供人们从工单系统API中期望的所有功能,而是一个“最低的共同分母”实现,即大多数应用程序在集成工单系统时所需的最小功能——即创建工单,以及可能的一些其他操作,但不超过这些。
安装
Ockham通过Composer提供。通过在项目根目录运行以下composer命令将Ockham添加到您的项目中:
$ composer require shoppimon/ockham
此外,大多数服务适配器实现都需要显式要求(它们仅由composer包建议,而不是要求,因为大多数人不会使用所有这些)。因此,您还需要要求特定的底层库(例如):
$ composer require uservoice/uservoice
这将带来任何所需的依赖项。
请注意,Composer将设置所需的包含路径,所以如果您还没有这样做(通常您的框架会这样做),您需要从vendor/autoload.php
中require
Composer的自动加载器文件。
实现适配器
uservoice
- 在uservoice.com上创建工单需要uservoice/uservoice
composer包zendmail
- 使用Zend\Mail ZF2组件通过发送电子邮件到指定的地址“创建工单”。需要zendframework/zend-mail
composer包mock
- 一个模拟实现,实际上并不做任何事情,也没有任何要求;仅用于测试目的。
用法
安装后,您可以使用Factory方法获取所需的后端类实例
use Ockham\Factory;
$options = array(
'transport' => array(
'type' => 'smtp',
'options' => array()
),
'to' => array('feedback@shoppimon.com', 'Shoppimon Support'),
'from' => array('do-not-reply@shoppimon.com'),
'subject_prefix' => '[Support Request]'
);
$ticketService = Factory::createService('zendmail', $options);
$ticketService->createTicket('noob@example.com', 'I need help!', $message);
一些额外的选项和功能在代码中有文档说明(目前如此,抱歉)。
框架封装器
我们的目标是发布Ockham,不严格依赖于任何PHP框架。也就是说,我们旨在提供一些可选的“框架封装器”,它们使用框架特定的服务提供者API封装Factory类。
目前,Zend Framework 2用户可以使用Ockham\Wrapper\Zf2
类作为Service Manager Factory,以便轻松地将Ockham作为全局服务提供。有关详细信息,请参阅类的PHPDoc注释。
贡献,待办事项
您可以通过fork项目的规范仓库并发送pull请求来贡献。以下是一个非详尽的待办事项列表
- 单元测试
- 文档
- 创建额外的适配器(例如,ZenDesk,更多邮件适配器)
版权
(c) 2015 Shoppimon LTD,版权所有。
Ockham是由Shoppimon的开发团队发布的一个开源项目,在MIT许可证下发布。