0

gtalk が PEP (Personal Eventing Protocol- PubSub メカニズム) をサポートしているかどうかを明確にしてください。私のWP7アプリでは、機能が実装されていないためエラーが発生するためです。

例:

<?xml version="1.0" encoding="UTF-8"?>
<iq from="msankeshwari@gmail.com/phoneFC07C39F" id="dcc3e8ea-5a40-4401-8843-9db4dd682b78" type="set">
<pubsub xmlns="http://jabber.org/protocol/pubsub">
    <publish node="http://jabber.org/protocol/geoloc">
        <item id="lastlocation">
            <geoloc xmlns="http://jabber.org/protocol/geoloc">
                <lat>47.64483</lat>
                <lon>-122.141197</lon>
                <acurracy>0</acurracy>
                <timestamp>2012-09-03T18:52:24.592+05:30</timestamp>
            </geoloc>
        </item>
    </publish>
</pubsub>

4

1 に答える 1

1

GTALK が PEP をサポートしているかどうかを判断するには、Personal Eventing Protocol (XEP-0163) のDetermining Supportセクションを参照する必要があります。仕様に従って、次のスタンザを自分の裸の jid に送信しました。

<iq xmlns="jabber:client" type="get" from="jabberxmpplibrary@gmail.com/jaxl#0482f1a54bd2b72a91a384663b1f14ba" to="jabberxmpplibrary@gmail.com" id="3">
    <query xmlns="http://jabber.org/protocol/disco#info"></query>
</iq>

次の応答スタンザを受け取りました。

<iq to="jabberxmpplibrary@gmail.com/jaxl#0482f1a54bd2b72a91a384663b1f14ba" from="jabberxmpplibrary@gmail.com" id="3" type="result">
    <query xmlns="http://jabber.org/protocol/disco#info">
        <identity category="account" type="registered" name="Google Talk User Account"/>
        <feature var="http://jabber.org/protocol/disco#info"/>
        <feature var="http://jabber.org/protocol/disco#items"/>
        <feature var="msgoffline"/>
    </query>
</iq>

これは、サーバーがアカウントに代わって pubsub/pep の ID を返さなかったため、google-talk が PEP をサポートしていないことを示しています。

于 2012-09-04T16:24:04.890 に答える