基于uwsgi服务器的电报bot构建框架

tgbot的Python项目详细描述


一个python电报机器人

Build Status

欢迎使用基于uwsgi的抽象电报机器人。有了这个框架 很容易用自制的 没有很多额外工作的命令。所有抽象命令都是 实现为获取响应,如上所述 https://core.telegram.org/bots/api。这意味着你不需要 在http请求或php方面的经验:您只需要python。

在接下来的几章中,我将向您解释所有的特性以及如何 正确设置机器人。

设置

首先,在我们讨论abstract机器人时,您首先需要 实现这个包。

使用bot进行编程时,需要以下各项:

  1. 至少python 3.x
  2. 一个受良好支持的python ide(例如pycharm)
  3. 这个python包在pypi上提供

此bot的一个示例实现将很快在 示例文件夹。

用于在真实服务器上使用bot实现

  1. 至少python 3.x
  2. 使用pip install xxxx安装此软件包
  3. 使用pip install redis安装regis
  4. 使用pip install uwsgi安装uwsgi

警告:建议您安装用于 在虚拟环境中使用机器人来避免操作系统混乱。关于的所有信息 可以读取虚拟环境 http://docs.python-guide.org/en/latest/dev/virtualenvs/。虚拟的 环境您可以保留所有使用的需求 项目/机器人。

接下来会有更多的说明。

功能

命令和内联命令

此bot同时支持普通命令和新添加的内联命令 命令。要添加新命令,只需在 命令或内联命令类。方法的名称是命令 本身。要向bot添加更多命令行命令类,只需 将添加到您给类tgbotwsgi的列表中 初始化机器人。有关更多信息,请查看示例。

配置

所有配置都由*.ini-files管理。

uwsgi

机器人

为了正确配置bot,需要一个文件 /bot项目中的resources/config/config.ini。所有需要的 属性将在这里解释,并在 这个例子。

记录

bot支持一个完整的记录器,可以在 电报/tglogging/init.py。

文件

您可以在.json文件中保存多个数据。定义新文件 您只需在 实现时在列表中配置和定义json文件名 类tgbotwsgi

redis

文件服务器

为了在加载文件时保存性能,缓存服务器 实施。每次识别一个命令时,所有创建的 如果缓存是 空的。如果不是空的,则每次识别到命令时 缓存将用于提高机器人的性能。

限制服务器

为了防止垃圾邮件,有一个限制缓存服务器。在config.ini中 能够设置限制的数量和时间:-数量:多少个命令 在你开始限制机器人使用之前是允许的吗?-时间:什么 我们在看经期吗?何时重新设置限制?

对话服务器

此外,还添加了会话缓存服务器来添加 支持更长的命令对话。例如,如果你开始 有了命令,机器人就可以回答第二个问题。你 然后将回答等。所有这些命令将在 下一个子通道阿普特。

接下来会有更多的文档。

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

推荐PyPI第三方库


热门话题
java为什么我的代码永远运行?它只是一堆带int的for循环,应该是递减的?   java如何更改IntelliJ IDEA中的XML缩进?   java如何使未填充的int数组不打印0?   eclipse My Weka Java代码结果*Weka*虚拟*STRING*用于*STRING*属性*   java泄漏了Windows com。安卓内部的政策恳求   java这个无限循环的原因是什么?   swing My标签在Java中很模糊   java如何在组件表示存储扩展中获取组件对象   java如何避免selenium网格中的会话超时   Java乘法测验,如果答案错误,如何循环   在Java HttpServlet Google app engine中保存对象   java ArrayList过滤器   java跳跃减慢了xvelocity:使用Libgdx/Box2D进行跳跃和跑步   java删除、复制和修改pom。xml文件   当提供的时区与服务器的时区相同时,RestCall中的java@DateTimeFormat(iso=iso.DATE_TIME)不工作   java Spring批处理多线程默认限制为10隐式?   安卓错误java。lang.UnsupportedOperationException:无法转换为维度:type=0x1