KIMCore

class KIMCore

sdk对外接口 主入口

Types

Link copied to clipboard
interface ActiveCallback
Link copied to clipboard
object Companion
Link copied to clipboard
interface ConnectCallback
Link copied to clipboard
Link copied to clipboard

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard
fun active(appId: String, authCode: String, callback: KIMCore.ActiveCallback)
fun active(appId: String, authCode: String, callback: IResultCallback<Boolean>?)

激活

Link copied to clipboard

添加扮演身份会话列表同步监听

Link copied to clipboard

添加盒子状态监听器

Link copied to clipboard

添加群事件监听

Link copied to clipboard

添加群成员事件监听

Link copied to clipboard

分页加载会话列表时,添加会话列表更新监听

Link copied to clipboard

添加会话状态属性监听器

Link copied to clipboard

添加会话列表同步监听

Link copied to clipboard
Link copied to clipboard

注册消息自定义发送流程factory

Link copied to clipboard

若使用了发送自定义媒体消息,需要实现在上传后更新媒体地址 添加自定义媒体上传监听

Link copied to clipboard

添加指定会话消息更新监听器

Link copied to clipboard

添加连接状态监听器

Link copied to clipboard

添加连接状态监听器

Link copied to clipboard

添加草稿变动监听器

Link copied to clipboard

快捷回复变化监听

Link copied to clipboard

消息已读变化监听

Link copied to clipboard

添加接收消息的监听器

Link copied to clipboard
Link copied to clipboard

添加发送消息的全局监听器

Link copied to clipboard

添加发送消息的状态变化的监听器

Link copied to clipboard

获取指定盒子类型的未读总数 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

Link copied to clipboard

取消发送媒体消息

Link copied to clipboard
fun cancelUploadMedia(uploadId: String, callback: IOperationCallback?)

取消上传

Link copied to clipboard

获取会话未读总数 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用 盒子类型里面的会话未读数,不算在内

获取指定会话类型的未读总数 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

Link copied to clipboard
fun clearBoxUnread(boxType: Int, callback: IResultCallback<Boolean>?)

清除盒子未读数

Link copied to clipboard
fun clearChatUnread(chatId: String, callback: IResultCallback<Boolean>?)

清除指定会话的未读数

Link copied to clipboard

清除指定会话的未读数

Link copied to clipboard
fun clearDraft(chatId: String, callback: IResultCallback<Boolean>?)

清理草稿

Link copied to clipboard

连接

Link copied to clipboard

使用kimSid连接服务器

Link copied to clipboard

使用token,开始连接服务器,使用sdk,必须调用的接口

Link copied to clipboard
fun deleteDraft(chatId: String, callback: IResultCallback<Boolean>?)
fun deleteDraft(assumerId: String, chatId: String, callback: IResultCallback<Boolean>?)

清理草稿

Link copied to clipboard

删除本地发送失败的消息

Link copied to clipboard

断开连接,注意:此方法不处理离线推送

Link copied to clipboard
fun findChatNotices(chatId: String, nextOffset: Long, count: Int, isAsc: Boolean, noticesType: List<String>?, callback: IResultCallback<KIMCoreChatNotices>)

查询指定会话强提醒数据 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

Link copied to clipboard
fun findP2PChat(assumerId: String, userId: String, callback: IResultCallback<KIMCoreChat>)

查询单聊会话

Link copied to clipboard

获取缓存中的所有会话列表

Link copied to clipboard
fun getBatchChat(assumerId: String, chatIds: List<String>, callback: IResultCallback<List<KIMCoreChat>>)

批量获取指定会话信息

Link copied to clipboard
fun getBatchMsgs(chatId: String, msgIds: List<String>, callback: IResultCallback<List<KIMCoreMessage>>)

批量查询消息数据

Link copied to clipboard
fun getBoxByType(boxType: Int, callback: IResultCallback<KIMCoreBox>)

获取指定类型的盒子

Link copied to clipboard

从云端获取指定类型的盒子

Link copied to clipboard

获取盒子列表

Link copied to clipboard
fun getChat(chatId: String, callback: IResultCallback<KIMCoreChat>)
fun getChat(assumerId: String, chatId: String, callback: IResultCallback<KIMCoreChat>)

从本地获取指定会话信息 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

Link copied to clipboard
fun getChatDisableMember(chatId: String, offset: Int, count: Int, callback: IResultCallback<List<KIMCoreChatMember>>)

批量获取群被禁言的成员

Link copied to clipboard
fun getChatFromCloud(assumerId: String, chatId: String, callback: IResultCallback<KIMCoreChat>)

从服务器获取指定会话信息 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

Link copied to clipboard

从本地获取会话元信息 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

Link copied to clipboard

从云端获取会话元信息 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

Link copied to clipboard

获取会话列表

fun getChatList(count: Int, timeStamp: Long, callback: IResultCallback<List<KIMCoreChat>>)
fun getChatList(assumerId: String, count: Int, timeStamp: Long, callback: IResultCallback<List<KIMCoreChat>>)

