官方支持的keybase python bot客户端库

pykeybasebot的Python项目详细描述


这是正式支持的keybase python库。它是围绕keybase cli api的一个非pinionated的简单包装器,用于创建交互式bot或通用脚本。此库根本不尝试进行意图分析或管理状态。您必须自己构建这个库,但是有了这些示例,这个库有望使您想要构建的任何东西都变得更容易:)

请参阅https://github.com/keybase/keybase-bot以获取javascript中的类似框架。

这个库远没有完全覆盖整个keybase api,但是我们希望它很容易添加到(模式见chat_client.py)。它目前确实能很好地从频道中阅读和编写信息/反应。对于大多数基本功能来说,这已经足够了。未来的工作可以增加团队行为,更多的钱包功能(如汇款),…

安装

pip install pykeybasebot

请使用Python3.7或更高版本。而且它都是异步的,所以你需要记住这一点。

设置

一般来说,您需要做的是:

  1. 创建一个处理函数来获取事件对象并对其执行某些操作。将使用bot实例(如下所述)和kbevent实例调用此函数。
  2. 创建机器人。您必须使用正在运行的keybase用户的用户名和要对每个事件调用的handler函数来初始化它。您可以选择传入:(1)要将新任务发送到的事件循环(如果要锁定异步行为,这是必需的——请参阅示例),(2)正在运行的keybase应用程序的位置(默认为keybase,如果在您的路径中,这是可以的)、用户的主目录或pid文件。这三个对于复杂的多帐户本地开发更有用,如果您在Docker容器中运行或作为系统上的唯一用户运行,则这三个功能就不那么有用。
  3. 如果您尚未在已登录的设备上运行,则需要执行此操作。我们建议使用oneshot命令执行此操作。在例子里。
  4. 在异步事件循环内启动bot。这个bot命令包装keybase chat api-listen(它接受基本相同的确切选项),并向处理程序函数触发事件。

示例

一定要看看这些例子。我们真的指望他们能弄清楚如何使用这个图书馆。

开发

减贫战略非常受欢迎。首先,跳转到python 3.7环境,但是您喜欢管理python环境。诚然,这些测试是薄弱的。如果克隆并拉下repo,则此命令将使您全部设置:

python setup.py test

更新

在setup.py中增加版本,编译新版本,并将其推送到pypi。

python setup.py sdist bdist_wheel
python -m twine upload dist/* --verbose

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

推荐PyPI第三方库


热门话题
基于Java的遗传算法确定最优交易行为   java改型2.0无法解析Json嵌套对象   java在数组中查找最大额定值(数字),我们不能跳过数组中的一个或多个连续数字   java在spring boot中从命令行设置活动概要文件和配置位置   JavaAxis2:传输错误:404错误:未找到帮助理解其真正含义   java使用Play2WAR和Play2.2.1   java理解函数运算符:Lambda   在代理java后面读取https网页数据   java应用程序。Android单元测试中的类mock   java为什么onClick布局XML引用的方法需要是公共的?   从SMTLIB2文件解析的java显示声明   java重写给定的类以使用组合而不是继承   HTMLUnit和Java:NoSuchMethodException:createDefaultSSLContext()   java如何使用Spring和ThymeLeaf从前端正确更新后端中的对象?   来自init()Java的方法调用   使用cellrendering从数据库向JTable动态添加数据后,java无法使用JTable执行排序操作   java Android Studio 1.5.1。渲染错误(浮动操作按钮)   web服务如何使用UsenameToken和PasswordDigest为JAVA中的SOAP客户端附加wsse安全头   java为什么要在局部变量和myApplicationClass中同时删除“ArrayList.remove”?