是否有任何python模块用于在Web应用程序中的用户之间发送消息?

时间:2012-09-26 17:37:56

标签: python pyramid

我正在使用金字塔构建一个网站,并希望找到一些关于在我的网站中的用户帐户之间发送消息的模块。我听说过rails有一些宝石,比如https://github.com/ging/mailboxerhttps://github.com/pluginaweek/has_messages

我想找到python之一。谁能推荐我一些python模块? 谢谢!

2 个答案:

答案 0 :(得分:4)

您可能最好使用现有协议,例如XMPP。例如,对于Plone(Python CMS),有一个完整的XMPP与collective.xmpp.chat集成,可在Plone站点(demo video)的经过身份验证的用户之间提供多用户聊天和即时消息。

对于Pyramid,您需要自己[1]进行此集成,方法是运行Jabber / XMPP服务器(例如ejabberd)并使用现有的XMPP客户端库与Python进行通信。有很多适用于Python的XMPP库,其中一些库在this question的答案中有描述。

注意:如果在查看XMPP之后看起来 way 复杂,请不要害怕。 XMPP及其扩展描述了与Messaging和Presence相关的各种功能,聊天只是其中之一。如果您不需要其他功能,请不要在您的网络应用程序中实现它们。

[1]实际上,有一个金字塔项目似乎正是这样做的:seshat,由@KirkStrauser编写。我自己没有用过它,但看起来非常有希望。

答案 1 :(得分:-1)

不;在Web应用程序中,两个人之间的直接通信是不可能的,因为它们使用无状态协议;服务器不知道请求是否来自同一个人。
话虽这么说,聊天应用程序通常做的是将通信存储在2个人之间的数据库中,并使用AJAX来检索它们。
在线已经有很多聊天应用教程和第三方聊天应用程序包;你可能想看看它们。