我在开发分支上。
我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
发生此错误后,如果我尝试从中运行EchoBot
,echo_client.py
我会卡在connecting to xx.xxx.xxx.xxx:xxxx
.
如果我EchoBot
再次运行我的版本,它会开始正常工作,但我担心会再次出现其他错误。
可能相关:
* 连接到 Google Talk
* 还通过我的浏览器登录了 gmail
* 还在我的 Android 上登录了 Google Talk
我的问题是如何解决这个错误,或者如何捕捉并正确处理它?