0

我有一个列出所有公共聊天室的页面,我想拥有:总占用者/最大用户

IE。(05/10 房间里的人)

扩展迪斯科信息结果(查询房间信息)返回房间中的当前占用者,但不显示最大占用点数。

我将如何检索房间的最大用户数?

4

2 回答 2

1

XEP-0045中,示例 10正下方是指定扩展发现结果中允许的字段的文本,其中包括:

...为 muc#roomconfig FORM_TYPE 定义的任何字段都可以包含在扩展服务发现字段中(如上所示的“muc#roomconfig_changesubject”字段)。

因此,支持此功能的服务器将在发现结果中返回如下字段:

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

如果您的服务器没有返回此信息,则可能会提交功能请求。

于 2012-08-05T00:12:24.507 回答
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 *fields = [newConfig elementsForName:@"field"];
for (NSXMLElement *field in fields) { NSString *var = [field attributeStringValueForName:@"var"];

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

[XMPPRoom 配置房间使用选项:新配置];}

于 2014-09-17T11:30:35.940 回答