电报机器人和爱丽丝技巧的另一个常见包装

tgalice的Python项目详细描述


t车道

这是另一个常见的python包装器,用于telegram bots*,alice skills, 以及Facebook Messenger机器人。

目前,它提供:

  • 你的机器人和telegram或alice之间的(几乎)统一接口:DialogConnector
  • 一些简单的对话构造函数:BaseDialogManager及其风格,包括:
    • 一个简单的常见问题对话框管理器
    • 一个简单的表单填写对话框管理器
  • 存储对话状态的包装器:BaseStorage及其味道(具体地说,MongoBasedStorage

package可以使用

安装
pip install tgalice

tgalice的三个组成部分可以组合如下:

importtgaliceconnector=tgalice.dialog_connector.DialogConnector(dialog_manager=tgalice.dialog_manager.BaseDialogManager(),storage=tgalice.session_storage.BaseStorage())

现在您可以将alice和telegram插入连接器。在下面的示例中,它们与烧瓶一起使用。

@app.route("/"+ALICE_URL,methods=['POST'])defalice_response():response=connector.respond(request.json,source='alice')returnjson.dumps(response,ensure_ascii=False,indent=2)@bot.message_handler(func=lambdamessage:True)deftelegram_response(message):response=connector.respond(message,source='telegram')bot.reply_to(message,**response)

为了进一步减少样板代码的数量,可以使用FlaskServer类, 它为您配置alice和telegram,也可以在纯命令行模式下运行 (例如,如果你想在没有互联网连接的情况下测试你的机器人)。

server=tgalice.flask_server.FlaskServer(connector=connector)server.parse_args_and_run()

现在,如果你的应用程序托管在地址{BASE_URL}上,那么alice和facebook的webhook将可用, 分别位于{BASE_URL}/alice/{BASE_URL}/fb/(如果需要,可以重新配置)。

examples目录包含更详细的示例 如何创建对话并为机器人服务。

*电报包装基于pyTelegramBotAPI 包裹。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Maven无法识别安装在Ubuntu外壳上的$java_HOME jdk   java如何防止可运行程序在其中一个抛出异常时执行   java Listview在按下项时不触发   如何在WindowsPhone8中使用JavaRESTWebService?   java在spring引导下使用多个dispatcher servlet/web上下文   java为什么在删除容器的绝对大小时不绘制GEF子项?   java在hibernate实体中保留DB约束是好的   JavaSpring选择最高优先级bean   ArrayList<Class>java字符串[]   有向加权边图的Java邻接表实现   字母数字字符串的java Tesseract配置:混合2、Z、6和G   如果输入为空,则带有EditText的java警报对话框将关闭   jsp上的java Struts 2动作响应   java获取IndexOutOfBundException Android   scala AWSJAVASDK:解压缩大小必须小于262144000字节