XMPP作为控制台界面

背景:我正在尝试构建一个将用作XMPP-SMS网关的应用程序,以便我可以使用任何Jabber客户端进行文本消息传递。 作为使用Twilio API的Python应用程序,我已经实现了文本消息功能。 因此,我宁愿我的解决方案是基于Python的,尽管我愿意考虑其他解决方案。

我想要做的是能够拥有一个Jabber服务器,该服务器允许根据现有的授权方案进行身份验证(例如,存储用户记录作为用户名/ bcrypt哈希对的现有SQLite数据库),并允许使用以下:

  • 如果传入的消息来自用户的电话号码,则会从(phone number)@(app server) (user)@(app server)(phone number)@(app server) (user)@(app server)所有连接资源发送消息,
  • 如果用户向(phone number)@(app server)发送消息,它将获得该消息行并相应地执行该消息(例如,发送消息或执行来自用户的命令,例如!block!last 3或其他)
  • 对于奖励积分,如果用户连接,服务器会收到通知,并自动发送来自operator@(app server)的状态更新以及关于未读消息等的信息。
  • 我遇到的问题是我所能找到的所有XMPP服务器实现都被设计成支持标准Jabber通信的交钥匙,但似乎没有用于添加身份验证机制或“bot”的可扩展性,类型的功能,如果他们支持机器人,机器人必须事先注册一个或多个身份,我宁愿不必这样做。

    我不需要支持联邦或代理或其他任何东西 - 我只想使用XMPP作为通知机制,以便我可以将推式消息传递到移动设备,而无需专门为它们编写客户端。

    我认为对我来说最理想的是Python的XMPP库,它可以作为非常基本的服务器的基础,但不提供客户端连接套接字处理之外的任何服务器功能。

    到目前为止,我已经检查了很多库(sleekxmpp,jabber.py,xmpppy,twisted-words)和服务器实现(ejabberd,韵律),但是我一直跑到一堵墙里,无法找到如何做不仅仅是一个连接到预先注册的单一身份的简单聊天机器人,还是一切都适合在分布式Jabber聊天系统上成为全功能的联合节点,并且具有全功能用户注册等功能。 但肯定我错过了一些东西......

    链接地址: http://www.djcxy.com/p/94057.html

    上一篇: XMPP as a console interface

    下一篇: Perl Net::Jabber::Bot new line