我在生产中使用ejabberd 16.08,在dev上使用18.01,我们使用Smack XMPP来获取和设置vCards,下面的代码在16.08上正常工作。
VCard vCard = new VCard()
vCard.setFirstName("MyName")
vCard.setField("myCustomField", "0002@0000@0000")
使用此代码我可以设置并获取myCustomField,但是在版本18.01上它停止工作,相同的代码但是当我得到vCard时它只有commons属性。 我查看了发行说明并提交了最新版本,但我无法弄清楚为什么会发生这种情况?
答案 0 :(得分:2)
是的,自从ejabberd 16.12起,mod_vcard和大多数ejabberd使用了一个不同的,更严格的XML库。请参阅commit和release notes。
因此,只有the XEP中描述的并且库最终接受的字段才会被存储。