I am creating a chat application using XMPP Framework in iphone. i could get received messages but i am not able to send a message. can any one give me solution for this??
问问题
9714 次
4 回答
11
- (void)sendMessage:(NSString *)msgContent
{
NSString *messageStr = textField.text;
if([messageStr length] > 0)
{
NSXMLElement *body = [NSXMLElement elementWithName:@"body"];
[body setStringValue:messageStr];
NSXMLElement *message = [NSXMLElement elementWithName:@"message"];
[message addAttributeWithName:@"type" stringValue:@"chat"];
[message addAttributeWithName:@"to" stringValue:[jid full]];
[message addChild:body];
[xmppStream sendElement:message];
}
}
在你的chatViewcontroller 中使用上面的代码..它对我来说工作正常。
于 2011-03-02T07:00:44.000 回答
3
尝试这个 :
XMPPUserCoreDataStorage *user = [[self fetchedResultsController] objectAtIndexPath:indexPath];
NSXMLElement *body = [NSXMLElement elementWithName:@"body"];
[body setStringValue:strSendMsg];
NSXMLElement *message = [NSXMLElement elementWithName:@"message"];
[message addAttributeWithName:@"type" stringValue:@"chat"];
[message addAttributeWithName:@"to" stringValue:[user.jid full]];
[message addChild:body];
[[self xmppStream] sendElement:message];
于 2010-12-20T04:50:43.440 回答
2
如果您使用的是 xmpp iPhone 示例应用程序...您可以使用以下内容,它应该可以帮助您入门:
NSString *msgText = @"test reply";
XMPPMessage* msg = [[XMPPMessage alloc] initWithType:@"chat" to:[XMPPJID jidWithString:displayName]];
[msg addBody:msgText];
[_xmppStream sendElement:msg];
只需将其放在 xmppStream 委托方法中的警报下方
iPhoneXMPPAppDelegate.m:
-(void)xmppStream:(XMPPStream *)sender didReceiveMessage:(XMPPMessage *)message
这将自动将“测试回复”发送回最初向您发送消息的 jid
哈哈!
于 2013-09-18T07:02:11.817 回答
0
斯威夫特 3 答案:
let user = XMPPJID(string: "user@example.com")
let msg = XMPPMessage(type: "chat", to: user)
msg?.addBody("test message")
self.xmppStream.send(msg)
于 2017-07-19T10:12:35.513 回答