11

Startalk:去哪儿开源的高性能企业级 im 套件

 5 years ago
source link: https://github.com/qunarcorp/qtalk?amp%3Butm_medium=referral
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
Startalk下一阶段开源预告:
各位星粉~~ Startalk自开源以来,受到大家的热情欢迎,为了回馈大家的信任,2019年春节后,我们将加大开源力度,开源功能包含:
* 红包
* AA付款(主要是界面部分)
* PC客户端
* 音视频
* 音视频会议和直播

startalk全球网络加速服务也已上线,有需要的欢迎单独订购

Startalk是世界上最好的开源im系统级解决方案!

Startalk(星语)——通用通信解决方案

沟通是人类最基础的需求——《人类简史》

Startalk 的目标是成为一款通用的,高性能的企业级im套件。也在努力改变当前大型im系统无完整开源解决方案的现状。

Startalk 前身是去哪儿的Qtalk,已在Qunar稳定运行3年多。

其内核也在去哪儿旅行和去哪儿网站上扮演着着客服服务工具的角色。

也就是说,一套内核同时为去哪儿网提供了内部企业办公和商家tob业务的支撑。

我们的使用场景

  • 办公自动化OA
  • 商业企业客服系统
  • 各种im场景的SDK级嵌入

系统自有特点

  • 开放源代码
我们正在逐步把工作重心从公司git转移到github上,希望可以为大家提供更稳定持久的服务。
  • 只推荐私有化部署
企业有私有化部署的理由和需求,我们是希望帮助企业甚至团体在满足高效沟通和足够的扩展性上提供尽可能多的帮助。

如何使用?

Startalk专注于基于私有化部署。 这导致了startalk的登录过程略显复杂。 但是没关系,Startalk团队致力于把im系统设计门槛降低到很低的同时,也致力于降低首次接入时的成本。

通常,我们使用一款自有软件时,常见的接入方式分三步:

  • 下载app
  • 根据官方要求做一些设定
  • 注册账号&登录

Startalk因为是私有化部署,服务器也需要部署在自己公司,这使得接入步骤变成了四步:

  • 下载app
  • 部署后台系统(新增)
  • 通过后台配置,给客户端做一些设定
  • 倒入账号&登录

如果您真的很希望做私有化接入,但是又不想在前期有一些投入和成本,可以考虑在公共环境中做试用或暂住:

当您已经决定加入私有化部署,或者决定从公共环境中将数据迁移到私有环境:

部署环境要求

  • 后端 服务器centos 7(未来会支持ubuntu,以及各种私有云)
  • ios SDK 最低支持iOS9系统
  • 最低 Android SDK : SDK要求最低API级别为16
  • 编译 Android SDK : SDK要求您针对API 26或更高版本进行编译
  • 其他平台均可使用C++14进行编译。界面是 qt

看到这里,您现在可能已经希望测试一番了。。。

快速开始

如果您不想费事,或者希望可以快速开始,那么可以进入我们的 官方网站 注册公共域账号进行测试。

官方网站

我们针对不同层次的客户提供了不同层次的支持方式。 如果您感兴趣但是担心各种使用上的问题,可以移步 官网 了解详情

系统特性

  • 注重您的使用体验和信息安全
  • 支持端到端加密方式。默认使用TLS连接,纯二进制协议
  • 支持所有的消息类型,文本、表情、文件、音视频、图片、位置、红包、代码……;
  • 支持全平台接入;
  • 采用去中心化设计。支持私有云或公有云部署

已有用户

目前已广泛使用的主要厂商,如去哪儿、北工大、便利蜂、新晨航空、爱云动

AveyiuF.png!webqUFfMjE.png!webIBjEvin.png!webZfYBfiq.png!webr67r2ya.png!web

包括以下扩展功能

  • 企业OA
  • 单聊及群聊
  • 搜索
  • push
  • 音视频
  • 红包&AA收款
  • 会话加密
  • 组织架构

去中心化设计及部署方式

BfyYVje.png!web

Startalk 采用去中心化设计,将非状态服务合并到了Public中,状态服务进入了Domain中。Domain横向扩展,相互之间隔离

zayMn26.png!web

去中心化部署,只要有服务器,自己家里都能部署一套im服务

Startalk 后端模块

YVbMb2y.png!web

IM核心组件,负责维持与客户端的长连接和消息路由

IM负载均衡组件,负责验证客户端身份,以及转发http请求到对应的后台服务

IM HTTP接口服务,负责IM相关数据的查询、设置以及历史消息同步

  • qtalk_cowboy (后面所有的接口都会迁移到im_http_service,这个服务会废弃)

IM HTTP接口服务,负责IM相关数据的查询、设置以及历史消息同步,后面会全部迁移到im_http_service上

IM文件服务,负责文件的上传和下载

提供远程搜索人员和群的服务

  • redis

IM缓存服务

  • postgresql

IM数据库服务

客户端简介

客户端私有化配置

客户端SDK开源,目前仅开源移动端,PC端即将开源

android端

安卓SDK

ios端

ios SDK

各个组件Pod库

扩展工具组件库

数据库组件库

适用于iOS/Mac的OpenSSL库

PC及MAC端即将开源,如有需要,可先行下载客户端自主部署,下载地址: https://im.qunar.com/new/#/download


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK