首页 > 代码库 > xmpp开发教程(五)-收发消息
xmpp开发教程(五)-收发消息
这里主要是指用户的状态更新,收到消息,发送消息。
首先给出核心代码
用户上下线的通知
1 //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 2 #pragma mark ReceivePresence 3 //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 4 5 - (void)xmppStream:(XMPPStream *)sender didReceivePresence:(XMPPPresence *)presence { 6 NSString *presenceType = [presence type]; 7 NSString *presenceFromUser = [[presence from] user]; 8 NSLog(@"presenceFromUser:%@",presenceFromUser); 9 NSLog(@"presenceType:%@",presenceType);10 if (![presenceFromUser isEqualToString:[[sender myJID] user]]) {11 if ([presenceType isEqualToString:@"available"]) {12 //13 } else if ([presenceType isEqualToString:@"unavailable"]) {14 //15 }16 }17 }
接收消息
1 //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 2 #pragma mark ReceiveMessage 3 //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 4 5 - (void)xmppStream:(XMPPStream *)sender didReceiveMessage:(XMPPMessage *)message { 6 NSString *messageBody = [[message elementForName:@"body"] stringValue]; 7 NSLog(@"body:%@",messageBody); 8 NSString *replyMessage=[NSString stringWithFormat:@"replay%@",messageBody]; 9 if(![messageBody isEqual:NULL])10 [self sendMessage:replyMessage toUser:@"fengyun"];11 }
发送消息
1 //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 2 #pragma mark sendMessage 3 //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 4 5 - (void)sendMessage:(NSString *) message toUser:(NSString *) user { 6 NSXMLElement *body = [NSXMLElement elementWithName:@"body"]; 7 [body setStringValue:message]; 8 NSXMLElement *message1 = [NSXMLElement elementWithName:@"message"]; 9 [message1 addAttributeWithName:@"type" stringValue:@"chat"];10 NSString *to = [NSString stringWithFormat:@"%@@helloworldtekimac-mini.local", user];11 [message1 addAttributeWithName:@"to" stringValue:to];12 [message1 addChild:body];13 [self.xmppStream sendElement:message1];14 }
xmpp开发教程(五)-收发消息
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。