2015-09-11 53 views
0

我正在開發一個跨平臺的應用程序,其中包含XMPP(ejabberd)。我如何分享資源中的存在?如何分享資源中的存在?

請考慮以下情形:登錄到三個設備

用戶A:PC,Android和iOS。用戶A使用Android將他的存在設置爲「離開」。我如何設置(同步)其他資源以「離開」(併發送出席節)?

我正在尋找解決這個問題使用XMPP協議/ ejabberd服務器;而不是向客戶添加邏輯。

+0

您希望用戶能夠從「離開」回到「可用」嗎?僅來自將用戶設置爲離開的客戶端還是來自所有的客戶端? – xnyhps

+0

因此,如果用戶A在Android上設置「離開」,他可以從iOS重新設置爲「在線」。所以,從所有設備(/資源),是的。 – HayesHimself

回答

2

您並不需要在資源中同步狀態。您需要的是來自其他客戶的顯示規則。

例如,如果用戶有三種不同的資源,你可能會決定:

  • 要顯示三個最可用資源。
  • 顯示最近的一個。
  • 顯示優先級最高的那個。

所以,你不要網絡同步它們,因爲你將失去精度。根據您的客戶端應用程序的目標,簡單地定義您的狀態顯示規則。