2012-08-04 60 views
0

我有一個頁面,列出了所有的公共聊天室,我想有: 總居住者/最大用戶XMPP MUC最大用戶數

IE。 (05/10室內人員)

擴展迪廳信息結果(Querying For Room Information)會返回房間中當前的居住者,但不顯示最大居住者的位置。

我該如何去檢索房間的最大用戶數?

回答

0

XEP-0045,略低於example 10是允許在擴展發現結果字段的文字指定,它包括:

...爲MUC#roomconfig FORM_TYPE定義的任何字段可以被包括在擴展的服務發現字段(如上面針對「muc#roomconfig_changesubject」字段所示)。

所以支持該會在發現返回服務器產生一個領域,如下列:

<field var='muc#roomconfig_maxusers' 
     label='Maximum Number of Occupants'> 
    <value>10</value> 
</field> 

如果您的服務器不返回這一點,或許提交功能請求。

1
One can set the number of occupants in MUC's Configuration. Example 157 in XEP-0045 

使用詩節:

<field var='muc#roomconfig_maxusers' 
     label='Maximum Number of Occupants'> 
    <value>50</value> 
</field> 

Objective-C代碼:

的NSArray *字段= [NEWCONFIG elementsForName:@ 「字段」]; (字段中的NSXMLElement *字段)
NSString * var = [field attributeStringValueForName:@「var」];

if ([var isEqualToString:@"muc#roomconfig_maxusers"]) 
{ 
    [field removeChildAtIndex:0]; 
    [field addChild:[NSXMLElement elementWithName:@"value" stringValue:@"50"]]; 
} 

[XMPPRoom configureRoomUsingOptions:newConfig]; }