【发布时间】:2014-01-18 02:15:21
【问题描述】:
我正在使用 XMPP 框架在用户之间进行聊天,聊天进行得很完美。现在我需要显示消息完美地传递到两个设备,例如(What's app messenger)。我没有得到任何教程。下面的代码表示当我们向其他用户发送消息时。
//Sending the message to the other user
NSXMLElement *body = [NSXMLElement elementWithName:@"body"];
[body setStringValue:txtChat.text];
NSXMLElement *message = [NSXMLElement elementWithName:@"message"];
[message addAttributeWithName:@"type" stringValue:@"chat"];
[message addAttributeWithName:@"to" stringValue:self.userjid];
[message addChild:body];
[[APPDELEGATE xmppStream] sendElement:message];
在使用 XMPP 框架检索消息时,我正在使用以下代码获取数据
- (void)loadarchivemsg
{
XMPPMessageArchivingCoreDataStorage *storage = [XMPPMessageArchivingCoreDataStorage sharedInstance];
NSManagedObjectContext *moc = [storage mainThreadManagedObjectContext];
NSEntityDescription *entityDescription = [NSEntityDescription entityForName:@"XMPPMessageArchiving_Message_CoreDataObject"
inManagedObjectContext:moc];
NSFetchRequest *request = [[NSFetchRequest alloc]init];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(bareJidStr like %@) && (streamBareJidStr like %@)", self.userjid,[[NSUserDefaults standardUserDefaults] stringForKey:@"kXMPPmyJID"]];
request.predicate = predicate;
NSLog(@"%@",[[NSUserDefaults standardUserDefaults] stringForKey:@"kXMPPmyJID"]);
[request setEntity:entityDescription];
NSError *error;
NSArray *messages_arc = [moc executeFetchRequest:request error:&error];
[self print:[[NSMutableArray alloc]initWithArray:messages_arc]];
}
- (void)print:(NSMutableArray*)messages_arc{
@autoreleasepool {
for (XMPPMessageArchiving_Message_CoreDataObject *message in messages_arc) {
NSXMLElement *element = [[NSXMLElement alloc] initWithXMLString:message.messageStr error:nil];
XMPPMessage *message12=[[XMPPMessage alloc]init];
message12 = [message message];
}
}
这就是我发送消息和检索消息的原因,您能帮我如何检索消息的传递状态吗?等待您的宝贵答案。
【问题讨论】:
标签: ios xmppframework