请大家给我们的开源 IM 解决方案提建议吧。

2019-04-23 09:04:20 +08:00
 imndx

上周五,发了一条有关我们搞的 IM 解决方案的帖子,结果涨了不少 star,谢谢大家。

这是我们的 IM 系统,感兴趣的话,你都可以很容易自己部署一套自己玩:

https://github.com/wildfirechat

目前全平台支持,单聊、群聊、聊天室、公众号、voip 等,消息全链路加密。

现在,我们在思考一个问题:

是优先开发更多的外围系统,比如更好用的 bot 系统呢?还是优先去支持更多的平台?

请问大家,你们都希望 IM 都能提供哪些功能?

8406 次点击
所在节点    程序员
46 条回复
AngryMagikarp
2019-04-23 11:09:15 +08:00
我之前也写过一个聊天服务器,不过一个人写功能很有限。https://gitlab.com/lightim Go 语言实现的。
imndx
2019-04-23 11:19:29 +08:00
@dynastysea 这个数其实可以改,但太多的话,端上收消息,可能会比较慢,这是个平衡。

后续,我们可以把这个放到配置文件,可配置。
imndx
2019-04-23 11:20:42 +08:00
@missdeer 你这个想法有意思,但目前不支持,是集中式的。
imndx
2019-04-23 11:21:17 +08:00
@90928yao 我们有 5 个人,目前是业余时间搞,以后准备全职。
CodeCommunist
2019-04-23 11:39:01 +08:00
搞 im 的很多,但都各自为战,最后活下来的没多少。子弹短信的失败已经证明没人能撼动企鹅地位。另外推荐一个 telegram 后端的开源实现。
https://github.com/nebula-chat/chatengine
imndx
2019-04-23 12:12:11 +08:00
@CodeCommunist 我们搞的不是通用的社交软件,我们提供了 IM 的能力,开发者可以在这上面发挥,然后开发产品。

你的推荐,收藏了,谢谢。
lcj2class
2019-04-23 12:14:34 +08:00
Zulip 了解下
imndx
2019-04-23 12:22:59 +08:00
@lcj2class 谢谢推荐,我去了解一下。看来这个市场,产品还是非常多的。
tiaod
2019-04-23 12:50:48 +08:00
做 IM 的必须想一个问题,上古时期的 email 都支持 federation,你做一个新的 IM 反而不支持的话,那么你对自己的定位就是做企业內部协作工具了
jswh
2019-04-23 13:17:17 +08:00
@tiaod 请教 federation 是啥

另外,im 的长连接不能你们是直接传输数据还是只是传输信令?我看微信的长链接也只是传输信令,具体的聊天数据红白事要通过 http api 获取。如果只是传输信令的话,我之前又考虑是不是可以用 mqtt 来直接替代长连接部分,协议更加完整,而且是公共协议。
jswh
2019-04-23 13:18:50 +08:00
@jswh 刚吃饱饭有点晕。修正一下。

im 的长连接不知道你们是直接传输数据还是只是传输信令?我看微信的长链接也只是传输信令,具体的聊天数据还是要通过 http api 获取。如果只是传输信令的话,我之前有考虑是不是可以用 mqtt 来直接替代,协议更加完整,而且是公共协议。
tiaod
2019-04-23 13:35:03 +08:00
@jswh federation 前面 @missdeer 有说
ntop
2019-04-23 13:40:59 +08:00
先加油吧!做开源的东西感觉还蛮难得,我之前和同事搞过一个游戏引擎(korok.io)。自我感觉是,如果你走开源路线就要有长期作战的准备,慢慢的等待项目孵化、发酵才能在市场夺得一席之地。如果你走的是商业路线,那就简单了花钱宣传,招人做商务,好处是很快就可以看见结果。如果有计划辞职出来搞,并且走开源路线的话觉得还是等等看比较好。
mv0x
2019-04-23 13:47:26 +08:00
能开源做事情确实应该点赞,如果仅仅是做为一个爱好就好,如果做为一个商业项目,我个人感觉看不到太多的卖点。
比如以前很好的 tox/tok,主打是去中心化,点到点之类的,但是也没有做起来。
这个 tox 的客户端,从界面来说,确实比较美观。

https://github.com/InsightIM
imndx
2019-04-23 14:14:19 +08:00
@tiaod 我们的定位是:为开发者提供安全、稳定、可靠的 IM 组件,开发者在他们的项目中集成我们的 IM 组件。
imndx
2019-04-23 14:18:23 +08:00
@jswh 小的数据,比如消息、信令之类的,我们是长短结合。
文件之类的大数据,走的是短链接。

另外,mqtt 是在长连接之上的。
imndx
2019-04-23 14:23:32 +08:00
@ntop

看了下,你们的游戏引擎还挺有意思的。

我们目前想的是,区分社区版和商业版,商业版会提供一些高级功能,比如集群等。

嗯嗯,得在看看项目的发展情况,不能贸然辞职。
missdeer
2019-04-23 14:53:37 +08:00
@tiaod 就算是企业内部协作工具,也有很强烈的 federation 需求,比如思科家的 Jabber,微软家的 S4B (以前的 lync )都可以,也就国人长期只用 QQ 和微信,以为所有的 IM 就是这样的。
matolv
2019-04-23 15:41:27 +08:00
@imndx https://github.com/matrix-org 服务器是 synapse,支持 federation,E2E 聊天,E2E 群聊,VOIP,视频等。客户端 Riot 全平台支持,含 android FCM,IOS apple push 或自带后台的 Fdroid 版本。该项目的愿景非常宏大,且维护频繁,你能想到的都有了。
zhfish
2019-04-23 15:43:13 +08:00
mark 下
im 需求几乎都在客服上
日常沟通的 im,微信 /钉钉已经够多了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/557747

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX