vCard头像更新通知离线名单



当用户A和用户B都在线时,其中一个更改了头像,用户的所有名单都会收到一个带有vcard-temp更新元素的存在节,其中包含用作头像的图像的sha1哈希值。

<presence from='juliet@capulet.com/balcony'>
  <x xmlns='vcard-temp:x:update'>
    <photo>sha1-hash-of-image</photo>
  </x>
</presence>

但是,对于当时处于离线状态的用户,没有生成这样的通知/节,因此这样的客户端显示的头像没有变化。

当有任何变化时,离线用户如何从花名册中获得v-card更新?我不希望为所有的花名册要求vCard,即使没有变化。

我认为支持该协议的客户端应该在所有存在包中包含头像,而不仅仅是更改。如XEP-0153中所述:基于vcard的头像:

如果客户端支持此处定义的协议,则必须包含在它发送的每个状态广播和SHOULD中更新子元素还要在定向呈现节中包含update子节(例如,加入多用户聊天时发送的定向存在(XEP-0045) [5]房间)。

这意味着离线用户将获得正确的存在,并且可以在他们在线时更新头像。

最新更新