5 Star 9 Fork 5

Gitee 极速下载 / OpenIM

加入 Gitee
与超过 1000 万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
此仓库是为了提升国内下载速度的镜像仓库,每日同步一次。 原始仓库: https://github.com/openim/openim
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README.md

openIM

Build Status Coverage Status Go Report Card

an open source IM (instance message) system. We are using slack to discuss projects. Find us at: https://openim.slack.com/

Motivation

  • XMPP is complicated, may be we could simplify it.
  • Communication should be safe for everyone. Nobody could sniff the information content. The communication behavior (to whom you send message) should also be protected.
  • Instance Message is just a channel for communication, could be used for man-man, machine-to-machine communicating.
  • Web should be open, not closed. IM is a part the Web.

That's why we need an open source IM project, we provides server side and client side implementation. So everybody could build a IM cluster even in your living-room.

The whole is an open, distributed, decentralized, XMPP-compatible, End-2-End encryption IM system.

Develop Document

Wiki first. May move to readthedocs later when API is stable

Architecture

openIM architecture

Modules

Connection Layer

TCPConnector

openIM binary protocol client

UDPConnector

openIM binary protocol client

XMPPConnector

standard XMPP client

MQTTConnector

standard MQTT client

WSConnector

websocket client using openIM binary protocol

HTTP2Connector

HTTP2 client using openIM binary protocol

Distribution Layer

Router

  • route logic message by message type
  • maintain location database of all clients, a distributed kv store cluster

Messenger

dispatch client message to each single user, and save the message when client is offline

PushProxy

  • maintain remote push token(APNs, Google token)
  • push message to remote push service (APNs, GCM)

GroupMan

handle group message distribution

XMPPGateway

implement XMPP Server2Server(s2s) protocol

Data Layer

DBProxy

database proxy, provide API to access database

Database

database to be supported:

  • Redis
  • MySQL
  • PostgreSQL

Contributing

Contributions are welcomed and greatly appreciated. See CONTRIBUTING.md for details

简介

OpenIM Java Jabber ® Server是一个开源用Java实现的Jabber即时消息服务器 展开 收起
Java 等 2 种语言
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Java
1
https://gitee.com/mirrors/OpenIM.git
git@gitee.com:mirrors/OpenIM.git
mirrors
OpenIM
OpenIM
master

搜索帮助