2016-10-20 4 views
0

Я новичок в iOS и разрабатываю приложение для чата, Я хочу начать чат между двумя пользователями, я получил свой список обжига с сервера.didReceiveMessage XMPP не называется

Я сделал чат-экран сейчас, нажав кнопку отправки кнопки. Я хочу отправить текст подключенному пользователю.

Вот мой код:

- (IBAction)sendMessage:(id)sender { 
        NSXMLElement *body = [NSXMLElement elementWithName:@"body"]; 
        [body setStringValue:[NSString stringWithFormat:@"%@",msgId]]; 

        NSXMLElement *message = [NSXMLElement elementWithName:@"message"]; 
        [message addAttributeWithName:@"type" stringValue:@"chat"]; 
        [message addAttributeWithName:@"to" stringValue:@"testuser1"]; 
        [message addChild:body]; 

        [[[self appDelegate] xmppStream] sendElement:message]; 
} 

После выполнения этого didReceiveMessage не вызывался

- (void)xmppStream:(XMPPStream *)sender didReceiveMessage:(XMPPMessage *)message{ 

    NSLog(@"---------- xmppStream:didReceiveMessage: ----------"); 

    NSLog(@"--from----%@", [message from]); 

if([message isChatMessageWithBody]) 
    { 
     NSString *msg = [[message elementForName:@"body"] stringValue]; 

     NSLog(@"mmmmmmmmmmssssssgggg-%@",msg); 
    } 
} 

Где я делаю ошибку? Пожалуйста, помогите и спасибо заранее!

ответ

0

Вы отправляете недопустимый JID (Jabber ID).

[message addAttributeWithName:@"to" stringValue:@"testuser1"]; 

должны быть что-то вроде

[message addAttributeWithName:@"to" stringValue:@"[email protected]"]; 

Короткий FAQ

+0

Thanx для ANS, но все еще не работает –

+0

Не все серверы позволяет отправлять сообщения на себя. Однако убедитесь, что у вас правильная конфигурация (имя_сервера не serverHost, поэтому 127.0.0.1 больше не удастся) и попытайтесь записать полное сообщение, чтобы проверить, что вы создали. Я не вижу «от» и не знаю, добавляет ли среда, например, – MrPk

+0

имя моего сервера - localhost –

Смежные вопросы