プロトタイプのテスト プログラムを使用して、XMPP Facebook チャット、X-FACEBOOK の機能をチェックしています。Gmail サーバーで geoloc メッセージ XEP 0080 を使用するとうまく機能しましたが、X-FACEBOOK を介して同じ XML 構造を送信しようとすると、メッセージがトリミングされ、GeoLoc ノードが削除されます。X-FACEBOOKでXEP 0080メッセージを送信できるかどうかを誰かが知っているかどうか、もしそうなら、FacebookチャットXMPPサーバーがGeoLoc情報をトリミングしないようにするには、どの構造を使用すればよいかを尋ねたかった.
XMPP geoloc メッセージを送信しました:
<message to="-100002578491827@chat.facebook.com" from="4yony4@chat.facebook.com/19256ca9_4C5CC12947646" type="chat" xml:lang="en">
<event xmlns="http://jabber.org/protocol/pubsub#event">
<items node="http://jabber.org/protocol/geoloc">
<item id="">
<geoloc xmlns="http://jabber.org/protocol/geoloc">
<lat>40.488137</lat>
<lon>-3.397623</lon>
<timestamp>2012-07-27 09:09:50 GMT</timestamp>
<msgType>0</msgType>
</geoloc>
</item>
</items>
</event>
<body>
</body>
クライアントが受信したメッセージ:
<message xmlns="jabber:client" from="-1177157556@chat.facebook.com" to="" type="chat">
<active xmlns="http://jabber.org/protocol/chatstates"/>
<body></body>
</message>
どんな解決策や意見でも大歓迎です。
まあ、XMLをあなたが投稿したものに似るように変更しました.pubサブなしで、それでも同じ問題です.受信者で受信したメッセージには、GeoLocノードの下のすべての名前空間がありません.これは、サーバーがそれをサポートしていないためだと思います.フォーマット。私は IQ サブスクライバー オプションを試すことができます。ユーザーに情報を直接送信できるソリューションを見つけたいと思っています。可能性がある場合、GeoLoc に関する情報を Facebook サーバーでユーザー A からユーザー B に送信できる小さなものであっても、大きな助けになるかもしれません。ところで助けてくれてありがとう。