我有一个页面列出了所有的公共聊天室,我想要: 总占用者/最大用户
IE。 (05/10房间里的人)
扩展迪斯科信息结果(Querying For Room Information)返回房间中的当前居住者,但不显示最大占用者位置。
如何检索房间的最大用户数?
答案 0 :(得分:1)
One can set the number of occupants in MUC's Configuration. Example 157 in XEP-0045
使用Stanza:
<field var='muc#roomconfig_maxusers'
label='Maximum Number of Occupants'>
<value>50</value>
</field>
Objective-C代码:
NSArray * fields = [newConfig elementsForName:@&#34; field&#34;];
for(NSXMLElement *字段中的字段)
{
NSString * var = [field attributeStringValueForName:@&#34; var&#34;];
if ([var isEqualToString:@"muc#roomconfig_maxusers"])
{
[field removeChildAtIndex:0];
[field addChild:[NSXMLElement elementWithName:@"value" stringValue:@"50"]];
}
[XMPPRoom configureRoomUsingOptions:newConfig]; }
答案 1 :(得分: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>
如果您的服务器没有返回此信息,可能会提交功能请求。