我正在使用XMPPFramework来实现与OpenFire服务器通信的jabber客户端。到目前为止,一切都很顺利。
但是现在我想更改我的个人资料的昵称,或者更改为'displayName',因为客户端从XMPPUserCoreDataStorageObject中检索它。
我的第一次尝试是使用VCardTempModule来更新我的VCard:
if (nickname) {
[myVCard setNickname:nil];
[myVCard setNickname:nickname];
}
[self.xmppvCardTempModule updateMyvCardTemp:myVCard];
服务器似乎已更新,因为客户端收到了配置文件的tempVCard,其中包含更新的昵称:
RECV: <iq xmlns="jabber:client" type="result" from="myAccount@foo.com" to="myAccount@foo.com/564aa046"><vCard xmlns="vcard-temp"><PHOTO><BINVAL>{some binary image data}</BINVAL></PHOTO><NICKNAME>{my updated nickname}</NICKNAME></vCard></iq>
但是,更新的昵称在其他客户端中无处可寻,而使用XMPPVCardAvatar模块可以更新照片。
有没有人知道我可能做错了什么?