列出所有 xmpp 聊天室及其主题名称和最后一条消息

List all xmpp chat rooms with their subject names and last message

从文档 XEP-00300 中,我知道我可以为用户列出所有房间,但是是否可以通过某些元数据过滤聊天室?

场景:作为用户,我想用 'apples' 打开选项卡,我可以看到所有带有一些 id=apple(一些元数据)

的聊天室

作为用户,我想将选项卡切换到 banana 并查看 id=banana 的聊天室

可能吗?也许其他方式?一定是多人聊天。

显然这显然是不可能的。如果您开发客户端,则有一些肮脏的选择:

A) 使用房间名称设置标签。

例如,如果用户想要将带有“电影”和“漫画”标签的房间命名为“Last Marvel 电影”,您的客户可以创建名称为 Last_Marvel_movies-film-comic 的房间。

稍后,在“按主题搜索房间”中,您的客户端获取房间列表,在任何房间名称中搜索 -whatever,然后在显示房间名称时删除 -*

B) 使用房间描述设置标签。

每个房间都可以有一个“描述”。你可以在那里设置任何你想要的文本。

问题是:您的客户需要获取房间列表(如案例 A),然后询问每个房间的描述,然后按主题过滤。

这一切都在ejabberd中思考。不知道其他有MUC服务的服务器有没有其他方法。