2013-12-23 23 views
0

在openFire服務器上使用strophe.js。 已經使用了openConnection這樣的東西。使用openfire進行Strophe確定服務器是否關閉

openConnection: function() { 
    //alert("Called....."); 
    if (OFConnect.connection != null) return; 
    var conn = new Strophe.Connection(OFConnect.xmppHttpBindUrl); 
    OFConnect.connection = conn; 
    //OFConnect.services = toResource; 
    conn.connect(OFConnect.userName + '@' + OFConnect.openfireDomainURL + '/' + OFConnect.classId, OFConnect.password, function (status) { 
     alert(status); 
     if (status === Strophe.Status.CONNECTED) { 
      jQuery(document).trigger('connected'); 
     } else if (status === Strophe.Status.DISCONNECTED) { 
      jQuery(document).trigger('disconnected'); 
     } else if (status === Strophe.Status.CONNFAIL) { 
      alert("XMPP Connection Failed......."); 
     } else if (status === Strophe.Status.AUTHENTICATING) { 
      alert("XMPP AUTHENTICATING......."); 
     } else if (status === Strophe.Status.AUTHFAIL) { 
      alert("XMPP AUTHENTICATING Failed......"); 
     } else if (status === Strophe.Status.ERROR) { 
      alert("XMPP ERRROR......"); 
     } else if (status === Strophe.Status.ATTACHED) { 
      jQuery(document).trigger('attached'); 
     } else if (status === Strophe.Status.CONNFAIL) {} 
    }); 
} 
}; 

現在的問題是,有一些情況下OPENFIRE SERVER IS DOWN。我需要做一個特定的活動,如果服務器不可達/向下/不正確的鏈接。 在這種情況下,上述代碼的問題是它返回Strophe.Status.CONNECTING而不是連接失敗。 我如何確定鏈接是否已關閉。

回答

2

您使用?

什麼版本的strophe的在1.0.2請幫助!:-(,你也許可以通過修改_doDisconnect(),使其調用this._changeConnectStatus(Strophe.Status.DISCONNECTED, null)無條件解決。

Strophe 1.1.1似乎是做了那個盒子(只是看了看代碼,沒試試)

+0

工作!..謝謝 –

相關問題