aquadim / botkit
创建跨平台聊天机器人的骨架项目
dev-master
2024-09-05 16:25 UTC
Requires
- doctrine/dbal: ^4.0
- doctrine/orm: ^3.2
- symfony/cache: ^7.1
- vlucas/phpdotenv: ^5.6
This package is auto-updated.
Last update: 2024-09-05 16:25:35 UTC
README
创建跨平台机器人的框架
这是什么
BotKit - 一个php框架,用于创建适用于多个即时通讯平台的交互式聊天机器人
工作原理
- 即时通讯平台将webhook发送到public/index.php文件
- BotKit\Bot类加载平台驱动程序
- BotKit\Bot查询驱动程序以确定需要与哪个驱动程序一起工作(在处理webhook的过程中可能只有一个活动的驱动程序)
- 驱动程序构建webhook中描述的事件模型。包括以下通用信息:
- 事件发生的聊天
- 引发事件的用户
- 事件文本(如果有的话)
- 附加数据
- botkit/routing.php文件中描述的场景由机器人进行检查。如果场景条件与构建的事件模型相匹配,则机器人将执行按场景必需的代码。
- 程序员编写的代码(例如:生成消息、添加附件)与位于BotKit\Models命名空间中的抽象对象一起工作。驱动程序将抽象对象和方法转换为特定平台的API调用。
场景
目前,Bot类可以验证
- 用户的状态(参见Bot::whenUserInState)
- 当前正在处理的事件(Bot::onEvent)
- 被调用的命令(Bot::onCommand)
- 当前正在处理哪种类型的回调(Bot::onCallback)
计划支持层