0

任何人都请澄清 gtalk 是否支持 PEP(个人事件协议 - 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,您需要参考个人事件协议 (XEP-0163) 的确定支持部分。根据规格,我将以下节发送到我自己的裸 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>

这表明 google-talk 不支持 PEP,因为服务器没有代表该帐户返回 pubsub/pep 的身份。

于 2012-09-04T16:24:04.890 回答