3

我正在尝试将消息从模拟器发送到设备。在模拟器上有一个用户,而在设备上有另一个用户。但是在任何时候都没有收到存在。我正在为 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: ----------");
}

可能是什么问题?

4

1 回答 1

4

未发送出席信息的原因是代码不正确。我使用以下代码发送存在

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

之后,它在 openfire 服务器上显示用户在线,并且消息已正确发送给其他用户。

于 2011-11-30T12:55:32.863 回答