0

我的应用程序曾经能够通过Facebook XMPP 聊天 API发送 Facebook 聊天消息。

正如在这个问题中指出的那样,预期的消息格式是

<message from="-sender_ID@chat.facebook.com" to="-receiver_ID@chat.facebook.com">
    <body>message body</body>
</message>

大约两周前,Facebook XMPP 服务器突然开始拒绝消息,返回

<stream:error>
  <invalid-from xmlns="urn:ietf:params:xml:ns:xmpp-streams"/>
</stream:error>

无效发件人似乎表明发件人 ID 的格式已更改。

我注意到一个变化:在建立 xmpp 连接的各种握手期间,Facebook 现在返回以下格式的 Jabber ID:

<jid>-0@chat.facebook.com/fb_xmpp_script_<somehexstring></jid>

不过,使用这个 jid 作为发件人 ID 也不起作用。

有没有其他人遇到过这个问题并想出了新的格式?

4

2 回答 2

1

尽量不要from在您的消息中添加地址。服务器应该为您添加。

于 2013-08-29T20:47:28.180 回答
1

收到的消息只是用户聊天状态的指示器,如 XEP-0085 中所定义,与您发送的消息没有直接关系。这并不意味着第一个没有潜在地触发第二个,您使用的任何库都可能在您发送消息时发送了聊天状态。这种类型的消息通常用于聊天客户端,表示您正在与之聊天的人正在输入消息。

于 2013-09-04T02:46:02.160 回答