我的应用曾经可以通过Facebook XMPP chat API发送Facebook聊天消息。
正如this问题所指出的,预期的消息格式是
<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>
invalid-from 似乎表明发件人ID的格式已更改。
我注意到的一个变化:在建立xmpp连接的各种握手期间,Facebook现在以下列格式返回Jabber ID:
<jid>-0@chat.facebook.com/fb_xmpp_script_<somehexstring></jid>
使用此jid作为发件人ID也不起作用。
有没有其他人遇到过这个问题并想出了新的格式?
答案 0 :(得分:1)
尽量不在邮件中加from
地址。服务器应该为您添加。
答案 1 :(得分:1)
收到的消息只是用户聊天状态的指示符,如XEP-0085中所定义,与您发送的消息没有直接关系。这并不意味着第一个没有潜在地触发第二个,无论你使用什么库,你发送消息时也可能发送了聊天状态。此类消息通常用于聊天客户端,以指示您正在聊天的人正在键入消息。