tds / telegram-bundle
irazasyed/telegram-bot-sdk 的 Symfony 服务包装器
dev-master / 1.0.x-dev
2016-05-09 12:38 UTC
Requires
- php: >=5.3.9
- irazasyed/telegram-bot-sdk: dev-master
- symfony/framework-bundle: ~2.3|~3.0
This package is not auto-updated.
Last update: 2024-09-14 19:31:02 UTC
README
TDSTelegramBundle 只是一个 Telegram Bot API PHP SDK 的服务包装器
警告 原始 SDK 的所有功能并不都得到支持(尽管主要功能是工作的)。有关更多信息,请参阅 TODOs 部分。
安装
步骤 1:使用 composer 下载 Bundle
使用 composer 需求此 Bundle
$ composer require tds/telegram-bundle "dev-master"
Composer 将将 Bundle 安装到您的项目的 vendor 目录中。
步骤 2:启用 Bundle
在 kernel 中启用 Bundle
<?php
// app/AppKernel.php
public function registerBundles()
{
$bundles = array(
// ...
new TDS\TelegramBundle\TelegramBundle(),
// ...
);
}
步骤 3:配置您的应用的 config.yml
tds_telegram: default: 'default' async_requests: false http_client_handler: ~ bots: default: username: 'SampleBot' token: 'YOUR TOKEN HERE'
步骤 4:创建您的命令
- 创建一个命令类,如 SDK 文档中所示 SDK 文档
- 在您的 services.yml 中将此命令设置为 symfony 服务
app.telegram_command.start_command: class: AppBundle\Telegram\Command\StartCommand tags: - { name: 'tds_telegram.command', bot: 'default' }
如您所见,'bot' 参数与主配置文件中 bots 部分定义的 bot 相同。它告诉 BotManager 应将该命令注入到何处,定义为普通 symfony 服务。
步骤 5:使用库
获取 BotsManager 服务的简单示例,从其中获取所需的 bot 并使用命令处理更新
$manager = $this->getContainer()->get('tds_telegram.bot.bots_manager'); $bot = $manager->bot('default'); while (1) { $upd = $bot->commandsHandler(); }
步骤 6:阅读文档
TODOs
本节是关于当前 Bundle 简单结构的提醒。请随时贡献!
- 单元测试和 CI
- http_client_handler 选项未经过测试
- command_groups 和 shared_commands 选项尚未实现
- 考虑延迟命令初始化
- 考虑内置 CLI 命令和控制台
- 更好的配置文档
许可
此 Bundle 在 MIT 许可下。请参阅 Bundle 中的完整许可证。