pe/component-messenger

v1.0.0 2023-04-21 04:36 UTC

This package is auto-updated.

Last update: 2024-09-21 07:37:59 UTC


README

以下版本的PHP受支持。

  • PHP 7.4+

安装

要安装,请使用composer

php composer.phar require pe/component-messenger

用法

此软件包允许您通过各种渠道和服务发送模板消息。有预定义的渠道来发送聊天、邮件、短信和推送消息。您需要做的是创建集成(如下所述)。

namespace PE\Component\Messenger;

use PE\Component\Messenger\Channel\ChatChannel;
use PE\Component\Messenger\Template\ChatTemplate;

// Example chat (other types has same api)

/* @var $transport TransportInterface */
$transport = '...';// Telegram, Viber, WhatsApp, etc

$channel   = new ChatChannel($transport);
$template  = new ChatTemplate('Hello {{name}}', []);
$recipient = new Recipient('internalID', ['name' => 'John']);

// Send messages and get event collection with results
$events = $channel->send($template, $recipient/*, <other recipients>*/);

// That's all!

创建集成

要创建集成,您需要实现以下内容:

  • 实现 PE\Component\Messenger\FactoryInterface 的工厂,以从DSN创建实例
  • 实现 PE\Component\Messenger\TransportInterface 的传输,以通过特定API发送
  • (可选)实现 PE\Component\Messenger\CollectorInterface 的收集器,以处理webhook调用
  • (可选)实现 PE\Component\Messenger\ValidatorInterface 的验证器,以检查集成在远程端是否成功配置

现在您可以直接使用传输,或者将其集成到集成列表中。为此,您需要将您的工厂添加到 PE\Component\Messenger\FactoryMap,可能通过某些DI容器/框架。