一.什么是XMPP
XMPP是一种基于XML的即时通讯协议. 服务器为openfire
1.到http://www.igniterealtime.org/downloads/index.jsp下载最新openfire for mac版
比如:Openfire 3.8.1,下载后的文件:openfire_3_8_1.dmg
具体安装步骤可以参考:http://www.cnblogs.com/xiaodao/archive/2013/04/05/3000554.html
这里可能出现服务器开启不了的问题
解决办法如下:下面两种都可以
a:sudo su(1)
b:export JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home"
c: /usr/local/openfire/bin/openfire.sh
a:sudo su(2)
b: cd /usr/local/openfire/bin
c:export JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_73.jdk/Contents/Home"
d: cd /usr/local/openfire/bin
e: ./openfire.sh
如出现输入./openfire.sh后,显示permission denied的情况,则可以关闭再次打开终端首先输入 sudo chmod -R 777 /usr/local/openfire/bin 来取得文件夹权限。
3.服务器配置简要概括
1> 安装数据库mysql
双击mysql-5.6.12-osx10.7-x86_64.dmg
> 配置下mysql的用户名的密码
默认mysql有一个root帐号,密码为空
>mysql 登录
mysql -u root -p
>修改root的密码123456
mysqladmin -u root password "123456"
>查看数据库的命令
mysql> show databases;
2>安装xmpp服务端(openfire)
-openfire它是基于java实现
-如果要安装openfire 电脑必须安装java jdk
"怎么判断你当前的电脑有没有安装jdk"
在终端使用java -version 提示没有安装jdk,那就要手动安装
安装jdk 双击jdk-7u45-macosx-x64.dmg文件
修改/usr/local/openfire目录权限
3>配置数据库表
访问 /usr/local/目录
将openfire/resouces/databases的openfire_mysql.sql文件放置桌面
安装mysqlworkbench
建立连接
创建一个数据库(openfire)为openfire服务
往openfire数据库导入openfire_mysql.sql脚本文
4>配置openfire的管理后台
liangliang.local
openfire管理控制台 用户名是admin 密码:123456
5>使用"信息"登录的时候,输入用户名的时候
一个完成的登录名称 =(用名 + @ + 服务器名称(liangliang.local))
>使用spark如果运行错误,安装'JavaForOSX2014-001.dmg'文件
二.XMPP框架的基本应用 (可以参考xmpp的demo)
1、XMPP配置
(下载框架 https://github.com/robbiehanson/XMPPFramework)
a、导入xmpp框架 XMPPFramework;
b、添加依赖库:libresolv.dylib、libxml2.dylib
c、在Build Settings 中的 Header Search Paths中添加 /usr/include/libxml2
2、XMPP框架介绍和使用
Authentication 授权登录相关
Categories 分类
Core 核心 -根服务器交互的类 主要在Core文件夹里面
Extensions 扩展模块 "默认在扩展模块里的功能都是不工作"
"--提供数据缓存的模块,但是没有开启
Utilities(tool) 工具类
Vendor(供应商) 对于xmpp框架来说,它需要使用第三方框
-CocoaAsyncSocket socket框架
-CocoaLumberjack 第三方的日志输入框架 CZLog(@"xxxx")
此日志框架,可以在控制台看到颜色的输出
-KissXML 解析XML数据 ->个性xml里的数据
NSXmlParser -> 它只能解析,不能修改xml数据