现在虽然环信的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整理笔记:环境的快速配置(附安装包)的更多相关文章

  1. xmpp整理笔记:发送图片信息和声音信息

    图片和音频文件发送的基本思路就是: 先将图片转化成二进制文件,然后将二进制文件进行base64编码,编码后成字符串.在即将发送的message内添加一个子节点,节点的stringValue(节点的值) ...

  2. xmpp整理笔记:聊天信息的发送与显示

    任何一个信息的发送都需要关注两个部分,信息的发出,和信息在界面中的显示 往期回顾: xmpp整理笔记:环境的快速配置(附安装包)  http://www.cnblogs.com/dsxniubilit ...

  3. xmpp整理笔记:用户网络连接及好友的管理

    xmpp中的用户连接模块包括用户的上线与下线信息展现,用户登录,用户的注册: 好友模块包括好友的添加,好友的删除,好友列表的展示. 在xmpp中 负责数据传输的类是xmppStream,开发的过程中, ...

  4. xmpp整理笔记:xmppFramework框架的导入和介绍

    一个将要开发xmpp的项目,建议在项目刚创建就导入框架,这样可以避免一些自己操作失误造成不必要的损失. xmpp中最常用的框架就是 xmppFrameWork 往期回顾: xmpp整理笔记:环境的快速 ...

  5. kafka-manager 的编译和使用(附安装包)

    kafka-manager 的编译和使用(附安装包) 学习了:https://my.oschina.net/wangjiankui/blog/653139

  6. Navicat 12.x for MySQL最新版安装破解教程(附安装包和注册机,全网独家可用

    title: "Navicat 12.x for MySQL最新版安装破解教程(附安装包和注册机,全网独家可用" categories: soft tags: soft autho ...

  7. 快速创建软件安装包-ClickOnce

    大家好,我是沙漠尽头的狼. .NET是免费,跨平台,开源,用于构建所有应用的开发人员平台. 今天介绍使用ClickOnce制作软件安装包,首先我们先了解什么是ClickOne. 1. 什么是Click ...

  8. Ubuntu 中 java 环境 (sunjdk) 的配置 (附详细说明)

    暑假以来为了鼓捣双系统废了很大的劲儿,本来一股脑想装 CentOS,无奈怎么处理分区引导都不能成功地与 Win8 共存,最终用 Ubuntu 一句 "检测到系统上有 Windows Boot ...

  9. tsung压力测试环境部署详细步骤(内附安装包)

    操作系统: Redhat 6.3.Redhat6.5 .centos7.4(这些版本已验证过) tsung版本: tsung-1.6.0 下载地址: 链接: https://pan.baidu.com ...

随机推荐

  1. 【AngularJS】—— 12 独立作用域

    前面通过视频学习了解了指令的概念,这里学习一下指令中的作用域的相关内容. 通过独立作用域的不同绑定,可以实现更具适应性的自定义标签.借由不同的绑定规则绑定属性,从而定义出符合更多应用场景的标签. 本篇 ...

  2. 性能调优:理解Set Statistics IO输出

    性能调优是DBA的重要工作之一.很多人会带着各种性能上的问题来问我们.我们需要通过SQL Server知识来处理这些问题.经常被问到的一个问题是:早上这个存储过程运行时间还是可以的,但到了晚上就很慢很 ...

  3. [UWP]涨姿势UWP源码——RSS feed的获取和解析

    本篇开始具体分析涨姿势UWP这个APP的代码,首先从数据的源头着手,即RSS feed的获取和解析,相关的类为RssReader,所有和数据相关的操作均放在里面. 涨姿势网站提供的RSS feed地址 ...

  4. 基于 CSS3 Media Queries 的 HTML5 应用

    先来介绍下 media,确切的说应该是 CSS media queries(CSS 媒体查询),媒体查询包含了一个媒体类型和至少一个使用如宽度.高度和颜色等媒体属性来限制样式表范围的表达式.CSS3 ...

  5. OpenJudge 666:放苹果 // 瞎基本DP

    666:放苹果 总时间限制:  1000ms     内存限制:  65536kB 描述 把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1 ...

  6. IOS 通用颜色快速生成代码

    通常情况下我们是直接使用类似于#EE1289这样的代码来直接表示RGB颜色的.但是在IOS语言中,它的颜色表示方式比较另类,他是使用一个0-1的小数来表示颜色值的.这样的实现,或许能够表示更多的颜色值 ...

  7. 【原创】.NET Web API之filter ActionFilterAttribute 过滤器使用

    1.在filter类里面引用,与MVC里面的不同 using System.Web.Http.Controllers; using System.Web.Http.Filters; 2.filter类 ...

  8. ms sql 2005和2008收缩日志的方法

    步骤1: 2005的sql 语句为:back up log 数据库名称 with no_log 目的:截断数据库日志 2008的sql 语句为:alter database 数据库名称 set rec ...

  9. 关于ASP.NET的“Forms身份验证”

    目录结构如图如示: 如果用户没有通过身份验证则跳转到登录页面让用户登录,在配置文件的<system.web></system.web>结点下添加如下代码: <!--身份验 ...

  10. jquery可见性选择器(综合)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...