推聊 - 3分钟可运行起来的开源 Android手机聊天系统

freerocker 2013-01-23 11:21:47
推聊概述 PushTalk Overview
推聊是一个基于极光推送的Android手机聊天系统。支持群聊与点对点聊天。当前包括Android客户端与Java服务器端。3分钟就可以整套系统跑起来。


开源项目官方网站

http://github.com/good-life/pushtalk



功能与特点
功能列表
•频道里群聊
•与其他用户点对点聊天
•聊天支持文字、表情、URL等
•创建频道、加入频道
•注册用户(不需要密码)
•我的频道
•我的最近聊天
•聊天记录缓存
•客户端选择聊天服务器、添加聊天服务器

特点
•简单到极致的 http 聊天服务器:一个 jar 包跑起来
•轻量级客户端:聊天界面使用 Webview 的方式
•下行消息推送基于 JPush(一个免费的第三方 Android Push 服务),上行消息采用 http 请求的方式实现

聊天服务器
推聊的服务器端使用 Java 语言编写,基于最简单实用的开源框架。

•http 服务器使用 Jetty:轻量级的 Java Servlet 容器。
•数据库使用 H2: 轻量级的 Java 内存/文件数据库。
•页面模板使用 Freemarker:轻量级的 Java 页面模板引擎。
•打包时集成为一个整体 jar 包(包含所有的依赖包)
要运行推聊服务器端,请在 github 文件下载页 https://github.com/good-life/PushTalk/downloads/ 下载推聊服务器 jar 文件。

使用如下命令运行服务器:

java -Dfile.encoding=UTF-8 -jar pushtalk-server-with-dependencies.jar
注:实际的文件名后边一般会加上一个版本号。

上述命令运行后:

•一个 http server 启动了,监听端口为 10010
•浏览器里输入 http://localhost:10010 则可以访问到界面
•要正确地运行服务器,需要通过客户端访问
推聊服务器默认使用 10010 端口。可以在上述命令后指定使用另外的端口。比如以下命令指定使用 10011 来启动推聊聊天服务器:

java -jar pushtalk-server-with-dependencies.jar 10011

Android 客户端
客户端运行,请在 github 文件下载页 https://github.com/good-life/PushTalk/downloads/ 下载 Android apk 安装到 Android 手机即可。

你也可以自己编译 /client-android 项目之后安装到手机。

客户端默认内置官方聊天服务器地址。也可以直接在客户端添加新的服务器,选择新的聊天服务器。

如果你有服务器资源,可以长期运行,欢迎你架设推聊聊天服务器,请添加到以下的页面。经过测试没有问题,会被选择预置到客户端代码里:

https://github.com/good-life/PushTalk/wiki/PushTalk-Third-Party-Servers

开发者支持
欢迎广大开发者加入本开源项目,大家一起来不断地丰满、完善推聊。

本人是因为兴趣业余时间来开发推聊,考虑到 IM 占用的时间太多,所以请谅解,不提供任何 IM 的沟通方式。希望大家以如下的方式交流:

•Email: pushtalk.org@gmail.com
•项目Wiki: https://github.com/good-life/PushTalk/wiki
•项目Bug: https://github.com/good-life/PushTalk/issues
•PushTalk频道:pushtalk, 报告bug, 新功能讨论 等
代码提交方式:请先提交Bug修复,把 diff 以文件方式发邮件给我。合作多次后,我可以把你加入到本项目贡献者里来,你就可以随时自由地提交代码了。

你也可以自由地 fork 本项目,自己去发布新的版本。

推聊使用的开源协议:Apache License 2.0

...全文
2104 59 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
59 条回复
切换为时间正序
请发表友善的回复…
发表回复
yayagepeiya 2015-04-15
  • 打赏
  • 举报
回复
下行使用推送,那及时性不是不大好? 而且我试了下,好像丢包挺多的唉
pesicc 2014-02-17
  • 打赏
  • 举报
回复
支持群聊与点对点聊天
fristh 2014-01-16
  • 打赏
  • 举报
回复
页面模板使用 Freemarker:轻量级的 Java 页面模板引擎。
TTrunc 2014-01-09
  • 打赏
  • 举报
回复
要运行推聊服务器端,请在 github 文件下载页 https://github.com/good-life/PushTalk/downloads/ 下载推聊服务器 jar 文件。
chirva 2014-01-03
  • 打赏
  • 举报
回复
•轻量级客户端:聊天界面使用 Webview 的方式
wekena 2013-12-27
  • 打赏
  • 举报
回复
要运行推聊服务器端,请在 github 文件下载页 https://github.com/good-life/PushTalk/downloads/ 下载推聊服务器 jar 文件。
nighmi 2013-12-12
  • 打赏
  • 举报
回复
推聊服务器默认使用 10010 端口。
pocard 2013-11-26
  • 打赏
  • 举报
回复
页面模板使用 Freemarker:轻量级的 Java 页面模板引擎。
turnnoo 2013-11-15
  • 打赏
  • 举报
回复
我想要IM的联系方式
kaoopu 2013-11-08
  • 打赏
  • 举报
回复
看看,学习一下
recorar 2013-11-04
  • 打赏
  • 举报
回复
不错的想法
tornaa 2013-10-22
  • 打赏
  • 举报
回复
火钳刘明
jiannaon 2013-10-15
  • 打赏
  • 举报
回复
+10086
jealba 2013-10-11
  • 打赏
  • 举报
回复
推聊的服务器端使用 Java 语言编写,基于最简单实用的开源框架。
builthol 2013-09-29
  • 打赏
  • 举报
回复
3分钟跑起来的系统,真流弊
fjblue 2013-09-22
  • 打赏
  • 举报
回复
真厉害,我来玩玩
u010882524 2013-09-16
  • 打赏
  • 举报
回复
真流弊
emergency11 2013-09-04
  • 打赏
  • 举报
回复
+1024
ciipi 2013-08-30
  • 打赏
  • 举报
回复
油菜花
freecoc 2013-08-28
  • 打赏
  • 举报
回复
+10086
加载更多回复(35)

80,472

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