質問

シミュレーターからデバイスにメッセージを送信しようとしています。シミュレーターには1人のユーザーがいますが、デバイスには別のユーザーがいます。しかし、存在はどんな終わりにも受け取られていません。 iOSにXMPPFrameworkを使用しています。これが私がプレゼンスを送信するために使用しているコードです

NSXMLElement *presence = [NSXMLElement elementWithName:@"presence"];
[presence addAttributeWithName:@"to" stringValue:[NSString stringWithFormat:@"user1@server.com"]];
[presence addAttributeWithName:@"type" stringValue:@"available"];
[[self xmppStream] sendElement:presence]; 

しかし、最後にどこにありますか user1@server.com 次の方法でログインしています

- (void)xmppStream:(XMPPStream *)sender didReceivePresence:(XMPPPresence *)presence
{
    NSLog(@"---------- xmppStream:didReceivePresence: ----------");
}

問題は何でしょうか?

役に立ちましたか?

解決

存在感が送信されなかった理由は、コードが間違っていたからです。次のコードを使用してプレゼンスを送信しました

XMPPPresence *presence = [XMPPPresence presence];
    [[self xmppStream] sendElement:presence]; 

その後、Openfire Serverでユーザーがオンラインでユーザーを表示し、メッセージが他のユーザーに正しく送信されました。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top