共计 2391 个字符,预计需要花费 6 分钟才能阅读完成。
写在后面
Open-IM 是由前微信技术专家打造的 开源 的即时通讯组件。Open-IM 包含 IM 服务端和客户端 SDK,实现了高性能、轻量级、易扩大等重要个性。开发者通过集成 Open-IM 组件,并私有化部署服务端,能够将即时通讯、实时网络能力疾速集成到本身利用中,并确保业务数据的安全性和私密性。
理解更多原创文章:
【OpenIM 原创】开源 OpenIM:轻量、高效、实时、牢靠、低成本的音讯模型
【OpenIM 原创】C/C++ 调用 golang 函数,golang 回调 C /C++ 函数
【OpenIM 原创】简略轻松入门 一文解说 WebRTC 实现 1 对 1 音视频通信原理
【OpenIM 扩大】OpenIM 服务发现和负载平衡 golang 插件:gRPC 接入 etcdv3
【开源 OpenIM】高性能、可伸缩、易扩大的即时通讯架构
如果您有趣味能够在文章结尾理解到更多对于咱们的信息,期待着与您的交换单干。
在初始化 SDK 前须要先初始化局部全局监听器,初始化胜利后可在适合的机会通过 globalEvent 对相干回调进行监听。
// 会话监听
this.$openSdk.setConversationListener();
// 音讯状态监听
this.$openSdk.addAdvancedMsgListener();
// 群组监听
this.$openSdk.setGroupListener()
// 好友监听
this.$openSdk.setFriendListener();
- 会话监听回调列表
event | 阐明 |
---|---|
onConversationChanged | 会话列表扭转 |
onNewConversation | 新会话 |
onSyncServerFailed | – |
onSyncServerFinish | – |
onSyncServerStart | – |
onTotalUnreadMessageCountChanged | 音讯未读总数扭转 |
- 音讯状态监听回调列表
event | 阐明 |
---|---|
onRecvNewMessage | 接管到新音讯 |
onRecvMessageRevoked | 其余用户撤回告诉 |
onRecvC2CReadReceipt | 对方实时已读告诉 |
- 群组监听回调列表
event | 阐明 |
---|---|
onApplicationProcessed | 入群申请被解决 |
onGroupCreated | 群组创立 |
onGroupInfoChanged | 群组信息扭转 |
onMemberEnter | 新成员退出群组 |
onMemberInvited | 邀请成员退出 |
onMemberKicked | 踢出成员 |
onMemberLeave | 成员退群 |
onReceiveJoinApplication | 收到入群申请 |
- 好友监听回调列表
event | 阐明 |
---|---|
onBlackListAdd | 增加黑名单 |
onBlackListDeleted | 移除黑名单 |
onFriendApplicationListAccept | 承受好友申请 |
onFriendApplicationListAdded | 好友申请列表减少 |
onFriendApplicationListDeleted | 好友申请列表缩小 |
onFriendApplicationListReject | 回绝好友申请 |
onFriendInfoChanged | 好友信息更新 |
onFriendListAdded | 好友列表减少 |
onFriendListDeleted | 好友列表缩小 |
2. 初始化 OpenIMSDK
const config = {
platform: 1, // 平台类型
ipApi: "http://1.14.194.38:10000", //api 域名地址
ipWs: "ws://1.14.194.38:17778", //websocket 地址
/**
* ps: 上述配置适宜于通过 ip 拜访 若通过域名且配置了 https 证书请应用如下配置形式
* ipApi: "https://open-im.rentsoft.cn",
* ipWs: "wss://open-im.rentsoft.cn/wss",
*/
dbDir, //SDK 数据寄存目录
}
// 返回值为布尔值告知是否初始化胜利
this.flag = this.$openSdk.initSDK(config);
-
dbDir 为 SDK 初始化目录绝对路径,可通过 H5+API 获取
plus.io.requestFileSystem(plus.io.PRIVATE_DOC, function(fs) { fs.root.getDirectory( "user", {create: true,}, (entry) => { // 初始化 SDK ... }, (error) => {console.log(error); } ); });
初始化 SDK 胜利后会设置一个网络连接状态的回调监听,但回调在调用登录之后才会进行返回。
- 初始化监听回调事件
event | 阐明 |
---|---|
initStatus | 初始化状态 |
onConnectFailed | 连贯失败 |
onConnectSuccess | 连贯胜利 |
onConnecting | 连贯中 |
onKickedOffline | 被踢下线 |
onSelfInfoUpdated | 批改个人信息 |
onUserTokenExpired | 账号 token 过期 |
OpenIM github 开源地址:
https://github.com/OpenIMSDK/…
OpenIM 官网:https://www.rentsoft.cn
OpenIM 官方论坛:https://forum.rentsoft.cn/
咱们致力于通过开源模式,为寰球企业 / 开发者提供简略、易用、高效的 IM 服务和实时音视频通信能力,帮忙开发者升高我的项目的开发成本,并让开发者掌控业务的外围数据。
IM 作为外围业务数据,平安的重要性毋庸置疑,OpenIM 开源以及私有化部署让企业能更放心使用。
现在 IM 云服务商免费高企,如何让企业低成本、平安、牢靠接入 IM 服务,是 OpenIM 的历史使命,也是咱们后退的方向。
如您有技术下面的浅见请到咱们的论坛分割沟通,用户也可与咱们的技术人员谈讨应用方面的难题以及见解