2016-01-23 53 views
0

我已經安裝了tigase7.0.2以及基本配置。MUC房間鎖定默認安裝tigase

現在我執行使用安裝服務器下面的代碼MUC:

創建

MultiUserChatManager manager = MultiUserChatManager.getInstanceFor(connection); 
MultiUserChat muc = MainActivity.manager.getMultiUserChat("[email protected]" + connection.getServiceName()); 

空間加入

muc = MainActivity.manager.getMultiUserChat("[email protected]" + connection.getServiceName()); 
    muc.join(connection.getUser().split("@")[0]); 
    muc.addMessageListener(new MessageListener() { 
    @Override 
    public void processMessage(final Message message) { 
      runOnUiThread(new Runnable() { 
      @Override 
      public void run() { 
      Toast.makeText(UserListActivity.this, message.getFrom() + ":" + message.getBody(), Toast.LENGTH_SHORT).show(); 
    } 
     }); 
    } 
    }); 

當我加入房以下消息出現在吐司。

: Room is locked. Please configure. 
: Welcome! You created new Multi User Chat Room. Room is locked now. Configure it please! 

當我加入會議室時,會在日誌中給出以下錯誤。

回答

0

當您第一次創建MUC房間時,它會「鎖定」,直到您對其進行配置。有兩種配置房間的方法:接受默認配置(稱爲「即時」房間),或者指定所需的配置。

創建即時室中section 10.1.2 of XEP-0045描述:

<iq from='[email protected]/desktop' 
    id='create1' 
    to='[email protected]' 
    type='set'> 
    <query xmlns='http://jabber.org/protocol/muc#owner'> 
    <x xmlns='jabber:x:data' type='submit'/> 
    </query> 
</iq> 

即,發送IQ消息set類型,包含在MUC所有者命名空間的query元件,只包含一個形式「提交」 。這也在this answer中提及。

要使用房間的特定配置,請參見section 10.1.3 of XEP-0045。首先請求配置表單找出哪些選項是支持的,然後用你需要的設置填寫它。 This answer描述瞭如何創建一個公開且持久的房間。