1

我在开发分支上。

EchoBot只修改了一点,下面是更改/添加的代码,否则我从源代码中包含的示例中获取其余部分:

self.add_event_handler("session_start", self.start)
self.add_event_handler("changed_status", self.change)
...

def start(self, event):
    self.send_presence(pshow='xa' , ppriority="0")
    self.get_roster()

def change(self, event):
    #This is django stuff, essentially what I am trying to do is log info from changed_status events
    c = Change(jid = event['from'], timestamp = timezone.now(), new_availability = event['type'], new_priority = event['priority'])
    c.save()

我在开始一段时间时遇到了麻烦,然后在重新启动后它工作了大约一个小时,然后似乎突然出现了以下相同的错误。接下来发生的基本上是一个连接循环,然后另一个 XML 流错误导致断开连接等......

ERROR    Error reading from XML stream.
DEBUG    reconnecting...
DEBUG    SEND (IMMED): 
INFO     Waiting for  from server
DEBUG     ==== TRANSITION connected -> disconnected
DEBUG    connecting...
DEBUG    Waiting 1.84108932156 seconds before connecting.
DEBUG    Connecting to xx.xxx.xxx.xxx:xxxx
DEBUG     ==== TRANSITION disconnected -> connected
DEBUG    SEND (IMMED): 
DEBUG    RECV: X-GOOGLE-TOKENX-OAUTH2
DEBUG    SEND (IMMED): 
DEBUG    RECV: 
DEBUG    Starting TLS
INFO     Negotiating TLS
INFO     Using SSL version: 3

发生此错误后,如果我尝试从中运行EchoBotecho_client.py我会卡在connecting to xx.xxx.xxx.xxx:xxxx.

如果我EchoBot再次运行我的版本,它会开始正常工作,但我担心会再次出现其他错误。

可能相关:
* 连接到 Google Talk
* 还通过我的浏览器登录了 gmail
* 还在我的 Android 上登录了 Google Talk

我的问题是如何解决这个错误,或者如何捕捉并正确处理它?

4

0 回答 0