xmpp整理笔记:环境的快速配置(附安装包)
现在虽然环信的xmpp框架很火,但是也有一些弊端。环信的框架部分代码不开源,而且收费模式不科学,用户量一直低于免费线则好,一旦超过,收费极高。 xmpp感觉还是从xmppFramework框架学起比较科学。能够更清楚的了解即时通讯里各个操作的api,就算以后出了新的框架底层也要这么用的。主要用到的工具软件有Openfire,mysql,javajdk,phpMyAdmin,Adium等
将本文拉到最下面能看到配置完成之后的聊天效果。
附:需要用到的软件地址是 http://pan.baidu.com/s/1tr7oa 网盘密码d3lb
第一步,安装jdk,因为xmpp里面有不少东西是要运行在java环境下。在网盘的Openfire文件夹下,jdk按照提示下一步下一步就完事了。
如果你不是在董铂然博客园看到本篇文章,请点击查看原文
第二步,安装Openfire服务器,这个也在Openfire文件夹下,下一步下一步就完事了。
第三步,安装mysql。这个在数据库文件夹下。这个分10.9系统和10.10系统。 如果是10.9就安装5.6.21版本 如果是10.10就安装5.6.23版本
安装完之后 会看到偏好设置里的如下界面

把MySQL 和 Openfire都点开 并且都点start让两个都启动
第四步,要给MySQL设置“管理员密码” 原因:MySQL安装完成后,没有管理员密码,会禁止从网络访问MySQL
到终端里操作 (美元符号$不要输入)
$ cd 数据库的目录(从Finder拖)
$ ./alias
重新启动终端,输入ls,如果发现目录变蓝,通常说明配置正确
如果运行了这个脚本时无法设置密码,就使用
$ mysqladmin -u root password 修改mysql密码 比如123456
$ mysql -u root -p 登陆数据库
如果能登陆成功,quit退出 进入下一步
第五步,配置phpMyAdmin
这个是数据库管理软件,比较好用,mac上自带的软件要收费328美金,文件夹里也有个盗版但不能更新了,而且10.10系统用不了。(NaviCat不建议用)
phpMyAdmin是网页管理,非常好用。配置如下
复制到Apache根目录 → 将目录名修改为phpMyAdmin → 将 config.sample.inc.php 复制,重命名为:config.inc.php → 打开config.inc.php 将 localhost 改为 127.0.0.1
配置完成后启动 apache服务器
$ sudo apachectl -k start
Apache如果没配置好 可参见这篇文章配置也很简单 http://www.cnblogs.com/dsxniubility/p/4294456.html
phpMyAdmin的登录页面如下

第六步,创建数据库
打开浏览器,输入http://localhost → 选择 phpMyAdmin,进入phpadmin的登录页面 → 输入mysql的用户名密码root密码123456
→ 新建一个数据库,名字:openfire 排序规则:utf8_general_ci → 点击openfire(刚刚新建的空数据库)→ 点SQL
这时需要一串脚本代码去这里复制
打开finder,进入目录 /usr/local → 在文件夹openfire上,点击右键,选择“显示简介”在“共享与权限” → 解锁后添加本机账号具有“读与写”的权限
→ 进入 /usr/local/openfire/resources/database → 找到openfire_mysql.sql,并用Xcode 打开 cmd+A, cmd +C
回到safari,确认在SQL输入框中,cmd +v 并且点击执行,表就创建完了 。点击左侧的openfire,确认数据库安装正确!

第七步,配置openfire服务器
点击偏好设置里的 openfire 在面板的右边有 open admin console 点开就是openfire的服务器配置页面(没有要改的地方就直接下一步)
选择简体中文下一步 → 域"dsx.local" 非常重要!默认是自己"计算机的名称.local" 在系统偏好共享中可以看到自己的计算机名称
→ 数据库设置“标准数据库连接” → 数据库驱动选项:MySQL 把自动生成的数据库的URL改为
jdbc:mysql://127.0.0.1:3306/openfire?rewriteBatchedStatements=true (其实就是修改主机名为127.0.0.1,数据库名称为:openfire)
→ 用户名密码是 root 和 123456 → 点击继续 输入xmpp管理员的初始密码:比如再写个123456
登录到管理页面 填写xmpp用户名和密码 是 admin 和 123456 如果能够登录成功,说明服务器安装完成!

第八步,新建几个用户, 点击“用户/组” 新建用户只需要填写带星号的空空 (用于后面客户端登陆)

第九步,配置客户端(要配置两个,可以先聊天感受到即使通讯,之后还会自己写一个程序在模拟器内运行与客户端聊天)
配置客户端 iChat(iMessage)1] 添加用户,选择“其他”类型 账户类型:jabber 用户名:admin@dsx.local 123456 信任证书
配置小鸭子 Adium_1.5.10 ,在客户端文件夹里,打开后按照提示拖入应用程序就安装完成了,第一次启动可能比较慢
然后这iMessage 和 小鸭子客户端里的两个 账号互相加好友就可以 开始聊天了。

