共计 1848 个字符,预计需要花费 5 分钟才能阅读完成。
导读 | 对于推送,IM 服务器,目前可以使用一些厂家提供的 SDK 来实现,但是我们的老板又总是担心使用别人的 SDK,假如别人的服务出现问题,或者别人偷看咱们的信息,那岂不是出现很大问题了 |
聊一聊 xmpp 的服务器 openfire 和测试客户端 spark
1、什么是 XMPP
这里说一下 XMPP, 我在前几节说的 sdk 汇总文章提到的部分推送,IM 的 SDK 提供商用的是 XMPP 协议,当然也有是自己实现的协议的,例如腾讯。XMPP 简单的来说,就是一个发送与接收之间定义的规则,不过这个协议和我们传统的协议有点不同,它不是二进制的方式的,也不是字符串的,而是一个 XML 格式的内容,相信大家都比较熟悉 XML,xml 的扩展性非常强大,XMPP 也继承了它优良的传统,使得我们在通信中,可以更加容易定义自己的标志。
2、xmpp 服务器 openfire
xmpp 开源服务器有很多,我们这里介绍一下基于 XMPP 协议的服务器,Openfire。Openfire 是基于 Jabber 协议 (XMPP) 实现的即时通信服务器端版本,使用 java 来实现的,其官网是:http://www.igniterealtime.org/index.jsp
目前 Openfire 的版本是 4.0.1,它可以部署在 mac,windows 和 linux 系统上。这里我就以 windows 版本的服务器为例子,在官网下载好 openfire 后,直接点击安装,安装步骤按照我们平时安装软件那样就可以了,这里提示一点,如果安装成功后,openfire 不会自动启动的话,那么 有可能是端口被占用了,xmpp 一般使用的端口有 5222、5223 等,可以查看一下有没有被占用。
如果安装后,没有自己启动的话,可以尝试手动点击 start 启动,一般安装好后需要我们对服务器进行配置,如果自己弹出了配置页面的话,可以跳过这一步,如果没有的话,可以点击 launch admin, 如图
进入配置页面后,会提示我们页面显示的语言,我们这里就选择简体中文,如图
选择好语言后,我们需要对服务器进行设置,输入我们的域名 \IP 地址,如果需要加密 的话,这里需要配置加密的公钥和私钥等等,我这里选择默认的。如图
配置好后,我们选择数据库的方式,这里说明一下,我们需要连接到一个已经安装好后的数据库的话,选择第一种方式,如果我们本地没有安装好,可以选择第二种,如图
由于我这里是选择第一种方式,接着我们需要配置我们的 ODBC 连接方式,我这里的使用 MYSQL 的,输入数据库服务地址和数据库的名字,还有用户名和密码
接着输入用户组里面的属性,我们这里选择默认的,如图
输入管理员的账号和密码,这里一定要注意的,默认的管理员帐号和密码是 admin 和 admin,如果需要修改成我们自己的密码的话,可以在这一步修改,但是一定要记住,不然的话,需要在数据库里面修改的,而且要以邮箱的形式来修改帐号。如图
进行到这一步,服务器的配置算是完成了
我们可以在管理平台上看到我们 openfire 的配置信息了,如图
对于 mac 版本的安装,下载后点击安装,安装完成后,可能会不知道安装在哪里,我们可以打开偏好设置,要重新打开才有效的,然后打开 openfire 的按钮,如下图,
这个时候,我们直接点击 start openfire 就可以打开我们 mac 版本的服务器,此外再次提示一下的就是,如果打不开 openfire 要检查里面的端口有没有被占用了。
3、测试客户端 Spark
这里我们直接用官网上的 Spark 来测试我们的实时信息,在官网下载好 spark, 点击安装,安装好后,我们需要注册一个帐号,注册帐号的步骤,如下图,这里需要注意的是服务器地址,这里的地址就是我们刚才输入的域名地址,我们可以输入服务器的 IP 地址,如果是本地测试的可以输入 127.0.0.1 或者所有域,或者域名,这个根据具体情况输入。spark 的下载地址 http://www.igniterealtime.org/downloads/index.jsp#spark
注册成功后,会自动弹回登录的页面的,我们输入帐号和密码就可以登录到相应的界面,并且会显示类似飞信的页面的,显示自己在线的,如图
4、测试群发信息
这时我们登录后管理平台上,想利用后台群发一条信息到客户端,我们点击会话 -> 工具 -> 发送信息,然后输入我们的内容,例如 hello. 点击发送后客户端会收到 hello, 这时说明实时内容已经到达了。
正文完
星哥玩云-微信公众号