he110/通信工具

用于消息管理器的工具集。允许您通过Telegram、Viber、WhatsApp、VK等发送任何内容

v0.1.5 2020-01-16 05:02 UTC

This package is auto-updated.

Last update: 2024-09-16 15:26:17 UTC


README

Latest Stable Version codecov Maintainability

用于消息管理器的工具集。允许您通过Telegram、Viber、WhatsApp、VK、Facebook Messenger等发送任何内容。

安装

使用以下命令安装最新版本

$ composer require he110/communication-tools

基本用法

消息客户端

<?php

// Telegram client's taken as an example. You can use other
use He110\CommunicationTools\Telegram\Messenger;
use He110\CommunicationTools\MessengerScreen;

$messenger = new Messenger();
$messenger->setAccessToken(YOUR_TOKEN_HERE);

// If you want, to send simple text message
$messenger->sendMessage("Your message text here");

// To send image use method sendImage
$messenger->sendImage("path/to/file", "(Optional) Your text description");
// or, to send document...
$messenger->sendDocument("path/to/file", "(Optional) Your text description");
// you can also send voice files
$messenger->sendVoice("path/to/file");

// If you wanna use buttons, it's better way to use MessengerScreen
$screen = new MessengerScreen();
$screen->addMessage("Your message text here");
$screen->addButtonText("Text button");
$screen->addButtonLink("URL button", "https://google.com");
$messenger->sendScreen($screen);

多个消息客户端

<?php

// Telegram client's taken as an example. You can use other
use He110\CommunicationTools\MessengerPool;
use He110\CommunicationTools\Telegram\Messenger;
use He110\CommunicationTools\MessengerScreen;

$messenger = new Messenger();
$messenger->setAccessToken(YOUR_TOKEN_HERE);

// Pool allows you to use multiple messengers as one
$pool = new MessengerPool();
$pool->add($messenger);

$pool->sendMessage("Your message text here");

// If you wanna use buttons, it's better way to use MessengerScreen
$screen = new MessengerScreen();
$screen->addMessage("Your message text here");
$screen->addButtonText("Text button");
$screen->addButtonLink("URL button", "https://google.com");
$pool->sendScreen($screen);

处理事件

<?php

// Telegram client's taken as an example. You can use other
use He110\CommunicationTools\Telegram\Messenger;
use He110\CommunicationTools\Request;
use He110\CommunicationTools\MessengerUser;

$messenger = new Messenger();
$messenger->setAccessToken(YOUR_TOKEN_HERE);

// Action for simple incoming messages
$messenger->onMessage(function(Request $request) use ($messenger) {
    // Your code here...
    $text = $request->getMessage();
    /** @var MessengerUser $user $user */
    $user = $request->getUser();
    $messenger->setTargetUser($user->getUserId());
    $messenger->sendMessage("We've got your message: '$text'");
});

// Action for buttons click
$messenger->onButtonClick(function(Request $request) use ($messenger) {
     // Your code here...
     $payload = $request->getPayload();
});

// Required!!! Run this method to check if events are triggered
$messenger->checkEvents();

关于

要求

  • Communication Tools支持PHP 7.2或更高版本。

提交错误和功能请求

错误和功能请求在GitHub上跟踪

作者

Ilya S. Zobenko - ilya@zobenko.ru - http://twitter.com/he110_todd

许可证

"Communication Tools"遵循MIT许可证 - 有关详细信息,请参阅LICENSE文件