現在、「名簿連絡先の追加」機能に取り組んでいます。
1) 新しい連絡先を名簿に追加します。
var iq = $iq({type: "set"}).c("query", {xmlns: "jabber:iq:roster"}).c("item" {jid:"test@hostname.de/test",name:"test"});
Chat.connection.sendIQ(iq);
連絡先が名簿に正常に追加されました。
2) タイプ「subscribe」のプレゼンス スタンザを新しい連絡先 (「test」) に送信します。
var subscribe = $pres({to: test@hostname.de/test, type: "subscribe"});
Chat.connection.send(subscribe);
それはうまくいきますが、毎回ではありません:
名簿に追加する人 (「テスト」)に現在アクティブなセッションがない (ログインしていない)場合、送信者のサブスクリプション タイプは「なし」であり、「テスト'。
そう:
レシーバー「テスト」: サブスクリプション「なし」
送信者「私」: サブスクリプション「なし」
名簿に追加しようとしている人がアクティブなセッションを持っている場合、予想されるサブスクリプション タイプ「to」および「from」が正常に設定されます。
何か案が ?