2016-11-17 32 views
0

我使用IOS XMPPFramework作爲我們的客戶端基礎設施,我們使用ejabberd作爲我們的XMPP服務器。 但是,當用戶刪除他們的應用程序時,不可能檢索已經註冊的房間。 是在XMPP類似的東西可能(類似的WhatsApp)獲取用戶已經參與的MUC房間列表

感謝

+0

再見。順便說一句,有一個問題可能需要你的幫助。 http://stackoverflow.com/questions/40637958/fetching-ejabberd-muc-members-list – dichen

回答

2
  1. 配置一房持續,會員制。
  2. 將用戶添加到成員列表中。
  3. Discover room

    xmppStream = XMPPStream()   
    xmppStream!.addDelegate(self, delegateQueue: DispatchQueue.main) 
    
    // MUC 
    muc = XMPPMUC(dispatchQueue: DispatchQueue.main) 
    muc?.activate(xmppStream) 
    muc?.addDelegate(self, delegateQueue: DispatchQueue.main) 
    
    muc?.discoverRooms(forServiceNamed: XmppMUCServer) 
    
+0

但這不給我沒有加入房間的列表。它只返回聯合房間,但是當我刪除我的應用程序時,所有的組聊天列表都被刪除了,所以我需要獲得我已經成爲會員的所有組 – tolgatanriverdi

+0

這是一個自定義需求,不包含在XMPP中,就像簡單您可以將用戶房間列表存儲在服務器上,然後當用戶在同一設備或新設備上執行登錄時,可以從後端服務器檢索房間,然後加入這些房間。 –

+0

@tolgatanriverdi,你有試過嗎?我按照我的說法行事,在我身邊運作良好。刪除應用程序,重新安裝,啓動。發現房間時,我將獲得我所屬的所有房間。 – dichen

0

來實現,這將是存儲在服務器上,這將是所有的房間你有興趣在列表上的書籤,作爲書籤存儲在服務器上的樣子,你依然可以檢索他們當你重新安裝應用程序。

定義書籤的XMPP擴展是XEP-0048

相關問題