2011-09-24 90 views
0

我使用xmpppy libary寫一個XMPP IM機器人。腳本IM機器人xmpppy蟒,如何檢測網絡故障?

我想表演上斷開,但我不知道如何檢測斷開。如果您的Jabber服務器崩潰或者您的互聯網連接丟失,則可能發生這種情況。

我找到了回調,RegisterDisconnectHandler(self, DisconnectHandler),但它不起作用的網絡故障,它只適用於當我明確地調用方法「斷開」。

如何檢測網絡故障或服務器崩潰?

回答

0

你嘗試等待30分鐘網絡故障後?根據您的網絡堆棧設置,可能需要很長時間才能檢測到。但是,如果你沒有定期插座上發送,你可能永遠不會檢測停運。這就是爲什麼許多XMPP棧定期發送一個空格字符,使用的算法,如:

  1. 設置計時器,以N
  2. 在發送節,計時器重置爲N
  3. 當計時器火災,發送空間。
+0

請給出一些有關如何發送這樣的節的detials? – BerSerK

+0

空格字符不是節。你應該可以做'send(「」)'。 –