欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

xmpp聊天程序iphone版开发(1)

更新时间: 2014-01-05 02:37:06 责任编辑: Author_N1

 

XMPP聊天程序iPhone版开发(一)

由于前几天一直在写一个图片下载的第三方库,所以工作中需要做XMPP聊天的工作一直放着,到前天到开始研究XMPP,结果其过程是各种蛋痛~ 如今总算是有些收获~所以把其中的过程记录下来~希望对各位有些帮助~

服务器端我用的是公司搭建的ejabberd服务器,服务器端搭建在这我不做讲解~

一、XMPP介绍

简介:可扩展通讯和表示协议 (XMPP) 可用于服务类实时通讯、表示和需求响应服务中的XML数据元流式传输。XMPPJabber协议为基础,而Jabber是即时通讯中常用的开放式协议。

XMPP(可扩展消息处理现场协议)是基于可扩展标记语言(XML)的协议,它用于即时消息(IM)以及在线现场探测。它在促进服务器之间的准即时操作。这个协议可能最终允许因特网用户向因特网上的其他任何人发送即时消息,即使其操作系统和浏览器不同。

XMPP中定义了三个角色,客户端,服务器,网关。通信能够在这三者的任意两个之间双向发生。服务器同时承担了客户端信息记录,连接管理和信息的路由功能。网关承担着与异构即时通信系统的互联互通,异构系统可以包括SMS(短信),MSNICQ等。基本的网络形式是单客户端通过TCP/IP连接到单服务器,然后在之上传输XML

传输的是与即时通讯相关的指令。在以前这些命令要么用2进制的形式发送(比如QQ),要么用纯文本指令加空格加参数加换行符的方式发送(比如MSN)。而XMPP传输的即时通讯指令的逻辑与以往相仿,只是协议的形式变成了XML格式的纯文本。这不但使得解析容易了,人也容易阅读了,方便了开发和查错。而XMPP的核心部分就是一个在网络上分片段发送XML的流协议。这个流协议是XMPP的即时通讯指令的传递基础,也是一个非常重要的可以被进一步利用的网络基础协议。所以可以说,XMPPTCP传的是XML流。


二、准备工作

1、下载一个xmpp桌面端的聊天应用Adium,主要是为了你写的程序和桌面端聊天测试以及注册用户。

2、下载一个xmppframework第三方库。(千万不要目前最新版本的,我被他害惨了~我设置了代理,结果在用户认证时代理函数没有被调用。后面我会具体说到)。


准备工作做完之后,我们来看看xmppframework的目录结构如图1-1

点击Xcode中iPhoneXMPP中的.xcodeproj文件打开项目,点击运行,如图1-2

图1-2


在JID中输入你已经注册的账号,Password中输入密码,点击Done进行连接。进入如1-3界面,那么,恭喜你,已经成功连接服务器。(在这里我要提醒一下,不管服务器上怎么设置的,一定是要注册的,我刚开始因为公司有人说只要输入用户名,密码随意就自动注册了,结果我在这个问题上纠结了一个上午)。

图1-3

XMPP的基本配置情况就介绍到这里,下面我们来看看XMPP聊天的代码实现


上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:37:06
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/12175/
本文WWW.DOC100.NET DOC100.NET版权所有。