分页获取会话列表

Link copied to clipboard

获取所有会话列表

Link copied to clipboard

获取指定盒子类型的会话列表

Link copied to clipboard

获取指定会话类型列表

Link copied to clipboard
fun getChatListFromCloud(count: Int, nextOffset: Long, isStickied: Boolean, callback: IResultCallback<KIMCoreChats>)

从服务端拉取会话列表 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

Link copied to clipboard

获取群成员 注意,本接口会返回全部的成员数据,如需分页请使用KIMCore.getChatMember

fun getChatMember(chatId: String, callback: IResultCallback<List<KIMCoreChatMember>>, callbackUntilFullFinish: Boolean)

获取群成员(可通过参数callbackUntilFullFinish决定是否一次回调) 注意,本接口会返回全部的成员数据,如需分页请使用KIMCore.getChatMember

fun getChatMember(chatId: String, userId: String, callback: IResultCallback<KIMCoreChatMember>)

获取群成员 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

fun getChatMember(chatId: String, offset: Int, count: Int, callback: IResultCallback<List<KIMCoreChatMember>>)

批量获取群成员 成员总数可以通过KIMCore.getChatMetaInfo来获得

Link copied to clipboard

获取会话元信息 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用 可能会回调两次

Link copied to clipboard
fun getChatNotices(chatId: String, nextOffset: Long, count: Int, order: KIMCoreOrder, noticesType: List<String>?, callback: IResultCallback<KIMCoreChatNotices>)

查询指定会话强提醒数据 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

Link copied to clipboard

获取当前连接状态

Link copied to clipboard
fun getDraft(chatId: String, callback: IResultCallback<String>)
fun getDraft(assumerId: String, chatId: String, callback: IResultCallback<String>)

获取草稿内容

Link copied to clipboard

查询合并消息中的消息列表

Link copied to clipboard
fun getHistoryMessages(chatId: String, lastMsgTime: Long, count: Int)

使用本方法后 通过KIMCore.addMessageUpdateListener 来获取消息

fun getHistoryMessages(chatId: String, lastMsgTime: Long, count: Int, callback: IResultCallback<List<KIMCoreMessage>>)

获取指定会话的历史消息 注意:本方法会返回本地未发送成功的消息,且消息连续

Link copied to clipboard
fun getHistoryMessagesByRange(chatId: String, beginMsgTime: Long, endMsgTime: Long, callback: IResultCallback<List<KIMCoreMessage>>)

获取指定会话, 根据范围获取历史消息 注意:本方法不会返回本地未发送成功的消息,同时保证消息连续

Link copied to clipboard
fun getHistoryMessagesForward(chatId: String, lastMsgTime: Long, count: Int, callback: IResultCallback<List<KIMCoreMessage>>)

获取指定会话的历史消息 注意:本方法会返回本地未发送成功的消息,且消息连续

Link copied to clipboard
fun getHistoryMessagesFromCloud(chatId: String, lastMsgTime: Long, count: Int, callback: IResultCallback<List<KIMCoreMessage>>)

从服务器获取指定会话的历史消息 注意:本方法不会返回本地未发送成功的消息

Link copied to clipboard
fun getHistoryMessagesFromLocal(chatId: String, lastMsgTime: Long, count: Int, callback: IResultCallback<List<KIMCoreMessage>>)

从本地数据库中获取历史消息,注意:消息可能断层

Link copied to clipboard

获取媒体下载地址 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

fun getMediaDownloadUrl(chatId: String, msgId: String, storeKey: String, callback: IResultCallback<String>)

获取媒体下载地址;此方法增加了会话和消息id参数,用于安全管控,需要安全管控的场景,使用此方法; 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

Link copied to clipboard
fun getMessage(chatId: String, msgId: String, callback: IResultCallback<KIMCoreMessage>)

查询单条消息信息

Link copied to clipboard

查询单条消息信息

Link copied to clipboard

获取消息快捷回复中特定回复的回复列表

Link copied to clipboard

获取消息的已读\未读 用户列表 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

Link copied to clipboard

批量查询消息数据

Link copied to clipboard

获取指定设备的消息通知设置 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

Link copied to clipboard
fun getRecentContacts(chatType: Int, offset: Long, hasStickied: Boolean, callback: IResultCallback<KIMCoreContacts>)

获取最近联系人列表 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

Link copied to clipboard
fun getRoleInChat(chatId: String, userId: String, callback: IResultCallback<KIMCoreChatMember>)

查询指定用户在指定群中的角色

Link copied to clipboard
fun init(appKey: String)

初始化appKey,使用sdk,必须调用的接口

Link copied to clipboard

加载一页会话

Link copied to clipboard

通过会话类型集合分页返回会话列表

Link copied to clipboard
fun logout(callback: IResultCallback<Boolean>?)

注意:此接口只能用来清理缓存, 不能用来退登逻辑

Link copied to clipboard

对消息进行快捷回复

Link copied to clipboard
fun noticeUnreadTotalCount(chatTypes: List<Int>, noticeTypes: List<String>, noticeTarget: List<Int>): LiveData<Int>

