|
|
<p align="center">
|
|
|
<a href="https://openim.io">
|
|
|
<img src="./assets/logo-gif/openim-logo.gif" width="60%" height="30%"/>
|
|
|
</a>
|
|
|
</p>
|
|
|
|
|
|
<div align="center">
|
|
|
|
|
|
[![Stars](https://img.shields.io/github/stars/openimsdk/open-im-server?style=for-the-badge&logo=github&colorB=ff69b4)](https://github.com/openimsdk/open-im-server/stargazers)
|
|
|
[![Forks](https://img.shields.io/github/forks/openimsdk/open-im-server?style=for-the-badge&logo=github&colorB=blue)](https://github.com/openimsdk/open-im-server/network/members)
|
|
|
[![Codecov](https://img.shields.io/codecov/c/github/openimsdk/open-im-server?style=for-the-badge&logo=codecov&colorB=orange)](https://app.codecov.io/gh/openimsdk/open-im-server)
|
|
|
[![Go Report Card](https://goreportcard.com/badge/github.com/openimsdk/open-im-server?style=for-the-badge)](https://goreportcard.com/report/github.com/openimsdk/open-im-server)
|
|
|
[![Go Reference](https://img.shields.io/badge/Go%20Reference-blue.svg?style=for-the-badge&logo=go&logoColor=white)](https://pkg.go.dev/github.com/openimsdk/open-im-server/v3)
|
|
|
[![License](https://img.shields.io/badge/license-Apache--2.0-green?style=for-the-badge)](https://github.com/openimsdk/open-im-server/blob/main/LICENSE)
|
|
|
[![Slack](https://img.shields.io/badge/Slack-500%2B-blueviolet?style=for-the-badge&logo=slack&logoColor=white)](https://join.slack.com/t/openimsdk/shared_invite/zt-22720d66b-o_FvKxMTGXtcnnnHiMqe9Q)
|
|
|
[![Best Practices](https://img.shields.io/badge/Best%20Practices-purple?style=for-the-badge)](https://www.bestpractices.dev/projects/8045)
|
|
|
[![Good First Issues](https://img.shields.io/github/issues/openimsdk/open-im-server/good%20first%20issue?style=for-the-badge&logo=github)](https://github.com/openimsdk/open-im-server/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3A%22good+first+issue%22)
|
|
|
[![Language](https://img.shields.io/badge/Language-Go-blue.svg?style=for-the-badge&logo=go&logoColor=white)](https://golang.org/)
|
|
|
|
|
|
|
|
|
<p align="center">
|
|
|
<a href="./README.md">English</a> ·
|
|
|
<a href="./README_zh_CN.md">中文</a> ·
|
|
|
<a href="./docs/readme/README_uk.md">Українська</a> ·
|
|
|
<a href="./docs/readme/README_cs.md">Česky</a> ·
|
|
|
<a href="./docs/readme/README_hu.md">Magyar</a> ·
|
|
|
<a href="./docs/readme/README_es.md">Español</a> ·
|
|
|
<a href="./docs/readme/README_fa.md">فارسی</a> ·
|
|
|
<a href="./docs/readme/README_fr.md">Français</a> ·
|
|
|
<a href="./docs/readme/README_de.md">Deutsch</a> ·
|
|
|
<a href="./docs/readme/README_pl.md">Polski</a> ·
|
|
|
<a href="./docs/readme/README_id.md">Indonesian</a> ·
|
|
|
<a href="./docs/readme/README_fi.md">Suomi</a> ·
|
|
|
<a href="./docs/readme/README_ml.md">മലയാളം</a> ·
|
|
|
<a href="./docs/readme/README_ja.md">日本語</a> ·
|
|
|
<a href="./docs/readme/README_nl.md">Nederlands</a> ·
|
|
|
<a href="./docs/readme/README_it.md">Italiano</a> ·
|
|
|
<a href="./docs/readme/README_ru.md">Русский</a> ·
|
|
|
<a href="./docs/readme/README_pt_BR.md">Português (Brasil)</a> ·
|
|
|
<a href="./docs/readme/README_eo.md">Esperanto</a> ·
|
|
|
<a href="./docs/readme/README_ko.md">한국어</a> ·
|
|
|
<a href="./docs/readme/README_ar.md">العربي</a> ·
|
|
|
<a href="./docs/readme/README_vi.md">Tiếng Việt</a> ·
|
|
|
<a href="./docs/readme/README_da.md">Dansk</a> ·
|
|
|
<a href="./docs/readme/README_el.md">Ελληνικά</a> ·
|
|
|
<a href="./docs/readme/README_tr.md">Türkçe</a>
|
|
|
</p>
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</p>
|
|
|
|
|
|
## :busts_in_silhouette: 加入我们的社区
|
|
|
|
|
|
+ 💬 [关注我们的 Twitter](https://twitter.com/founder_im63606)
|
|
|
+ 🚀 [加入我们的 Slack](https://join.slack.com/t/openimsdk/shared_invite/zt-2hljfom5u-9ZuzP3NfEKW~BJKbpLm0Hw)
|
|
|
+ :eyes: [加入我们的微信群](https://openim-1253691595.cos.ap-nanjing.myqcloud.com/WechatIMG20.jpeg)
|
|
|
|
|
|
## Ⓜ️ 关于 OpenIM
|
|
|
|
|
|
与Telegram、Signal、Rocket.Chat等独立聊天应用不同,OpenIM提供了专为开发者设计的开源即时通讯解决方案,而不是直接安装使用的独立聊天应用。OpenIM由OpenIM SDK和OpenIM Server两大部分组成,为开发者提供了一整套集成即时通讯功能的工具和服务,包括消息发送接收、用户管理和群组管理等。总体来说,OpenIM旨在为开发者提供必要的工具和框架,帮助他们在自己的应用中实现高效的即时通讯解决方案。
|
|
|
|
|
|
![App-OpenIM 关系](./docs/images/oepnim-design.png)
|
|
|
|
|
|
## 🚀 OpenIMSDK 介绍
|
|
|
|
|
|
**OpenIMSDK** 是为 **OpenIMServer** 设计的IM SDK,专为集成到客户端应用而生。它支持多种功能和模块:
|
|
|
|
|
|
+ 🌟 主要功能:
|
|
|
- 📦 本地存储
|
|
|
- 🔔 监听器回调
|
|
|
- 🛡️ API封装
|
|
|
- 🌐 连接管理
|
|
|
|
|
|
+ 📚 主要模块:
|
|
|
1. 🚀 初始化及登录
|
|
|
2. 👤 用户管理
|
|
|
3. 👫 好友管理
|
|
|
4. 🤖 群组功能
|
|
|
5. 💬 会话处理
|
|
|
|
|
|
它使用 Golang 构建,并支持跨平台部署,确保在所有平台上提供一致的接入体验。
|
|
|
|
|
|
👉 **[探索 GO SDK](https://github.com/openimsdk/openim-sdk-core)**
|
|
|
|
|
|
## 🌐 OpenIMServer 介绍
|
|
|
|
|
|
+ **OpenIMServer** 的特点包括:
|
|
|
- 🌐 微服务架构:支持集群模式,包括网关(gateway)和多个rpc服务。
|
|
|
- 🚀 多样的部署方式:支持源代码、Kubernetes或Docker部署。
|
|
|
- 海量用户支持:支持十万级超大群组,千万级用户和百亿级消息。
|
|
|
|
|
|
### 增强的业务功能:
|
|
|
|
|
|
+ **REST API**:为业务系统提供REST API,增加群组创建、消息推送等后台接口功能。
|
|
|
|
|
|
+ **Webhooks**:通过事件前后的回调,向业务服务器发送请求,扩展更多的业务形态。
|
|
|
|
|
|
![整体架构](./docs/images/architecture-layers.png)
|
|
|
|
|
|
|
|
|
|
|
|
## :rocket: 快速入门
|
|
|
|
|
|
在线体验iOS/Android/H5/PC/Web:
|
|
|
|
|
|
👉 **[OpenIM在线演示](https://www.openim.io/en/commercial)**
|
|
|
|
|
|
为了便于用户体验,我们提供了多种部署解决方案,您可以根据以下列表选择适合您的部署方式:
|
|
|
|
|
|
+ **[源代码部署指南](https://docs.openim.io/guides/gettingStarted/imSourceCodeDeployment)**
|
|
|
+ **[Docker 部署指南](https://docs.openim.io/guides/gettingStarted/dockerCompose)**
|
|
|
|
|
|
## 系统支持
|
|
|
|
|
|
支持 Linux、Windows、Mac 系统以及 ARM 和 AMD CPU 架构。
|
|
|
|
|
|
## :link: 相关链接
|
|
|
|
|
|
+ **[开发手册](https://docs.openim.io/)**
|
|
|
+ **[更新日志](https://github.com/openimsdk/open-im-server/blob/main/CHANGELOG.md)**
|
|
|
|
|
|
## :writing_hand: 如何贡献
|
|
|
|
|
|
我们欢迎任何形式的贡献!在提交 Pull Request 之前,请确保阅读我们的[贡献者文档](https://github.com/openimsdk/open-im-server/blob/main/CONTRIBUTING.md)
|
|
|
|
|
|
+ **[报告 Bug](https://github.com/openimsdk/open-im-server/issues/new?assignees=&labels=bug&template=bug_report.md&title=)**
|
|
|
+ **[提出新特性](https://github.com/openimsdk/open-im-server/issues/new?assignees=&labels=enhancement&template=feature_request.md&title=)**
|
|
|
+ **[提交 Pull Request](https://github.com/openimsdk/open-im-server/pulls)**
|
|
|
|
|
|
感谢您的贡献,一起来打造强大的即时通讯解决方案!
|
|
|
|
|
|
## :closed_book: 许可证
|
|
|
|
|
|
OpenIMSDK 在 Apache License 2.0 许可下可用。查看[LICENSE 文件](https://github.com/openimsdk/open-im-server/blob/main/LICENSE)了解更多信息。
|
|
|
|
|
|
## 🔮 Thanks to our contributors!
|
|
|
|
|
|
<a href="https://github.com/openimsdk/open-im-server/graphs/contributors">
|
|
|
<img src="https://contrib.rocks/image?repo=openimsdk/open-im-server" />
|
|
|
</a>
|