题
好的,我很清楚此事还有许多其他问题,但是我一直在搜索,并且还没有找到一个扎实的正确答案,这些答案并没有围绕贾伯(Jabber)或更糟糕的情况。 (对Jabber用户没有冒犯,只是我不希望随之而来的所有附加功能)
我目前有MSNP和Twisted。单词,我只是想发送和接收消息,阅读了许多无法使用的示例,而MSNP的记录很差。
我的偏爱是MSNP,因为它需要的代码要少得多,我并不是在寻找复杂的东西。
使用此代码我可以登录,并查看我在线的朋友(不过不能向他们发送消息。):
import msnp
import time, threading
msn = msnp.Session()
msn.login('XXXXXXX@hotmail.com', 'XXXXXX')
msn.sync_friend_list()
class MSN_Thread(threading.Thread):
def run(self):
msn.start_chat("XXXXXXX@hotmail.com") #this does not work
while True:
msn.process()
time.sleep(1)
start_msn = MSN_Thread()
start_msn.start()
我希望我已经足够清楚了,它很晚,在所有这些MSN感到沮丧之后,我的头部都没有明确的状态。
编辑:由于MSNP似乎已经过时了,任何人都可以推荐有关如何实现这一目标的简单示例吗?不需要任何需要其他帐户的幻想。
解决方案
还有用于Gmail的XMPP。
其他提示
您正在使用2004年被废弃的库,因此我不确定是否仍然可以使用MSNP来谈论MSN。
无论如何我都会尝试:
while True:
msn.process(chats = True)
time.sleep(1)
使用联系人ID,而不是电子邮件地址。
contacts = msn.friend_list.get_friends()
contact_id = contacts.get_passport_id()
您的代码只需启动聊天而无需发送任何内容即可;您需要添加代码以发送消息。
看 send_message
方法IN 这 教程。
看起来像 木瓜 是PYMSN库的维护叉子,目前由Telepathy-Butterfly和AMSN2使用。
Papyon是MSN客户端库,它试图抽象MSN协议血腥的详细信息。它是未最佳的PYMSN MSN库的叉子。 Papyon使用GLIB主事件循环以异步方式处理网络事件。
不隶属于 StackOverflow