我有用于python的sleekXMPP,我已经使用API来创建发送消息的功能,虽然当我研究接收它们时我找不到任何东西,有人可以帮我解决这个问题,或者反驳可能性。谢谢。 下面是我用来发送消息的代码,如果有任何帮助的话。
to = config.get('usermap', to[4:])
gmail_from_user = config.get('auth', 'email')
gmail_from_secret = config.get('auth', 'secret')
sys.stdout = stdouttmp
sys.stderr = stderrtmp
print "Sending chat message to " + to
xmpp = SendMsgBot(gmail_from_user, gmail_from_secret, to, message)
xmpp.register_plugin('xep_0030') # Service Discovery
xmpp.register_plugin('xep_0199') # XMPP Ping
sys.stdout = stdouttmp
if xmpp.connect(('talk.google.com', 5222)):
xmpp.process(block=True)
else:
sys.stdout = stdouttmp
print("Unable to connect.")
sys.stdout = stdouttmp
sys.stderr = stderrtmp
btw我使用.cfg文本文件作为用户电子邮件和密码,以及一些联系人,然后在
中解析答案 0 :(得分:3)
我看到您正在使用send_client.py示例。该示例的目的是如何可靠地登录,发送单个消息,然后注销。您的用例是发送和接收消息,因此您可以更好地查看echo_client.py示例。
值得注意的是,为了收到你要做的信息:
# in your __init__ method:
def __init__(...):
# ...
self.add_event_handler('message', self.recv_message)
def recv_message(self, msg):
# You'll probably want to ignore error and headline messages.
# If you want to handle group chat messages, add 'groupchat' to the list.
if msg['type'] in ('chat', 'normal'):
print "%s says: %s" % (msg['from'], msg['body'])
同样,您需要切换使用SendMsgBot
示例,因为它会在发送消息后自动断开连接。
如果您需要任何帮助,请不要忘记有sleek@conference.jabber.org聊天室。
- Lance