xmppframework是XMPP协议的一个objective-c实现.
要了解xmppframework, 从这里開始吧:https://github.com/robbiehanson/XMPPFramework/wiki/IntroToFramework
XMPPFramework中包括了一个简单的iPhoneclient实现。
在iPhoneXMPP中。
在測试这个Demo过程中要注意的地方是:
如上图要设置HostName(假设server域名是对外可见的应该不用)。
我測试时,由于我是自己建的openfireserver,设置的server名称是没有登记的。
所以须要告诉系统怎么找到这个server -- 在hosts文件里加入ip server
比如:125.216.241.179 scutlab.com
hosts文件的位置:c:\WINDOWS\system32\drivers\etc\hosts (windows) \etc\hosts (mac)
设置完hosts文件后,ping server看看。假设能ping通,说明能够找到server了。
另外须要注意的地方是jid一定要是user@example.com的形式
XMPPFramework眼下仅仅实现了几个经常使用到的扩展。包括
协议
协议简单介绍
XEP-0009
在两个XMPP实体间传输XML-RPC编码请求和响应
XEP-0006
使能与网络上某个XMPP实体间的通信
XEP-0045
多人聊天相关协议
XEP-0054
名片格式的标准文档
XEP-0060
提供通用公共订阅功能
XEP-0065
两个XMPP用户之间建立一个带外流,主要用于文件传输
XEP-0082
日期和时间信息的标准化表示
XEP-0085
聊天对话中通知用户状态
XEP-0100
表述了XMPPclient与提供传统的IM服务的代理网关之间交换的最佳实践
XEP-0115
广播和动态发现client、设备、或一般实体能力。
XEP-0136
为服务端备份和检索XMPP消息定义机制和偏好设置
XEP-0153
用于交换用户头像
XEP-0184
消息送达回执协议
XEP-0199
XMPP ping 协议
XEP-0202
用于交换实体间的本地时间信息
XEP-0203
用于延迟发送
XEP-0224
引起还有一个用户注意的协议
一份非常好的教程:Building a Jabber Client for iOS
开发中常要涉及到XML的操作。这是NSXMLElement API文档 https://developer.apple.com/library/mac/#documentation/cocoa/reference/Foundation/Classes/NSXMLElement_Class/Reference/Reference.html
手机扫一扫
移动阅读更方便
你可能感兴趣的文章