现在虽然环信的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. 20套高品质的 Mobile & Web 界面 PSD 素材免费下载

    在这里,我们向大家呈现20个新鲜出炉的矢量的免费 PSD 素材.这些素材来自著名的设计社区——Dribbble,这个网站的用户不断发布各种精美的用户界面,图标和网站布局,以帮助激励他人.这些免费素材不 ...

  2. 50款免费 PSD 名片设计模板源文件下载《下篇》

    名片是陌生人之间建立联系的最便捷.最有效的工具.名片它可能是给你的客户留下正面的印象第一步,另一方面,名片是一个企业最重要和最符合成本效益的营销工具之一,尤其是对于刚刚起步的企业.这里收集了50款免费 ...

  3. 四、BLE(中)

    1.1       GATT Manager GATT MGR模块管理所有的GATT服务,同时也是连接GATT模块与GATT ServiceS模块的桥梁. 1.1.1    主要功能模块 先来看一张该 ...

  4. spring 数据校验之Hibernate validation

    1.需要的jar包 2.springsevlet-config.xml配置 在spring3之后,任何支持JSR303的validator(如Hibernate Validator)都可以通过简单配置 ...

  5. ROS 多台电脑间进行通信

    版权声明:本文为博主原创文章,转载请标明出处: http://www.cnblogs.com/liu-fa/p/5773822.html 在我看来,ROS最牛逼的地方就是它的通信机制了,不仅仅是进程间 ...

  6. 理解SQL Server是如何执行查询的 (3/3)

    页并发访问的保护:闩锁 在多线程并发情况下,需要防止读线程读到写线程正在写的资源,在编程中,通过使用互斥器(Mutexes), 信号量(Semaphore), 临界区(Critical Section ...

  7. Auto Mapper04(MVC中的配置)

    学习如何在MVC项目中配置AutoMapper. 一:首先在MVC项目中引用AutoMapper的DLL文件,接着创建一个接口,这里面我们需要定义两个方法,接口里面的方法只能定义不能实现,也没有什么修 ...

  8. 微信开发jssdk入门

    一个项目需要在微信里获得当前位置,于是就开始了我的微信开发之旅... 微信JSSDK说明文档http://mp.weixin.qq.com/wiki/7/aaa137b55fb2e0456bf8dd9 ...

  9. C#微信公众平台开发—access_token的获取存储与更新

    一.什么是access_token? access_token是公众号的全局唯一票据,公众号调用各接口时都需使用access_token.正常情况下access_token有效期为7200秒,重复获取 ...

  10. EntityFramework6.0的Sql读写分离拦截器 和 MVC的 Action拦截器 对比

    EF的DbCommandInterceptor类 拦截: EF6.1也出来不少日子了,6.1相比6.0有个很大的特点就是新增了System.Data.Entity.Infrastructure.Int ...