如果你不是在董铂然博客园看到本篇文章,请点击查看原文
后续很快会整理关于xmpp的各种模块(用户上线下线,用户注册,加好友,互相发送信息,发送图片和音频信息等)的学习笔记,有兴趣的可以关注我。
xmpp整理笔记:环境的快速配置(附安装包)的更多相关文章
- xmpp整理笔记:发送图片信息和声音信息
图片和音频文件发送的基本思路就是: 先将图片转化成二进制文件,然后将二进制文件进行base64编码,编码后成字符串.在即将发送的message内添加一个子节点,节点的stringValue(节点的值) ...
- xmpp整理笔记:聊天信息的发送与显示
任何一个信息的发送都需要关注两个部分,信息的发出,和信息在界面中的显示 往期回顾: xmpp整理笔记:环境的快速配置(附安装包) http://www.cnblogs.com/dsxniubilit ...
- xmpp整理笔记:用户网络连接及好友的管理
xmpp中的用户连接模块包括用户的上线与下线信息展现,用户登录,用户的注册: 好友模块包括好友的添加,好友的删除,好友列表的展示. 在xmpp中 负责数据传输的类是xmppStream,开发的过程中, ...
- xmpp整理笔记:xmppFramework框架的导入和介绍
一个将要开发xmpp的项目,建议在项目刚创建就导入框架,这样可以避免一些自己操作失误造成不必要的损失. xmpp中最常用的框架就是 xmppFrameWork 往期回顾: xmpp整理笔记:环境的快速 ...
- kafka-manager 的编译和使用(附安装包)
kafka-manager 的编译和使用(附安装包) 学习了:https://my.oschina.net/wangjiankui/blog/653139
- Navicat 12.x for MySQL最新版安装破解教程(附安装包和注册机,全网独家可用
title: "Navicat 12.x for MySQL最新版安装破解教程(附安装包和注册机,全网独家可用" categories: soft tags: soft autho ...
- 快速创建软件安装包-ClickOnce
大家好,我是沙漠尽头的狼. .NET是免费,跨平台,开源,用于构建所有应用的开发人员平台. 今天介绍使用ClickOnce制作软件安装包,首先我们先了解什么是ClickOne. 1. 什么是Click ...
- Ubuntu 中 java 环境 (sunjdk) 的配置 (附详细说明)
暑假以来为了鼓捣双系统废了很大的劲儿,本来一股脑想装 CentOS,无奈怎么处理分区引导都不能成功地与 Win8 共存,最终用 Ubuntu 一句 "检测到系统上有 Windows Boot ...
- tsung压力测试环境部署详细步骤(内附安装包)
操作系统: Redhat 6.3.Redhat6.5 .centos7.4(这些版本已验证过) tsung版本: tsung-1.6.0 下载地址: 链接: https://pan.baidu.com ...
随机推荐
- 【大数据】Linux下Storm(0.9版本以上)的环境配置和小Demo
一.引言: 在storm发布到0.9.x以后,配置storm将会变得简单很多,也就是只需要配置zookeeper和storm即可,而不再需要配置zeromq和jzmq,由于网上面的storm配置绝大部 ...
- java虚拟机启动参数分类详解
官方文档见: http://docs.sun.com/source/819-0084/pt_tuningjava.html java启动参数共分为三类:其一是标准参数(-),所有的JVM实现都必须实现 ...
- Azure Automation (3) 定期将某个Azure订阅下的所有虚拟机开关机
<Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的Azure China. 在笔者之前的文章中,我们介绍了使用Azure Automation ...
- Elasticsearch聚合 之 Ip Range IP地址范围聚合
相对于range和date range,这个聚合就是能够表示IP的范围. 普通IP模式 DSL命令: { "aggs":{ "ip_ranges":{ &quo ...
- 扩展Exception,增加判断Exception是否为SQL引用约束异常方法!
在设计数据表时,如果将某些列设置为关联其它表的外键,那么如果对其进行增加.修改操作时,其关联表若没有相匹配的记录则报错,或者在对其关联表进行删除时,也会报错,这就是外键约束的作用,当然除了外键还有许多 ...
- 关于HttpHandler的相关知识总结
一.关于IHttpHandler.IsReusable 很多人不明白,这哥们到底干嘛的,估计是微软最初的一个想法--让一个对象可以一直不断地被重复使用 ,但这个想法不成熟,会带来很多隐藏问题,一个对象 ...
- SSH实例(1)
首先,配置struts.xml文件: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE st ...
- 设置surfaceView的背景为透明
1. [代码][Java]代码 下面三句话加上就好了. surfaceView.setZOrderOnTop(true); surfaceView.setEGLConfigChooser(, , ...
- PopupWindow的使用
如图是效果图 2种常用PopupWindow的使用 下载地址:http://download.csdn.net/detail/qq_29774291/9683258 第一个展示一个下拉的Lis ...
- python signal信号
作用:发送和接收异步系统信号 信号是一个操作系统特性,它提供了一个途径可以通知程序发生了一个事件并异步处理这个事件.信号可以由系统本身生成,也可以从一个进程发送到另一个进程. 由于信号会中断程序的正常 ...