用于在facebook messenger平台上构建服务的异步python库
boomerang的Python项目详细描述
回飞棒
Boomerang是一个异步Python库,用于在 Facebook Messenger平台。请参阅ReadTheDocs上的文档!
我为什么要用回飞棒?
为什么我不能用回飞棒?
- 库使用python 3.5的async和await语法,正如 底层Sanic服务器。如果需要对旧版本的支持,Boomerang 不是很合适。
- Boomerang拥有自己的服务器(SANIC),允许紧密集成 快速处理。但是,如果要使用不同的服务器(如 烧瓶),回飞棒不合适。
示例
下面的示例是一个简单的echo服务器。当用户将消息发送到 机器人,机器人回显消息:
from boomerang import Messenger, messages, events # Set the app's API access tokens, provided by Facebook VERIFY_TOKEN = 'your_webhook_token_here' PAGE_TOKEN = 'your_page_access_token_here' # Initialise the server app = Messenger(VERIFY_TOKEN, PAGE_TOKEN) @app.handle(events.MESSAGE_RECEIVED) async def message_received(self, message): # Print the received message print('Received message from {0}'.format(message.user_id)) print('> {0}'.format(message.text)) # Inform the sender that their message is being processed await self.acknowledge(message) # Return the message's text to respond return message.text app.run(hostname='0.0.0.0', debug=True)
功能
- 支持webhook、send、线程设置和用户配置文件api。
- 完全支持消息模板。
- 用于发送消息的高级或低级接口。
- 自动附件宿主:库可以通过服务发送本地文件 它使用一个唯一的url静态地传递给messenger。这是 缓存意味着文件只提供一次,有助于提高性能。
学分
这个包是用Cookiecutter和 audreyr/cookiecutter-pypackage项目模板。Cookiecutter真的很酷 你应该去看看!
历史记录
0.6.0(12-2-2017)
- 中断更改:处理程序函数不再在 Messengerclass;而是使用@app.handledecorator。见 有关更多详细信息的文档。
- 处理函数现在可以简单地返回多种格式的响应, 解释并作为回复发送。
0.5.0(5-2-2017)
- 实现用户配置文件api。
0.4.0(5-2-2017)
- 实现线程设置api。
0.3.0(4-2-2017)
- 使用内部服务器添加自动附件宿主
- 添加对Messenger API错误的正确处理
0.2.1(1-2-2017)
- 更新依赖项版本以修复Travis CI中的版本冲突。
0.2.0(1-2-2017)
- 实现send api。支持所有非测试版模板和消息 (航空公司模板除外)。
0.1.0(2016年12月25日)
- 实现webhook api,处理所有非beta事件类型 “消息回送”事件除外,该事件将在完成 发送api实现。
0.0.0(2016年12月22日)
- 初始开发版本。