(用户)接受群邀请
用户接受入群邀请, 那么该群的所有群成员会收到群通知消息,触发 {@link NIMGetInstanceOptions.onAddTeamMembers | onAddTeamMembers}
添加收藏
直接加为好友
注:直接加某个用户为好友后, 对方不需要确认, 直接成为当前登录用户的好友。 对方会收到一条类型为 类型为 type 为 friendReuqest 的系统通知,attach.type 为 addFriend,, 此类系统通知的 from 字段的值为申请方的帐号, to 字段的值为接收方的账号。
Pin 住一条消息
添加快捷评论
添加云端置顶的会话。
添加超级群的管理员
添加群管理员后, 所有群成员会收到群通知,并触发 {@link NIMGetInstanceOptions.onUpdateSuperTeamManagers | onUpdateSuperTeamManagers}。
添加超级群的成员
群主和管理员在邀请成员加入群(通过操作创建群或拉人入群)之后, 被邀请者会收到系统通知,并触发 {@link NIMGetInstanceOptions.onsysmsg | onsysmsg},其 type 为 'superTeamInvite',
如果用户接受入群邀请, 那么该群的所有群成员会收到群通知消息,触发 {@link NIMGetInstanceOptions.onAddSuperTeamMembers | onAddSuperTeamMembers}
如果用户拒绝群邀请后, 邀请者会收到系统通知,并触发 {@link NIMGetInstanceOptions.onsysmsg | onsysmsg},其 type 为 'rejectSuperTeamInvite'
添加群管理员
添加群管理员后, 所有群成员会收到群通知,并触发 {@link NIMGetInstanceOptions.onUpdateTeamManagers | onUpdateTeamManagers}。
添加群成员
普通群:
拉人入群后, 其他群成员会收到通知并触发 {@link NIMGetInstanceOptions.onAddTeamMembers | onAddTeamMembers}
但是被邀请的群成员不会收到回调,知道在有人说话收到 {@link NIMGetInstanceOptions.onupdatesessions | onupdatesessions} 事件才能接到消息,感知到有新的群。
高级群:
群主和管理员在邀请成员加入群(通过操作创建群或拉人入群)之后, 被邀请者会收到系统通知,并触发 {@link NIMGetInstanceOptions.onsysmsg | onsysmsg},其 type 为 'teamInvite',
如果用户接受入群邀请, 那么该群的所有群成员会收到群通知消息,触发 {@link NIMGetInstanceOptions.onAddTeamMembers | onAddTeamMembers}
如果用户拒绝群邀请后, 邀请者会收到系统通知,并触发 {@link NIMGetInstanceOptions.onsysmsg | onsysmsg},其 type 为 'rejectTeamInvite'
加入黑名单
加入静音列表
申请加为好友
注:申请加某个用户为好友后, 对方会收到一条类型为 type 为 friendReuqest 的系统通知,attach.type 为 applyFriend, 用户在收到好友申请后, 可以选择通过或者拒绝好友申请
申请入超级群
用户可以主动申请加入高级群, 目标群的群主和管理员会收到系统通知,触发 {@link NIMGetInstanceOptions.onsysmsg | onsysmsg} type 为 'applySuperTeam',
申请入群
用户可以主动申请加入高级群, 目标群的群主和管理员会收到系统通知,触发 {@link NIMGetInstanceOptions.onsysmsg | onsysmsg} type 为 'applyTeam',
音频转文字
注: 入参需要输入 NOS 或者 S3 文件存储对象的原链接,如果你得到的是短链接,使用 API {@link MiscInterface.getNosOriginUrl | getNosOriginUrl} 去转换
旋转图片
// todo 主动转长链处理
删除某个会话的云端消息历史记录,与漫游记录
注:该 API 清空服务器聊天记录后,同步删漫游,并且会同步删除本地数据库中的会话消息。
连接
注:这个方法仅在 disconnect 后再调用。而 getInstance 后不需要调用。
创建群
普通群不可以设置群加入方式
高级群的群加入方式默认为'needVerify'
高级群的群被邀请模式默认为'needVerify'
高级群的群邀请模式默认为'manager'
高级群的群信息修改权限默认为'manager'
高级群的群信息自定义字段修改权限默认为'manager'
创建者将会收到 {@link NIMGetInstanceOptions.onCreateTeam | onCreateTeam}, API 调用成功. 随后所拉的人入群后触发 {@link NIMGetInstanceOptions.onAddTeamMembers | onAddTeamMembers} 回调, 再触发 {@link NIMGetInstanceOptions.onupdatesessions | onupdatesessions} 和 {@link NIMGetInstanceOptions.onmsg | onmsg} 回调, 触发会话更新并且接到通知类消息“某某入群”。
剪裁图片
// todo 主动转长链处理
删除所有的本地消息
注:如果不 {@link support.db|支持数据库}, 执行成功,但不会返回或者操作有效的数据。
删除所有本地数据库里的系统通知
删除收藏。返回结果为被成功删除的收藏个数
删除好友
删除好友后, 被删除的人会收到一条类型为 type 为 deleteFriend 的系统通知 此类系统通知的 from 字段的值为删除方的帐号, to 字段的值为被删除方的账号。
删除某一条本地消息。
注:如果不 {@link support.db|支持数据库}, 执行成功,但不会返回或者操作有效的数据。
注2: 如果删除的是对应会话的最后一条消息, 那么对应会话的 lastMsg
属性会自动变为变为上一条消息, 同时触发 onupdatesession
回调
按条件删除消息
注:如果不 {@link support.db|支持数据库}, 执行成功,但不会返回或者操作有效的数据。
删除某个会话下所有的本地消息
注:如果不 {@link support.db|支持数据库}, 执行成功,但不会返回或者操作有效的数据。
更新本地数据库里的会话
删除本地数据库里的系统通知
取消消息的 Pin 状态。
单向删除消息
批量个单向删除消息
添加快捷评论
删除云端会话列表
取消云端置顶的会话。
销毁实例
销毁当前 IM 实例,同时会退出登录状态,并断开websocket连接
移除所有监听事件,销毁部分内部变量,并且此实例再也无法调用 connect 恢复 IM 连接
断开连接。
退出登录状态,并断开 websocket 连接
disconnect完成后,实例不会被销毁,可再次 connect 方法登录IM
解散群,群主可操作
解散群后, 所有群成员会收到群通知,并触发 {@link NIMGetInstanceOptions.onDismissTeam | onDismissTeam} 事件。
Calls each of the listeners registered for a given event.
Return an array listing the events for which the emitter has registered listeners.
检查客户端反垃圾
注: 调用此接口前,需要调用过一次 getClientAntispamLexicon 来获取反垃圾词库. 否则会出现 404 没有反垃圾词库
重发消息
注: 该接口直接返回的是 sending 状态的未完成 message,发送完毕的消息体需要传递 options.done 获得。
获取全部超级群成员, 数据量非常多时会分多次 done 返回
========================== plugin start =================================
获取反垃圾词库
查询收藏列表
获取文件的源链接的鉴权 token
注: 如果开发者传入的是短链接,那么调用 getNosOriginUrl 去得到长链接.
========================== friend start =================================
========================== msgLog start =================================
获取本地数据库的消息记录
注:如果不 {@link support.db|支持数据库}, 执行成功,但不会返回或者操作有效的数据。
获取 idClients 对应的本地消息列表
注:如果不 {@link support.db|支持数据库}, 执行成功,但不会返回或者操作有效的数据。
========================== session start =================================
分页查询本地数据库里的会话列表
注:会话列表按 updateTime 降序排列, 即最近聊过天的放在列表的最前面
获取本地数据库里的系统通知
查询某会话下的 Pin 消息列表
通过消息 id 等信息批量查询历史消息,thread 聊天专用
获取超级群禁言成员列表
获取群禁言成员列表
短链接转长链接
批量查询消息的快捷评论
获取黑名单和静音列表
查询某个云端会话
========================== cloudSession start =================================
========================== misc start =================================
获取云端置顶会话的列表
========================== superTeam start =================================
通过一批 account id 获取若干个超级群
获取超级群成员, 分页获取
获取超级群列表
注: 没有本地 db 时,将会全量获取服务器的超级群列表
========================== team start =================================
通过群ID及成员账号获取群成员信息
获取群成员的邀请者accid
获取群成员.
查询群组消息的已读、未读数量
查询群组消息的已读、未读数量
获取群列表
注: 没有本地 db 时,将会全量获取服务器的群列表
通过一批 teamId 来获取若干个群
注: v8.2.0+ 支持
========================== msgExtend start =================================
========================== user start =================================
获取一批用户的名片, 每次最多 150 个.
========================== passThrougth start =================================
往本地数据库中插入一条会话记录
interlace 图片
注: interlace 是修改图片参数让图片从模糊到清晰的方式呈现给用户的方式
// todo 主动转长链处理
是否为我的好友
注:该接口需要数据库支持,若没有开启本地数据库能力,done 回调里只会返回 false
查看某人是否在当前用户在黑名单里
注:如果不 {@link support.db|支持数据库}, 执行成功,但永远返回 false
踢当前用户登录的其它端
主动退出超级群
主动退出超级群后, 所有群成员会收到群通知,并触发 {@link NIMGetInstanceOptions.onRemoveSuperTeamMembers | onRemoveSuperTeamMembers}。
主动退群
主动退群后, 所有群成员会收到群通知,并触发 {@link NIMGetInstanceOptions.onRemoveTeamMembers | onRemoveTeamMembers}。
Return the number of listeners listening to a given event.
Return the listeners registered for a given event.
========================== login start =================================
向服务器回包标记系统消息端测已读,下次服务器不需要将此消息作离线系统消息发下来
标记后会触发 onupdatesysmsgunread
回调
========================== utils start =================================
云端全文检索消息(full text search)。返回的消息会按会话 session 分类返回
注:云端全文检索需要开通服务,请联系商务经理
云端全文检索消息-按时间分页搜索。返回的消息结果按时间自然排序
注:云端全文检索需要开通服务,请联系商务经理
群组全体禁言
Add a listener for a given event.
Add a one-time listener for a given event.
通过好友申请
注:通过申请后, 对方会收到一条类型为 type 为 friendReuqest 的系统通知,attach.type 为 passFriendApply,
(管理员)通过超级群申请
所有群成员都会触发 {@link NIMGetInstanceOptions.onAddSuperTeamMembers | onAddSuperTeamMembers}
(管理员)通过群申请
所有群成员都会触发 {@link NIMGetInstanceOptions.onAddTeamMembers | onAddTeamMembers}
========================== cloudStorage start =================================
处理图片
// todo 主动转长链处理
========================== event start =================================
修改图片质量
// todo 主动转长链处理
按账号获取指定事件的订阅关系
按账号获取指定事件的订阅关系
撤回消息
注:撤回消息后,消息接收方会收到一条类型为 'deleteMsg' 的系统通知。若是群消息, 所有群成员都会收到系统通知. 如果同时在多个端登录了同一个账号, 那么其它端也会收到这条系统通知.
拒绝好友申请
拒绝申请后, 对方会收到一条类型为 type 为 friendReuqest 的系统通知,attach.type 为 rejectFriendApply,
(管理员)拒绝超级群申请
(用户)拒绝超级群的邀请
果用户拒绝超级群的邀请后, 邀请者会收到系统通知,并触发 {@link NIMGetInstanceOptions.onsysmsg | onsysmsg},其 type 为 'rejectSuperTeamInvite'
(管理员)拒绝群申请
(用户)拒绝群邀请
果用户拒绝群邀请后, 邀请者会收到系统通知,并触发 {@link NIMGetInstanceOptions.onsysmsg | onsysmsg},其 type 为 'rejectTeamInvite'
Remove all listeners, or those of the specified event.
移出黑名单
移出静音列表
Remove the listeners of a given event.
移除超级群的管理员
移除超级群的管理员后, 所有群成员会收到群通知,并触发 {@link NIMGetInstanceOptions.onUpdateSuperTeamManagers | onUpdateSuperTeamManagers}。
踢人出超级群
踢人出超级群后, 所有群成员会收到群通知,并触发 {@link NIMGetInstanceOptions.onRemoveSuperTeamMembers | onRemoveSuperTeamMembers}
移除群管理员
移除群管理员后, 所有群成员会收到群通知,并触发 {@link NIMGetInstanceOptions.onUpdateTeamManagers | onUpdateTeamManagers}。
踢人出群
踢人出群后, 所有群成员会收到群通知,并触发 {@link NIMGetInstanceOptions.onRemoveTeamMembers | onRemoveTeamMembers}
重发消息
注: 该接口直接返回的是 sending 状态的未完成 message,发送完毕的消息体需要传递 options.done 获得。
重置所有会话的未读数
注:如果是未读数不是 0 的会话,接口生效会收到 onupdatesessions 回调,更新其未读数
取消“进入当前会话”
注:setCurrSession 后 可以 resetCurrSession 取消。
重置某个会话的未读数.
注: 需要传入的是 p2p 会话和 team 会话
注:如果是未读数不是 0 的会话,接口生效会收到 onupdatesessions 回调,更新其未读数
重置某些会话的未读数
注: 需要传入的是 p2p 会话和 team 会话
注:如果是未读数不是 0 的会话,接口生效会收到 onupdatesessions 回调,更新其未读数
旋转图片
// todo 主动转长链处理
将消息存储至本地数据库
注:如果不 {@link support.db|支持数据库}, 执行成功,但不会返回或者操作有效的数据。
发送自定义消息
注:举例一个场景,剪刀石头布游戏
注2: 该接口直接返回的是 sending 状态的未完成 message,发送完毕的消息体需要传递 options.done 获得。
========================== systemMessage start =================================
发送文件类型消息。
注: 参数 type 可以选择:image 图片,video 视频,audio 音频,file 其他文件。
注2: 自版本 v8.9.102 和 v9.7.0+ 开始,该接口直接返回的是 sending 状态的未完成 message,发送完毕的消息体需要传递 options.done 获得。
发送地理位置消息
注: 该接口直接返回的是 sending 状态的未完成 message,发送完毕的消息体需要传递 options.done 获得。
发送 p2p 点对点场景的消息已读回执
发送 team 群类型的消息已读回执
========================== msg start =================================
发送地理位置消息
注: 该接口直接返回的是 sending 状态的未完成 message,发送完毕的消息体需要传递 options.done 获得。
设置“进入当前会话”
注:这是 sdk 的一个便于操作的复合接口,做的逻辑有:在内存里记录当前进入的会话,进入会话时调用 resetSessionUnread 清空未读,且后续 onMsg 接收新消息时 resetSessionUnread 清空未读。
注2:如果不满足开发者的场景,开发者可以组合调用 API,须小心接到新消息而触发的 onupdatesessions 变更时,忽略当前选中的会话的 unread 数变更。
更新初始化的配置
接受进入频道的邀请
呼叫: 创建一个频道, 己方加入,并邀请对方加入频道
注: 组合接口, 相当于调用 signalingCreateAndJoin 后, 调用 signalingInvite.
========================== signaling start =================================
取消邀请
关闭频道
发送自定义信令
创建频道
如果不存在房间, 则创建一个频道,并且己方加入. 如果已存在频道,则己方直接加入
注: 组合接口, 相当于调用 signalingCreate 后, 调用 signalingJoin.
延长频道的有效期
注:SDK 在 v9.8.0 及以后自动托管频道的有效期,不需要开发者再手动延迟.
查询频道信息. 根据 channelName 查询房间信息
邀请某人进入频道
加入频道
离开频道
标记信令消息已收到, 下次不会在离线同步中收到此消息
拒绝进入频道的邀请
去除图片元信息
// todo 主动转长链处理
订阅某事件
生成图片的略缩图
// todo 主动转长链处理
转让超级群, 群主可操作
转让后, 所有群成员会收到群通知,并触发 {@link NIMGetInstanceOptions.onTransferSuperTeam | onTransferSuperTeam}
如果转让群的同时离开群, 那么相当于调用主动退群来离开群, 所有群成员会再收到群通知,并触发 {@link NIMGetInstanceOptions.onRemoveSuperTeamMembers | onRemoveSuperTeamMembers}。
转让群, 群主可操作
转让群后, 所有群成员会收到群通知,并触发 {@link NIMGetInstanceOptions.onTransferTeam | onTransferTeam}
如果转让群的同时离开群, 那么相当于调用主动退群来离开群, 所有群成员会再收到群通知,并触发 {@link NIMGetInstanceOptions.onRemoveTeamMembers | onRemoveTeamMembers}。
按账号取消订阅关系
取消指定事件的全部订阅关系
更新收藏,只能更新 custom 字段
更新好友
只能更新备注和扩展字段
修改自己在超级群里的信息
所有在线的群成员会触发 {@link NIMGetInstanceOptions.onUpdateSuperTeamMember | onUpdateSuperTeamMember} 。
修改自己在群里的信息
所有在线的群成员会触发 {@link NIMGetInstanceOptions.onupdateteammember | onupdateteammember} 。
更新本地消息。仅允许更新 localCustom 本地自定义扩展字段。
注:如果不 {@link support.db|支持数据库}, 执行成功,但不会返回或者操作有效的数据。
更新本地数据库里的会话
更新本地数据库里的系统通知
更新被 Pin 的消息
注:只能更新扩展字段
更新群成员禁言状态
更新群成员禁言状态后, 所有群成员会收到群通知消息,触发 {@link NIMGetInstanceOptions.onUpdateTeamMembersMute | onUpdateTeamMembersMute}
其 attach 有一个字段 team 值为对应的群对象,account 的值为被禁言的帐号, members 的值为被禁言的群成员列表。
获取一批用户的名片, 每次最多 150 个.
修改别人的超级群的昵称
所有在线的群成员会触发 {@link NIMGetInstanceOptions.onUpdateSuperTeamMember | onUpdateSuperTeamMember} 。
修改别人的群昵称
所有在线的群成员会触发 {@link NIMGetInstanceOptions.onupdateteammember | onupdateteammember} 。
更新云端会话
更新云端置顶的会话(目前仅能更新它的扩展字段)。
更新超级群
注: 更新超级群群后, 所有群成员会收到群通知,并触发回调 {@link NIMGetInstanceOptions.onUpdateSuperTeam | onUpdateSuperTeam}。
更新超级群成员禁言状态
更新群成员禁言状态后, 所有群成员会收到群通知消息,触发 {@link NIMGetInstanceOptions.onUpdateSuperTeamMembersMute | onUpdateSuperTeamMembersMute}
其 attach 有一个字段 team 值为对应的群对象,account 的值为被禁言的帐号, members 的值为被禁言的群成员列表。
超级群全体禁言
更新群
普通群不可以更新: 群加入方式, 群被邀请模式, 群邀请模式, 群信息修改权限, 群信息自定义字段修改权限
注: 更新群后, 所有群成员会收到群通知,并触发回调 {@link NIMGetInstanceOptions.onUpdateTeam | onUpdateTeam}。
(用户)接受超级群邀请
用户接受入群邀请, 那么该群的所有群成员会收到群通知消息,触发 {@link NIMGetInstanceOptions.onAddSuperTeamMembers | onAddSuperTeamMembers}