django和ejabberd之间用于网络聊天应用的互动

时间:2014-03-16 14:56:05

标签: python django xmpp chat

我正在开展网络项目,我必须进行网络聊天。我的结构或多或少是这样的:你有一个用户名,密码,昵称和电子邮件,你可以和你名单上的其他人聊天。我使用django(python)作为web后端,使用xmpp作为聊天部分。

我已经阅读了很多关于xmpp的内容,并且我使用节点实现了简单的聊天,添加和删除了联系人,昵称等。

我想问的是如何与django和ejabberd沟通,例如注册用户(我不想要在带内注册,我只想在用户创建帐户时启用注册),更改密码,更新昵称等等。大多数需要某种提升权限的事情。

我在发布之前做了一些研究,我知道sleekxmp,但就我而言,它只是一个xmpp的python库。另外,我还没有找到ejabberd的API。

谢谢。

2 个答案:

答案 0 :(得分:0)

阅读并使用类似工人的方法来规避这一点。你想在视图中天真地使用光滑的xmpp客户端。

由于聊天是全双工的,您可能需要WebSocket + Django python WebService Django / Comet (Push): Least of all evils?甚至“oldskool”Long polling in Django

答案 1 :(得分:0)

默认情况下,ejabberd使用内部用户数据库,但您可以设置ejabberd来管理external auth script用户 - 有用于与Django app集成的示例脚本,对于现有数据库,您还可以编写自己的extauth脚本{ {3}}