繁体   English   中英

有没有支持添加/删除用户的python xmpp库?

[英]Is there any python xmpp library that supports adding/removing users?

现在我有一个python类,通过执行“ejabberdctl register / unregister”命令创建用户/删除用户。 是否有支持添加/删除用户的python xmpp库?

您需要实施XEP-0077 :带内注册。 xmpppy似乎支持这个:

import sys
import os
import xmpp

if len(sys.argv) < 3:
    print "Syntax: register.py [JID] [Password]"
    sys.exita(64)

jid=xmpp.protocol.JID(sys.argv[1])
cli=xmpp.Client(jid.getDomain(), debug=[])
cli.connect()

# getRegInfo has a bug that puts the username as a direct child of the
# IQ, instead of inside the query element.  The below will work, but
# won't return an error when the user is known, however the register
# call will return the error.
xmpp.features.getRegInfo(cli,
                         jid.getDomain(),
                         #{'username':jid.getNode()},
                         sync=True)

if xmpp.features.register(cli,
                          jid.getDomain(),
                          {'username':jid.getNode(),
                           'password':sys.argv[2]}):
    sys.stderr.write("Success!\n")
    sys.exit(0)
else:
    sys.stderr.write("Error!\n")
    sys.exit(1)

xmpppy看起来拥有操纵客户端名单的各种方法。

从来没有使用过这个,但是Roster类的API文档列出了:delItem(self,jid)和setItem(self,jid),用于删除指定的jid并将其添加到名单中。

http://xmpppy.sourceforge.net/

http://xmpppy.sourceforge.net/apidocs/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM