0

ユーザーのプレゼンスを離れた場所(または現時点では何でも)に設定しようとしています。次のコードを使用していますが、何も実行されていないようです。

XMPPPresence *presence = [XMPPPresence presence];
NSXMLElement *show = [NSXMLElement elementWithName:@"show" stringValue:@"away"];

NSXMLElement *status = [NSXMLElement elementWithName:@"status" stringValue:@"away"];
[presence addChild:show];
[presence addChild:status];
[[self xmppStream] sendElement:presence];

私はiChatを使用して、Ejabberdサーバー上のすべてのプレゼンスサブスクリプションが正しく機能していることを確認しました。これは私を夢中にさせています、私は何かが欠けていますか?

4

1 に答える 1

2

私はそれを理解しました、私がこれを逃したので、プレゼンスがアプリによって送信されていなかったことがわかりました:

- (MMApplication *)appDelegate {
    return (MMApplication *)[[UIApplication sharedApplication] delegate];
}
- (XMPPStream *)xmppStream {
    return [[self appDelegate] xmppStream];
}

今完璧に動作します

于 2012-02-20T08:59:36.173 に答える