什么是悟空IM?
悟空IM是一款通用实时服务,大部分实时通讯场景都能使用到,8年积累,沉淀出来的高性能通用通讯服务,支持即时通讯,站内/系统消息,消息中台,物联网通讯,音视频信令,直播弹幕,客服系统,AI通讯,即时社区等场景。
特点
- 📚 完全自研:自研消息数据库,消息分区永久存储,自研二进制协议(支持自定义),重写Go底层网络库,无缝支持TCP和websocket。
- 🚀 性能强劲:单机支持百万用户同时在线,单机16w/秒消息(包括DB操作)吞吐量,一个频道支持万人同时订阅。
- 🔔 零依赖:没有依赖任何第三方组件,部署简单,一条命令即可启动
- 🔐 安全:消息通道和消息内容全程加密,防中间人攻击和窜改消息内容。
- 🧱 扩展性强:采用频道设计理念,目前支持群组频道,点对点频道,后续可以根据自己业务自定义频道可实现机器人频道,客服频道等等。
Flutter SDK正式发布
开源地址:https://gitee.com/WuKongDev/WuKongIMFlutterSDK
安装
dependencies: wukongimfluttersdk: ^1.0.4
引入
import 'package:wukongimfluttersdk/wkim.dart';
初始化sdk
WKIM.shared.setup(Options.newDefault('uid', 'token'));
初始化IP
WKIM.shared.options.getAddr = (Function(String address) complete) async { // 可通过接口获取后返回 String ip = await HttpUtils.getIP(); complete(ip); };
连接
WKIM.shared.connectionManager.connect();
断开
// isLogout true:退出并不再重连 false:退出保持重连 WKIM.shared.connectionManager.disconnect(isLogout)
发消息
WKIM.shared.messageManager.sendMessage(WKTextContent('我是文本消息'), WKChannel(channelID, channelType));
监听
连接监听
WKIM.shared.connectionManager.addOnConnectionStatus('home', (status, reason) { if (status == WKConnectStatus.connecting) { // 连接中 } else if (status == WKConnectStatus.success) { // 成功 } else if (status == WKConnectStatus.noNetwork) { // 网络异常 } else if (status == WKConnectStatus.syncMsg) { //同步消息中 } });
消息入库
WKIM.shared.messageManager.addOnMsgInsertedListener((wkMsg) { // todo 展示在UI上 });
收到新消息
WKIM.shared.messageManager.addOnNewMsgListener('chat', (msgs) { // todo 展示在UI上 });
刷新某条消息
import 'package:wukongimfluttersdk/wkim.dart'; 0
命令消息(cmd)监听
import 'package:wukongimfluttersdk/wkim.dart'; 1
其他相关SDK
项目名 | Github地址 | Gitee地址 | 开源协议 | 说明 |
---|---|---|---|---|
WuKongIM | Github | Gitee | Apache2.0 | 悟空IM通讯端,负责长连接维护,消息投递等等 |
WuKongIMAndroidSDK | Github | Gitee | Apache2.0 | 悟空IM的Android SDK |
WuKongIMiOSSDK | Github | Gitee | Apache2.0 | 悟空IM的iOS SDK |
WuKongIMUniappSDK | Github | Gitee | Apache2.0 | 悟空IM的 Uniapp SDK |
WuKongIMJSSDK | Github | Gitee | Apache2.0 | 悟空IM的 JS SDK |
还没有评论,来说两句吧...