codd-tech/bap-sdk-php

广告机器人平台SDK

v0.2.6 2024-03-10 10:41 UTC

This package is auto-updated.

Last update: 2024-09-12 11:23:09 UTC


README

此仓库包含与广告机器人平台相关的SDK。

要求

  • PHP 5.3或更高版本
  • ext-sockets

安装

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

composer require codd-tech/bap-sdk-php

安装ext-sockets

socket扩展实现了对套接字通信的低级接口。

BAP SDK使用UDP协议进行数据传输,以确保用户SDK开销最小。

要安装socket扩展,请将以下行添加到您的php.ini

extension=php_sockets.dll

或者,如果您使用的是官方php镜像,请将RUN docker-php-ext-install sockets添加到项目Dockerfile中。

用法

SDK接受来自Telegram机器人的单个更新,作为一个关联数组。

基本用法

$bap = new \CoddTech\Bap\BAP('<api key>');
$bap->handleTelegramUpdates($update);

如果您的广告模式设置为手动,您可以通过调用在代码中标记广告位置

$bap->advertisement($update);

中断控制流

有时,BAP可能会在广告流中引入Telegram更新。为了保持机器人的逻辑一致性,忽略此类更新是必要的。

BAP::handleTelegramUpdates方法返回一个布尔值,指示您是否应继续处理请求或将其跳过为内部BAP请求。

当方法返回false时,表示当前请求不应由您的机器人处理。

与PHP Telegram Bot包一起使用

如果您使用PHP Telegram Bot包,您可以在自定义更新过滤器中调用SDK,例如

$telegram = new Longman\TelegramBot\Telegram($bot_api_key, $bot_username);

$bap = new \CoddTech\Bap\BAP('<api key>');
$telegram->setUpdateFilter(function (Update $update, Telegram $telegram, &$reason = 'Update denied by update_filter') use ($bap) {
    return $bap->handleTelegramUpdates($update->getRawData());
});

对于手动广告模式(应在设置中打开)在所需的广告位置调用以下内容。

$bap->advertisement($update);

API密钥

API密钥不是您的Telegram机器人令牌。

API密钥必须从socialjet.pro获取

关于

提交错误和功能请求

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

许可证

Bot Advertising Platform SDK根据MIT许可证授权 - 有关详细信息,请参阅LICENSE文件