我想知道这里是否有人可以在以下场景中提供一些代码示例.我对使用xmpppy这样做特别感兴趣,因为我已经在我的应用程序中使用该库,但其他库也可以.不幸的是,xmpppy项目网站上没有任何样本.浏览专家/高级API文档,我无法弄清楚如何做到这一点,或者xmpppy不支持多用户聊天(MUC)?
通过邀请特定用户(比如2或3)创建MUC
向现有MUC发送消息(假设您知道它是MUC JID句柄或昵称)
查找XMPP服务器上的现有MUC,获取JID或昵称等.如果通过获取名单来完成,我们只想查找MUC,忽略用户.
我在这里找到了一个答案,但后来我可能不得不学习新的库API调用,并弄清楚如何进行上述场景,因为这个示例并没有涵盖所有这些:
我真的很想做一个负载生成器,它可以向MUC提供消息并创建包含许多参与者的大型MUC.我已经有了将消息传递给用户收件人的部分.
我正在使用该xmpppy库编写一个可以与用户聊天的 XMPP 客户端。它有自己的 XMPP 用户帐户,需要知道给定用户是否在线。然而,关于如何执行此操作的文档有点稀疏。你会推荐什么?
到目前为止,我见过的唯一解决方案是在 XMPP 服务器启动之前启动一个守护进程,并监视发送出去的所有状态消息 - 然后,如果用户发送了“我在线”,则称他们在线- 键入消息,但不是相应的“我正在注销”消息。然而,作为 XMPP 的新手,我认为会有更好的方法来做到这一点。
我收到以下错误:
AttributeError: Client instance has no attribute 'Dispatcher'
Run Code Online (Sandbox Code Playgroud)
在python 2.7中运行以下代码时:
import xmpp
user= 'uname@gmail.com'
password="pass"
jid = xmpp.JID(user)
connection = xmpp.Client(jid.getDomain())
connection.connect()
connection.auth(jid.getNode(),password)
Run Code Online (Sandbox Code Playgroud)
如果有人知道如何解决它会很高兴.
PS完全由N3RO提出修复后的错误追溯:
C:\Users\krasnovi\Desktop\temp\xmpp tests>python xmpp.client.py
Invalid debugflag given: always
Invalid debugflag given: nodebuilder
DEBUG:
DEBUG: Debug created for build\bdist.win-amd64\egg\xmpp\client.py
DEBUG: flags defined: always,nodebuilder
DEBUG: socket start Plugging <xmpp.transports.TCPsocket instance at 0x0000
0000027C1708> into <xmpp.client.Client instance at 0x00000000027C1588>
DEBUG: socket warn An error occurred while looking up _xmpp-client._tcp.t
alk.gmail.com
DEBUG: socket error Failed to connect to remote host …Run Code Online (Sandbox Code Playgroud) 我在互联网上挖掘了很多,但作为新手,却做不了多少.我总结了以下内容:Facebook Chat可以通过两个身份验证(通过Facebook Chat API官方文档)使用:
1> X-FACEBOOK-PLATFORM 2> DIGEST-MD5
1> X-FACEBOOK-PLATFORM方法有很少的文档,没有一个是官方的,最接近使用 pyfacebook和pyxmpp(官方的facebook chat api页面最后有一个参考).除了因此遭遇的调试问题之外,将两者实现为GAE是另一个令人头痛的问题.尽管如此,创建应用程序并使用其在某些资源中所述的ID也不是问题.我在riccomini.name/Topics/Web/GoogleAppEngine/FacebookConnect/上发现了pyfacebook的一个不错的GAE演练
2> DIGEST-MD5是用户名 - 密码的常用方法,可以由任何xmpp客户端执行.所以我虽然我可以使用像xmpppy这样最适合我的XMPP python客户端库(因为我不需要高级功能)
对我的问题进行了直言不讳:我的推理是否正确?我正在考虑通过方法2(我很清楚MD5加密密码涉及的安全风险,请不要提醒我).我没有找到使用xmpppy和GAE的依据,所以我继续正确吗?
任何人都可以为我提供与GAE一起使用的xmpppy的参考吗?
(如果我不清楚,我很抱歉.不能帮忙,我不是硅谷工程师,而是一个15岁的简单学生)