XMPPFramework - присутствие не получено в iOS - PullRequest
3 голосов
/ 29 ноября 2011

Я пытаюсь отправить сообщение с симулятора на устройство.На симуляторе есть один пользователь, в то время как на устройстве есть другой пользователь.Но присутствие не принимается ни с какой стороны.Я использую XMPPFramework для IOS.Вот код, который я использую для отправки присутствия

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: ----------");
}

В чем может быть проблема

1 Ответ

4 голосов
/ 30 ноября 2011

Причиной присутствия не было отправлено то, что код был неправильным. Я использовал следующий код, чтобы отправить присутствие

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

после этого он показывал пользователя онлайн на сервере openfire, и сообщение правильно отправлялось другим пользователям.

...