获取指定强提醒的未读总数 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

Link copied to clipboard
fun recallMessage(msgId: String, chatId: String, callback: IResultCallback<KIMCoreMessage>?)

撤回消息

移除所有自定义透传消息监听器

Link copied to clipboard

删除扮演身份会话列表同步监听

Link copied to clipboard

移除盒子状态监听器

Link copied to clipboard

移除群事件监听

Link copied to clipboard

移除群成员事件监听

Link copied to clipboard

分页加载会话列表时,移除会话列表更新监听

Link copied to clipboard

移除会话状态属性监听器

Link copied to clipboard

删除会话列表同步监听

Link copied to clipboard

若使用了发送自定义媒体消息,需要实现在上传后更新媒体地址 移除自定义媒体上传监听

Link copied to clipboard

移除接收快捷回复的监听器

Link copied to clipboard

移除接收快捷回复的监听器

Link copied to clipboard

移除指定会话消息更新监听器

Link copied to clipboard

移除 发送消息的状态变化的监听器

Link copied to clipboard

移除连接状态监听器

Link copied to clipboard

移除连接状态监听器

Link copied to clipboard

移除草稿变动监听器

Link copied to clipboard

移除接收消息的监听器

Link copied to clipboard

移除 发送消息的全局监听器

Link copied to clipboard

对发送失败的消息进行重新发送 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

Link copied to clipboard
fun sendMedia(message: KIMCoreMessage, file: File, callback: ISendMediaMessageCallback?)

发送媒体消息,包括文件,图片,视频,音频 本方法,会将媒体自动上传到金山协作支持的存储服务商,然后发送消息 注意:如果是发送图片消息,本方法会自动生成缩略图,如果本方法生成的缩略图不符合您的要求, 可以使用this.sendMedia

fun sendMedia(message: KIMCoreMessage, file: File, thumbnail: File?, callback: ISendMediaMessageCallback?)

发送媒体消息,包括文件,图片,视频,音频 本方法,会将媒体自动上传到金山协作支持的存储服务商,然后发送消息 如果是发送图片消息,本方法可以指定缩略图。

Link copied to clipboard

发送消息 目前支持 1、纯文本消息(@人),回复消息 2、图片消息 3、视频消息 4、音频消息 5、图文消息 6、文件消息

Link copied to clipboard
fun sendPicText(message: KIMCoreMessage, files: List<File>, callback: ISendMediaMessageCallback?)

发送图文消息 本方法,会将图片资源上传到金山协作支持的存储服务商,然后发送消息。 如果想使用业务方自己的存储服务商,请使用KIMCore.sendMessage。 注意:如果是发送图片消息,本方法会自动生成缩略图,如果本方法生成的缩略图不符合您的要求, 请使用this.sendPicText

fun sendPicText(message: KIMCoreMessage, files: List<File>, thumbnails: List<File>?, callback: ISendMediaMessageCallback?)

发送图文消息 本方法,会将图片资源上传到金山协作支持的存储服务商,然后发送消息。 如果想使用业务方自己的存储服务商,请使用KIMCore.sendMessage。 注意:本方法可以指定缩略图。

Link copied to clipboard
fun setBoxProps(action: String, boxType: Int, callback: IResultCallback<Boolean>?)

对盒子进行操作,具体操作类型见 Constant.BOX_PROP 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

Link copied to clipboard
fun setChatProps(action: String, chatId: String, callback: IResultCallback<Boolean>?)

对群组进行操作,具体操作类型见 Constant.CHAT_PROP 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

Link copied to clipboard
fun setDraft(chatId: String, draftContent: String, callback: IResultCallback<Boolean>?)
fun setDraft(assumerId: String, chatId: String, draftContent: String, callback: IResultCallback<Boolean>?)

设置草稿

Link copied to clipboard
fun setSid(kimsid: String)
Link copied to clipboard
fun updateCardMessageAction(chatId: String, msgId: String, actions: Map<String, String>, callback: IResultCallback<Boolean>?)

卡片消息动作接口,包括输入框输入,文本选择,日期选择等

Link copied to clipboard
fun updateMsgReadStatus(chatId: String, msgIds: List<String>, callback: IResultCallback<Boolean>?)
fun updateMsgReadStatus(lifecycleOwner: LifecycleOwner?, chatId: String, msgIds: List<String>, callback: IResultCallback<Boolean>?)

更新消息已读状态 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

Link copied to clipboard

用户设备级别消息通知设置 对当前设备生效 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

用户级别消息通知设置 对该账号下所有设备生效 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用

Link copied to clipboard

更新机器人会话盒子状态 注意:请保证状态正确,将直接影响本地机器人会话状态 更新后将通过OnChatSyncServerListener.onPartSus 通知

Link copied to clipboard
fun uploadMedia(file: File, sourceType: String, refreshTime: Int, callback: IMediaUploadCallback?): String?

上传媒体资源 注意:本接口需要等 KIMCore.connectWithToken成功之后才能调用