0

RFC3921 第 2.2.2.1 节定义 OPTIONAL<show/>元素必须是以下之一:

away -- The entity or resource is temporarily away. chat -- The entity or resource is actively interested in chatting. dnd -- The entity or resource is busy (dnd = "Do Not Disturb"). xa -- The entity or resource is away for an extended period (xa = "eXtended Away").

我想通过删除“聊天”并添加 XMPP 客户端可以从中选择的其他状态来自定义此可用状态列表。

在这条路走得太远之前,我想从专家那里知道:

1) 可以在 ejabberd 中修改标准元素列表吗?如果可以,最好的方法是什么?

2) 是否可以在每个虚拟主机的基础上更改元素,因为每个组织都想要一组稍微不同的状态(即可以看到彼此的存在)?

3) XMPP 客户端是否会接收到 ejabberd 中元素列表的任何更改,或者它们通常具有硬编码的标准元素?

4) 如果一个虚拟主机中的联系人选择了另一个虚拟主机中的联系人不可用的元素,但两个联系人已连接,会发生什么情况?

感谢您可以分享的任何输入。

4

1 回答 1

0

ejabberd 不关心那些显示值。但是,如果您随后更改,您的客户端将不再符合 XMPP。

最好使用状态来传达您需要的特殊含义,并将这些状态值映射到标准“显示”值之上。

如果您还需要使用状态,您可以随时添加自己的自定义扩展标签来传递客户所需的额外信息。

于 2018-04-03T06:55:46.350 回答