又到了云服务的采购忘记,各路云也都是优惠不断,今年配置更高价钱更便宜,非常有吸引力,但往往买过之后很多也都在吃灰。这里给大家推荐一个好的玩法,更有意思更好玩的用途:搭建一套野火 IM 聊天系统。
服务器环境准备
- 安装 jdk1.8 或者 jre1.8 ( windows 或 linux 都可以)。
- 确保 80 、1883 、8888 端口没有被占用,最常见就是被 nginx 占用。
- 安全组开放 80 、1883 、8888 端口。
服务器部署
需要部署两个服务,一个是 IM 服务,用来处理 IM 业务用的。另外一个是 demo 应用服务,用来做登录等业务的。
IM 服务器部署
- 从 https://github.com/wildfirechat/server/releases 这里下载最新的软件包,上传到服务器并解压。
- 修改 config 目录下的
wildfirechat.conf,把server.ip改成您云服务器的公网 ip 地址,然后保存。 - 在终端中进入到解压目录中的 bin 的同级目录,执行
sudo sh ./bin/wildfirechat.sh。如果想要后台执行命令sudo nohup sh ./bin/wildfirechat.sh 2>&1 &。( windows 下执行 wildfirechat.bat 脚本)
应用服务部署
- 从 https://github.com/wildfirechat/im-app_server 这里下载最新的软件包,上传到服务器并解压。
- 执行命令
java -jar app-0.49.jar。如果想要后台执行命令java -jar app-0.49.jar 2>&1 &。
检查服务是否正确
打开浏览器分别输入地址验证
- 输入 http://你的云服务器公网 ip 地址 /api/version,如果返回的是一个 json,那就是正确了。
- 输入 http://你的云服务器公网 ip 地址:8888,如果返回的是一个 OK,那就是正确了。
至此服务器部署完成。
客户端配置打包测试
客户端支持 Android 和 iOS,都是原生语言写的,需要有对应的 Android Studio 和 XCode,需要最新版本,可以创建工程并在手机上运行。
Android 的配置与运行
- 从 https://github.com/wildfirechat/android-chat 下载源代码。
- 用 AS 打开,并找到
cn.wildfire.chat.kit.Config配置类,修改IM_SERVER_HOST的值为您的服务器公网 IP 地址,注意只是 ip 地址,不带 http 头。 - 找到
cn.wildfire.chat.app.AppService类,修改APP_SERVER_ADDRESS为http://云服务器公网 IP 地址:8888,这个是带 http 头的。 - 连上手机运行,在登录界面输入手机号码,验证码输入五个 6,也就是
66666。 - 另外再找个手机,登录后两个手机发送文字、语音、图片等消息。创建群组等操作。拨打音视频电话等。
iOS 的配置与运行
- 从 https://github.com/wildfirechat/ios-chat 下载源代码。
- 用 XCode 打开,并找到
WFCConfig.mm配置文件,修改IM_SERVER_HOST的值为您的服务器公网 IP 地址,注意只是 ip 地址,不带 http 头。 - 在同个文件中,修改
APP_SERVER_ADDRESS为http://云服务器公网 IP 地址:8888,这个是带 http 头的。 - 连上手机运行,在登录界面输入手机号码,验证码输入五个 6,也就是
66666。 - 另外再找个手机,登录后两个手机添加好友、发送文字、语音、图片等消息。创建群组等操作。拨打音视频电话等。
后续
做到上面这些,你就拥有了一个基础的即时通讯软件了,可以放到哪里等着吃灰了[手动狗头]。
如果不想吃灰,还可以继续入坑,比如买个域名,网站备案,把 ip 换成域名。对接短信,购买云服务的短信包,可以放到外面让别人用短信验证码登录。使用 mysql 数据库,支撑更高的系统容量。部署对接推送服务,让手机有离线接收推送的能力。对接七牛云服务,提供发送文件 /图片 /视频的速度。部署自己的音视频服务器,提高带宽,支持更大的并发容量。
前面这些基本上不用开发,就是购买配置就可以了。除此之外,还可以做进一步的二次开发,由于代码开源程度比较高,可以与各种系统做对接,或者深度的定制。当你深度玩转这些以后,可以尝试者去接一些即时通讯的开发外包,说不定能够帮你解决 35 岁的顾虑。