1、即时通信php
即时通信(Instant Messaging) 是目前Internet上最为流行的通信方式,各类各样的即时通信软件也层出不穷,服务提供商业提供了愈来愈丰富的通信服务功能。java
XMPP(XML,Messages,Presence,Protocol)是基于可扩展标记语言(XML)的协议,可用于即时通信(IM)。—可扩展消息处理现场协议数据库
XMPP优势:
1.开放
XMPP协议是由JSF开源社区组织开发的,不属于任何的机构和我的,从根本上保证了其开放性。
2.标准
互联网工程工做组将XMPP于2002年正式列为承认的实时通信及Presence技术。
3.分布式的网络架构
XMPP协议虽然是基于Client/Server架构,可是XMPP协议自己并无这样的限制,网络的架构和电子邮件十分类似,但没有结合任何特定的网络架构,适用范围很是普遍。安全
4.XMOO协议具备良好的扩展性
基于XML创建起来的应用具备良好的语义完整性和扩展性服务器
5.XMPP 具备很好的弹性
XMPP除了可用在即时通讯的应用程序,还能用在网络管理、内容供稿、协同工具、档案共享、游戏、远端系统监控等。网络
6.安全性架构
XMPP在Client——to——Server通讯和Server-to_Serve通讯中都使用TLS(Trsport Layer Security协议做为通讯通道的加密方法,保证通讯的安全。并发
XMPP实现即时通信框架
原理
实现即时铜须至少须要一个服务器端、两个客户端。
下面咱们准备须要的环境:
一、XMPP服务器 二、XMPP客户端 (辅助调试)分布式
XMPP环境搭建
搭建XMPP环境须要几个辅助工具:
一、XAMPP
XAMPP (Apache +MySQL +php +PERL)是一个功能强大的建XAMPP 软件站继承软件包
许多人经过他们本身的经验认识到安装Apache服务器是件不容易的事儿。若是您想添加MySQL、PHP和Perl,那就更难了。XAMPP是一个易于安装且包含MySQL、PHP和Perl的Apache发行版。XAMPP的确很是容易安装和使用:只需下载,解压缩,启动便可。
搭建XMPP环境须要几个辅助工具:
二、Openfire()
Openfire采用java开发,开源的实时协做(RTC)服务器基于XMPP(jabber)协议。Openfire安装和使用都很是简单,并利用Web进行管理。单台服务器可支持上万并发用户。
Openfire服务是基于JAVA语言写的,你的电脑必需要有java运行环境。安装JKD成功后运行Openfire
此时须要建立数据库以供使用
构建数据库结束,须要导入表,此时要去openfire文件中获取须要的文件,位置以下
XMPP客户端环境搭建
搭建XMPP客户端使用spake,辅助调试:XMPP 系统的一个设计标准是必须支持简单的客户端。事实上,XMPP系统架构对客户端只有不多的几个限制。一个XMPP客户端必须支持的功能有:
1.经过TCP套接自与XMPP服务器进行通讯;
2.解析组织好的XML
信息包;
3.理解消息数据类型
环境配置结束。
工程中添加XMPP
一、建立工程
二、导入XMPP框架
三、引入XMPP须要的依赖库libxml libresolv
四、设置路径/uer/include/libxml2
登陆
1.登陆、注册做为一个模块,使用StoryBoard搭建框架
实现单例
在登陆页面
登陆的.m
注册页面代码