目前在 Pidgin 聊天中,我们有一个 Github 机器人,它会在内容更新时发布帖子,包括链接。
但是,无论出于什么原因,这些消息都是以 HTML 格式而不是 pidgin 格式出现的。
有没有什么办法可以让 pidgin 解码那个 html?
答案1
我不是 Pidgin 专家,但我确实对 XMPP 了解很多。简而言之,XMPP 仅支持 XHTML 的一个子集,通过 XMPP 传送到 <-> 来自 pidgin 的“丰富”内容很可能属于这个有限的 XHTML 子集。请查看XEP-0071:XHTML-IM。这是我在无法看到原始(完整)XMPP 消息节的情况下所能建议的全部内容。如果我要冒险猜测的话,我会认为您没有使用正确的包装器元素正确格式化您的消息:
5. 包装元素
在 XMPP 节中包含 XHTML 内容的根元素是 <html/>。此元素符合 'http://jabber.org/protocol/xhtml-im' 命名空间。从 XMPP 的角度来看,包装器元素充当 XMPP 扩展元素;从 XHTML 的角度来看,它充当符合 'http://www.w3.org/1999/xhtml' 命名空间。此类 XHTML 内容必须包含在一个或多个符合 'http://www.w3.org/1999/xhtml' 命名空间,并且必须符合以下部分中定义的 XHTML-IM 集成集。如果包装器元素中包含多个元素,则每个元素必须拥有一个具有不同值的 'xml:lang' 属性,该属性的值必须遵守 RFC 5646 [18] 中定义的规则。XHTML-IM 包装器模式中提供了元素的正式定义。