1

我正在尝试运行“XMPP:权威指南”中提供的示例代码,我发现我可以成功回显其他人发送给我的消息,但我的回复没有保存在 gchat 历史记录中。

我用谷歌搜索了一下,发现我需要在 Usersettings 中将archivingenabled 设置为 True,但我不知道如何使用 slimxmpp 来做到这一点。

有人可以帮我吗?非常感谢!

这是代码

# -*- coding: utf8 -*-
from secret import USER, PD
import sleekxmpp, logging, sys
logging.basicConfig()
sys.setdefaultencoding('utf8') #@UndefinedVariable

class EchoBot : 
    def __init__(self, jid, password) : 
        self.xmpp = sleekxmpp.ClientXMPP(jid, password) 
        self.xmpp.add_event_handler("session_start", self.handleXMPPConnected) 
        self.xmpp.add_event_handler("message", self.handleIncomingMessage) 
        print self.xmpp.settings

    def run(self) : 
        self.xmpp.connect() 
        self.xmpp.process(threaded=True) 

    def handleXMPPConnected(self, event): 
        self.xmpp.sendPresence()

    def handleIncomingMessage(self, message):
        self.xmpp.sendMessage(message["from"], message["body"]) 

if __name__ == '__main__':
    bot = EchoBot(USER, PD)
    bot.run()
4

0 回答 0