XMPP Webhook网桥

xmppwb的Python项目详细描述


请注意,xmppwb目前处于早期开发阶段,可能包含错误。

一种将xmpp(聊天和mucs)与webhook连接起来的机器人,从而使它成为可能 与xmpp世界之外的服务交互。这个可以用来连接 xmpp到其他提供webhook api的聊天服务(例如 Rocket.ChatMattermost)。

安装

注意:需要python 3.5。它不能与Python3.4一起使用,因为xmppwb使用Python3.5引入的特定语法。

xmppwb需要python 3.5+,可以使用pip3安装:

$ pip3 install --upgrade xmppwb

它将自动安装依赖项(aiohttppyyamlslixmpp)。

用法

此网桥应与您所在的应用程序在同一服务器上运行 与桥接,因为它当前使用http作为传入的webhook。

要运行桥:

$ xmppwb --config configfile.conf

或:

$ python3 -m xmppwb --config configfile.conf

概要:

$ xmppwb -c CONFIG [-h][-v][-l LOGFILE][-d][--version]

另请参见xmppwb --help

配置

请看CONFIGURATION.rst 详细文件。一个简单的配置文件如下所示 <placeholders>需要更改:

xmpp:# This JID must exist.jid:<alice@example.com>password:"<bot-password>"# Define all MUCs that should be available to the bridges defined later.mucs:-jid:<conference1@conference.example.com>nickname:<nickname># password: "<muc-password>"incoming_webhook_listener:bind_address:"127.0.0.1"port:5000bridges:-xmpp_endpoints:-muc:<conference1@conference.example.com>outgoing_webhooks:-url:<incoming-webhook-url-from-other-end>incoming_webhooks:-token:<outgoing-webhook-token-from-other-end>

请注意,密码存储在明文中,因此请采取以下预防措施 限制文件权限。建议使用专用的JID 这座桥。

配置文件中的术语incomingoutgoing是指 从这座桥的角度看webhooks。还必须定义webhook 在另一端(rocket.chat和mattermost为此提供了一个ui,用于 示例)。在rocket.chat中必须设置一个outgoing webhook 此网桥中的传入webhooks节,反之亦然。

与rocket.chat集成

中提供了一个用于将xmpp与Rocket.Chat桥接的示例配置 rocketchat.example.conf。 建议复制并填写所有<placeholders>

  1. 要在rocketchat中创建相应的webhook,请转到 管理->;集成并创建新的传入webhook。 在这里,您可以选择要桥接的频道。
  2. 保存后,将生成webhook url。复制并填写 配置中的<incoming-webhook-url-from-rocketchat>占位符 文件。
  3. 现在创建一个传出webhook。URL的格式为 http://{bind_adress}:{port}/,这取决于 incoming_webhook_listener节。它默认为 http://127.0.0.1:5000/
  4. 复制令牌并将其填充到 <outgoing-webhook-token-from-rocketchat>占位符。
  5. 填写完所有其他占位符后,桥就可以运行了 (见usage)。

与Mattermost集成

中提供了一个用于将xmpp与Mattermost桥接的示例配置 mattermost.example.conf。 建议复制并填写所有<placeholders>

  1. 要在mattermost中创建相应的webhook,请转到 帐户设置->;集成并创建新的传入webhook。 在这里,您可以选择要桥接的频道。
  2. 保存后,将生成webhook url。复制并填写 配置中的<incoming-webhook-url-from-mattermost>占位符 文件。
  3. 现在创建一个传出webhook。回调url的格式为 http://{bind_adress}:{port}/,这取决于 incoming_webhook_listener节。它默认为 http://127.0.0.1:5000/
  4. 保存后,复制令牌并将其填充到 <outgoing-webhook-token-from-mattermost>占位符。
  5. 填写完所有其他占位符后,桥就可以运行了 (见usage)。

许可证

xmppwb是根据mit许可证发布的。请阅读 LICENSE了解详细信息。

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

推荐PyPI第三方库


热门话题
java使用ContentExchange设置请求属性   java Spark/Hdfs/Hdfsclient兼容性   java springcloudstreamkafka配置:instanceCount和instanceIndex   Java中web服务序列化日期   java用动态数据替换占位符   java git gc似乎覆盖了一个packfile,留下了一个打开的文件描述符,其中包含对“oldxxx.pack”的引用   为什么Apache项目对Java版本敏感?   java Anylogic帮助如何在导入的3dobject通过输送机上的多个“站”时更改其颜色?   JavaEclipseNeonM2E可以导入一个大型项目,但似乎不能自动解决依赖关系   java@FindBy搜索具有满足条件的子元素的元素   java如何将ActionEvent e与键绑定一起使用?   java转换以集中方式从外部库抛出的异常   java中用户文件/数据文件与系统/程序文件的区别   java使用变量字符串或字符作为对象名   字体使用Java图形操纵字符串中每个字符的形状   JavaFX图表移动数据   java RandomAccessFile:将所有项设置为相同的字节数?   java Google Play inapp Billing onPurchasesUpdated()错误响应代码1   java在不知道属性名和属性数的情况下处理json对象   java是否可以一次从HazelcastInstance(映射和列表)中删除所有数据?