上周五,发了一条有关我们搞的 IM 解决方案的帖子,结果涨了不少 star,谢谢大家。
这是我们的 IM 系统,感兴趣的话,你都可以很容易自己部署一套自己玩:
https://github.com/wildfirechat
目前全平台支持,单聊、群聊、聊天室、公众号、voip 等,消息全链路加密。
现在,我们在思考一个问题:
是优先开发更多的外围系统,比如更好用的 bot 系统呢?还是优先去支持更多的平台?
请问大家,你们都希望 IM 都能提供哪些功能?
1
bengcaca 2019-04-23 09:11:14 +08:00 via Android
野狗挂了又来野火…
|
2
luojianxhlxt 2019-04-23 09:21:35 +08:00
ios、安卓、pc 这些客户端,为啥配置私有服务器一定要编译呢?
做出客户端,做个配置页面,让别人自己配置一下直接用多好啊 |
3
imndx OP @luojianxhlxt 这个问题,我们目前想的是,防止被滥用,故留了一点。
|
4
photon006 2019-04-23 09:32:32 +08:00
跟 rocket.chat 优势是什么呢?
目前我也打算开发简单的聊天功能,用 socketcluster 实现。 |
5
joesonw 2019-04-23 09:43:06 +08:00
能自己用 IM 的基本都是开发团队. 那开发团队最看中的是什么呢? 你们自己选 IM/团队协作工具看中的又是什么呢?
|
6
imndx OP @joesonw 现在的开发模式是复用一些成熟的组件,而不是全都从零自己开始写,我们的目标是为开发者提供一个简单、可靠的基础组件。
|
8
90928yao 2019-04-23 10:09:57 +08:00
和 mattermost 比 有什么优势呢,以前用过 mattermost。
顺便问下 你们 app 用了微信的 mars 吗? |
9
90928yao 2019-04-23 10:15:56 +08:00
搞个 wechat bot 吧 看到 qq 群 就不想加了。。。本来还想进群学习下呢
|
10
imndx OP |
11
matolv 2019-04-23 10:30:16 +08:00 1
matrix 了解一下
|
12
nanaw 2019-04-23 10:36:09 +08:00 via Android 1
要我说先做好 UI 吧,好看才能吸引人。
不知道你们是图省事还是觉得模仿微信是优势,我觉得这是劣势。。 |
14
AngryMagikarp 2019-04-23 10:41:57 +08:00
我最看重的是文档和接口的设计规范
|
15
imndx OP |
16
dynastysea 2019-04-23 10:42:57 +08:00
用户离线消息为啥只能收 1000 条。。。
|
17
imndx OP @AngryMagikarp 谢谢建议,对的,对于一个开源项目来说,文档和接口设计的规范程度,直接反应了项目的质量。
这些方面,我们会持续改进,目前 UIKit 层的接口,iOS 和 Android 不是很统一,需要改进。 谢谢。 |
18
missdeer 2019-04-23 10:50:24 +08:00 1
不知道有没有 fedoration ?就是比如 2 个人各自建了私服,可以让 2 个私服连起来,2 个私服下的客户端可以互发消息?
|
19
90928yao 2019-04-23 11:03:23 +08:00
还有个疑问 这是你们全职在弄 还是业余时间搞搞的
|
20
AngryMagikarp 2019-04-23 11:03:34 +08:00 1
建议不要执着于功能,不同人有不同需求,功能永远都无法满足所有人。
你应该先给自己的产品一个定位。比如安全性?隐私性?易部署?易扩展?诸如此类的。 另外一定要注重文档建设,不然很难会有人加入。 |
21
AngryMagikarp 2019-04-23 11:09:15 +08:00
我之前也写过一个聊天服务器,不过一个人写功能很有限。https://gitlab.com/lightim Go 语言实现的。
|
22
imndx OP |
25
CodeCommunist 2019-04-23 11:39:01 +08:00 via Android
搞 im 的很多,但都各自为战,最后活下来的没多少。子弹短信的失败已经证明没人能撼动企鹅地位。另外推荐一个 telegram 后端的开源实现。
https://github.com/nebula-chat/chatengine |
26
imndx OP |
27
lcj2class 2019-04-23 12:14:34 +08:00 via iPhone
Zulip 了解下
|
29
tiaod 2019-04-23 12:50:48 +08:00
做 IM 的必须想一个问题,上古时期的 email 都支持 federation,你做一个新的 IM 反而不支持的话,那么你对自己的定位就是做企业內部协作工具了
|
30
jswh 2019-04-23 13:17:17 +08:00
@tiaod 请教 federation 是啥
另外,im 的长连接不能你们是直接传输数据还是只是传输信令?我看微信的长链接也只是传输信令,具体的聊天数据红白事要通过 http api 获取。如果只是传输信令的话,我之前又考虑是不是可以用 mqtt 来直接替代长连接部分,协议更加完整,而且是公共协议。 |
31
jswh 2019-04-23 13:18:50 +08:00
@jswh 刚吃饱饭有点晕。修正一下。
im 的长连接不知道你们是直接传输数据还是只是传输信令?我看微信的长链接也只是传输信令,具体的聊天数据还是要通过 http api 获取。如果只是传输信令的话,我之前有考虑是不是可以用 mqtt 来直接替代,协议更加完整,而且是公共协议。 |
33
ntop 2019-04-23 13:40:59 +08:00 1
先加油吧!做开源的东西感觉还蛮难得,我之前和同事搞过一个游戏引擎(korok.io)。自我感觉是,如果你走开源路线就要有长期作战的准备,慢慢的等待项目孵化、发酵才能在市场夺得一席之地。如果你走的是商业路线,那就简单了花钱宣传,招人做商务,好处是很快就可以看见结果。如果有计划辞职出来搞,并且走开源路线的话觉得还是等等看比较好。
|
34
mv0x 2019-04-23 13:47:26 +08:00 1
能开源做事情确实应该点赞,如果仅仅是做为一个爱好就好,如果做为一个商业项目,我个人感觉看不到太多的卖点。
比如以前很好的 tox/tok,主打是去中心化,点到点之类的,但是也没有做起来。 这个 tox 的客户端,从界面来说,确实比较美观。 https://github.com/InsightIM |
36
imndx OP |
37
imndx OP |
38
missdeer 2019-04-23 14:53:37 +08:00
@tiaod 就算是企业内部协作工具,也有很强烈的 federation 需求,比如思科家的 Jabber,微软家的 S4B (以前的 lync )都可以,也就国人长期只用 QQ 和微信,以为所有的 IM 就是这样的。
|
39
matolv 2019-04-23 15:41:27 +08:00 2
@imndx https://github.com/matrix-org 服务器是 synapse,支持 federation,E2E 聊天,E2E 群聊,VOIP,视频等。客户端 Riot 全平台支持,含 android FCM,IOS apple push 或自带后台的 Fdroid 版本。该项目的愿景非常宏大,且维护频繁,你能想到的都有了。
|
40
zhfish 2019-04-23 15:43:13 +08:00
mark 下
im 需求几乎都在客服上 日常沟通的 im,微信 /钉钉已经够多了 |
41
zhfish 2019-04-23 15:46:17 +08:00 1
客服方向的路几乎已经固定
1. 分配客服 2 .全平台支持,微信支付宝小程序 3. bot,质检 4. 呼叫中心,实现 AI 话务 纯 IM 想不到用处,支持开源 IM,支持 mars |
43
yukiir 2019-04-23 16:02:10 +08:00
有个叫微喇的 app,挺有意思的,在 IM 基础上加入了实时对讲,不知道用什么方式实现的。
|
44
imndx OP @yukiir 最简单的一种实现方式是:一个抢麦服务器,控制现在跟谁说话。端上一直录音,每分钟发一条不可见消息给对方,对方收到消息直接播放。
|
45
firstfan 2019-06-07 21:42:33 +08:00
有个小问题,看介绍中说社区版可以支撑上百万用户,但请问有测试过同时在线用户数量么?
因为作为社区版是单机的,连接都是挂一台机器上,本身压力还蛮大,我觉得可能也就能到两三万? |