我曾尝试使用以下代码创建自定义数据包,但它在进入 XMPP 生命周期时发生了变化。
NSString * strUser = [[NSUserDefaults standardUserDefaults] valueForKey"kXMPPmyJID"];
XMLWriter* xmlWriter = [[XMLWriter alloc]init];
[xmlWriter writeStartElement"presence"];
[xmlWriter writeAttribute"from" value:strUser];
[xmlWriter writeAttribute"to" value:appDelegate.chatUser];
[xmlWriter writeAttribute"type" value"typing.."];
[xmlWriter writeEndElement];
NSString* xml = [xmlWriter toString];
NSXMLElement *xmlElement = [[NSXMLElement alloc] initWithXMLString:xml error:nil];
XMPPPresence *presence = [XMPPPresence presenceFromElement:xmlElement];
[appDelegate.xmppStream sendElement:presence];
如果您检查 xmpp 协议(protocol) (http://xmpp.org/rfcs/rfc3921.html) 他们说类型属性必须具有协议(protocol)中规定的值之一。如果要添加自定义属性,则应将其添加到自定义标签中,但接收方必须正确处理。
关于ios - 在 iphone 中使用 XMPP 创建自定义节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26053588/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) | Powered by Discuz! X3.4 |