Protected Optional_StaticTAG添加 Reaction。
Reaction 的内容。
要添加 Reaction 的消息 ID。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
标记会话。
调用该方法会同时为本地和服务器端的会话添加标记。
会话 ID 列表。
要添加的会话标记。请参阅ChatConversationMarkType。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
清除所有会话的未读消息数。
注意
该方法仅清除所有会话在本地的未读消息数,并在多端多设备登录场景下将该操作同步到当前用户的其他设备。 该方法不会为这些会话中的消息发送已读回执。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
清除指定会话的未读消息数。
注意
该方法仅清除会话在本地的未读消息数,并在多端多设备登录场景下将该操作同步到当前用户的其他设备。 该方法不会为会话中的消息发送已读回执。
会话 ID。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
创建子区。
子区所属群组的所有成员均可调用该方法。
子区创建成功后,会出现如下情况:
单设备登录时,子区所属群组的所有成员均会收到 ChatMessageEventListener#onChatMessageThreadCreated 回调。 你可通过设置 ChatMessageEventListener 监听相关事件。
多端多设备登录时,各设备会收到 ChatMultiDeviceEventListener#onThreadEvent 回调。 你可通过设置 ChatMultiDeviceEventListener 监听相关事件。
要创建的子区的名称。长度不超过 64 个字符。
父消息 ID。
父 ID,即群组 ID。
调用成功时,返回创建的子区对象;失败则抛出异常。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
清空所有会话及其消息。
是否删除服务端所有会话及其消息: - true:是。服务端的所有会话及其消息会被清除,当前用户无法再从服务端拉取消息和会话,其他用户不受影响。 - (默认)false:否。只清除本地所有会话及其消息,服务端的会话及其消息仍保留。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
删除指定会话及其本地历史消息。
会话 ID。
删除会话时是否同时删除本地的历史消息。
- (默认)true:删除;
- false:不删除。
会话是否删除成功。
- true:是;
- false: 否。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
从内存和本地数据库中删除会话中的所有消息。
注意 如果会话对象不存在,此方法将创建它。
会话 ID。
会话类型。 请参阅ChatConversationType。
会话是否为子区会话。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
从本地数据库批量删除会话。
要删除的会话 ID 列表。不存在的会话 ID 会被忽略。
是否删除会话中的本地历史消息。
true:是。false:否。如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
从本地数据库中删除一条消息。
注意 如果会话对象不存在,此方法将创建它。
会话 ID。
会话类型。 请参阅ChatConversationType。
要删除的消息的 ID。
会话是否为子区会话。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
删除指定时间戳之前的所有本地消息。
指定的时间戳,单位为毫秒。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
从本地数据库中删除一段时间内发送或接收的消息。
注意 如果会话对象不存在,此方法将创建它。
会话 ID。
会话类型。 请参阅ChatConversationType。
会话是否为子区会话。
参数
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
取消标记会话。
调用该方法会同时为本地和服务器端的会话添加标记。
会话 ID 列表。
要移除的会话标记。请参阅 ChatConversationMarkType。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
解散子区。
只有子区所属群组的群主及管理员可调用该方法。
注意
单设备登录时,子区所属群组的所有成员均会收到 ChatMessageEventListener.onChatMessageThreadDestroyed 回调。 你可通过设置 ChatMessageEventListener 监听子区事件。
多端多设备登录时,设备会收到 ChatMultiDeviceEventListener.onThreadEvent 回调。 你可通过设置 ChatMultiDeviceEventListener 监听子区事件。
子区 ID。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
下载消息附件。
如果附件自动下载失败也可以调用该方法。
需要下载附件的消息ID。
Optionalcallback: ChatMessageStatusCallback
监听消息变化的监听器。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
下载消息附件。
注意 该方法仅用于下载组合类型消息或线程类型的消息附件。
注意 底层不会获取原始消息对象,会使用json转换后的消息对象。
如果附件自动下载失败也可以调用该方法。
需要下载附件的消息ID。
Optionalcallback: ChatMessageStatusCallback
监听消息变化的监听器。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
下载图片消息的大图。
待下载大图的图片消息。
Optionalcallback: ChatMessageStatusCallback
消息状态变化监听器。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
下载消息的缩略图。
要下载缩略图的消息 ID。只有图片消息和视频消息有缩略图。
Optionalcallback: ChatMessageStatusCallback如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
下载消息缩略图。
注意 此方法仅用于下载组合类型消息中的消息缩略图。
要下载缩略图的消息ID。 只有图像消息和视频消息有缩略图。
Optionalcallback: ChatMessageStatusCallback如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
从服务器获取子区详情。
子区 ID。
若调用成功,返回子区详情;失败则抛出异常。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
分页从服务器端获取指定群组的子区列表。
父 ID,即群组 ID。
开始取数据的游标位置。首次获取数据时传 null 或空字符串,按子区创建时间的倒序获取数据。
每页期望返回的子区数。取值范围为 [1,400]。
若调用成功,返回子区列表;失败则抛出异常。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
获取合并类型消息中的原始消息列表。
合并消息包含 1 条或者多条其它类型消息。
合并类型的消息。
消息 body 里面的原始消息列表。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
分页从服务端获取群组消息的已读回执。
有关如何发送群组消息的已读回执,详见 sendMessageReadReceipts。
消息 ID。
群组 ID。
Optionalcursor: string
查询起始的已读回执 ID。如果该参数为 undefined 或空字符串,SDK 按服务端收到已读回执时间的倒序,从最新一条开始获取。
OptionalpageSize: number
每页期望获取的群组消息已读回执数量。
获取到的已读回执列表(不包含起始 ID 对应的回执)以及下次查询的游标,详见 ChatCursorResult。
注意 返回结果中的 totalCount 字段仅在 iOS 平台可用。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
根据消息拉取参数配置从服务器分页获取指定会话的历史消息。
注意 调用该方法,如果会话对象不存在则创建。
会话 ID。
会话类型。详见 ChatConversationType。
Optionalparams: { cursor?: string; options?: ChatFetchMessageOptions; pageSize?: number }
options: 查询历史消息的参数配置类。详见 ChatFetchMessageOptions.
消息列表(不包含查询起始 ID 的消息)和下次查询的 cursor。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
分页从服务器获取当前用户加入的子区列表。
开始获取数据的游标位置。首次调用方法时传 null 或空字符串,按用户加入子区时间的倒序获取数据。
每页期望返回的子区数。取值范围为 [1,400]。
若调用成功,返回子区列表;失败则抛出异常。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
分页从服务器获取当前用户加入指定群组的子区列表。
父 ID,即群组 ID。
开始取数据的游标位置。首次调用方法时传 null 或空字符串,按用户加入子区时间的倒序获取数据。
每页期望返回的子区数。取值范围为 [1,400]。
若调用成功,返回子区列表;失败则抛出异常。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
从服务器批量获取指定子区中的最新一条消息。
要查询的子区 ID 列表,每次最多可传 20 个子区。
若调用成功,返回子区的最新一条消息列表;失败则抛出异常。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
分页获取子区成员。
子区所属群组的所有成员均可调用该方法。
子区 ID。
开始获取数据的游标位置,首次调用方法时传 null 或空字符串,按成员加入子区时间的正序获取数据。
每页期望返回的成员数。取值范围为 [1,400]。
若调用成功,返回子区成员列表;失败则抛出异常。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
从服务端获取指定会话中的置顶消息。
会话 ID。
会话类型。请参阅 ChatConversationType。
会话是否为子区会话。
置顶消息列表。如果没有获取到消息,则返回空列表。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
获取 Reaction 详情。
消息 ID。
Reaction 内容。
Optionalcursor: string
开始获取 Reaction 的游标位置。
OptionalpageSize: number
每页期望返回的 Reaction 数量。
若调用成功,返回 Reaction 详情。若返回 null,则所有数据均获取。
若调用失败,则抛出异常。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
获取 Reaction 列表。
消息 ID 列表。
群组 ID,该参数仅在会话类型为群聊时有效。
会话类型。
若调用成功,返回 Reaction 列表;失败则抛出异常。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
查询翻译服务支持的语言。
翻译服务支持的语言列表。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
获取本地数据库中所有会话。
该方法会先从内存中获取,如果未找到任何会话,从本地数据库获取。
获取的会话。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
根据会话ID和会话类型获取会话。
会话 ID。
会话类型。 请参阅ChatConversationType。
如果没有找到指定的会话,是否创建会话:
true:是。假:否。会话是否为子区会话。
false:否。true:是的。检索到的会话对象。 如果未找到会话,SDK 将返回“null”。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
获取会话的消息数。
注意 如果会话对象不存在,此方法将创建它。
会话 ID。
会话类型。 请参阅ChatConversationType。
会话是否为子区会话。
消息计数。 获取消息计数
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
获取会话未读消息数。
注意 如果会话对象不存在,此方法将创建它。
会话 ID。
会话类型。 请参阅ChatConversationType。
会话是否为子区会话。
未读消息数。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
获取指定用户在一定时间内的会话中发送的消息。
该方法从本地数据库获取数据。
注意 如果会话对象不存在,此方法将创建它。
检索到的消息列表(不包括具有起始时间戳的消息)。如果没有获取到消息,返回空列表。
ChatSearchDirection.UP 按照消息中包含的 Unix 时间戳的降序检索消息。ChatSearchDirection.DOWN 按照消息中包含的 Unix 时间戳的升序检索消息。如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
通过关键字搜索本地消息。
包含会话 ID 和消息 ID 数组的字典。如果未获取到消息,则返回空字典。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
从本地数据库获取群组消息的已读回执。
注意
消息 ID 列表。
消息已读回执列表,详见 ChatMessageReadReceipt。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
获取会话中的最新消息。
注意
该操作不会改变未读消息数。 如果会话对象不存在,此方法会创建该对象。
SDK 首先从内存中获取最新消息。如果未找到消息,SDK 会从本地数据库加载消息并将其放入内存。
会话 ID。
会话类型,详见 ChatConversationType。
是否为子区会话。
消息实例。如果消息不存在,SDK 返回 undefined。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
获取最新收到的会话消息。
注意 如果会话对象不存在,此方法将创建它。
会话 ID。
会话类型。 请参阅ChatConversationType。
会话是否为子区会话。
消息实例。 如果消息不存在,SDK 将返回 undefined。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
从本地数据库获取指定 ID 的消息对象。
消息 ID。
获取的消息对象。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
获取消息数量。
指定时间范围内的消息数量。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError.
获取单条消息的置顶详情。
消息 ID。
消息的置顶详情。若消息不存在或为非置顶状态,返回 undefined。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
通过消息 ID 列表获取本地数据库中的消息。
获取的消息列表。如果未获取到消息,则返回空列表。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
获取本地子区详情。
子区 ID。
若调用成功,返回子区详情;失败则抛出异常。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
从本地数据库中检索会话中指定数量的消息。
检索到的消息也会根据其中包含的时间戳放入内存中的会话中。
注意 如果会话对象不存在,此方法将创建它。
检索到的消息列表(不包括具有起始时间戳的消息)。 如果没有获取到消息,则返回空列表。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
获取所有会话在一定时间内的会话中发送的消息。
该方法从本地数据库获取数据。
注意 如果会话对象不存在,此方法将创建它。
检索到的消息列表(不包括具有起始时间戳的消息)。如果没有获取到消息,返回空列表。
ChatSearchDirection.UP 按照消息中包含的 Unix 时间戳的降序检索消息。ChatSearchDirection.DOWN 按照消息中包含的 Unix 时间戳的升序检索消息。如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
从本地数据库中检索会话中某种类型的消息。
注意 如果会话对象不存在,此方法将创建它。
检索到的消息列表(不包括具有起始时间戳的消息)。 如果没有获取到消息,则返回空列表。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
检索本地数据库中某个会话在一定时间内发送和接收的消息。
注意 如果会话对象不存在,此方法将创建它。
检索到的消息列表(不包括具有开始或结束时间戳的消息)。 如果没有获取到消息,则返回空列表。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
从本地获取指定会话中的置顶消息。
会话 ID。
会话类型。请参阅 ChatConversationType。
会话是否为子区会话。
置顶消息列表。如果没有获取到消息,则返回空列表。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
获取指定消息的 Reaction 列表。
消息 ID。
若调用成功,则返回 Reaction 列表;失败则抛出异常。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
根据指定会话 ID 获取本地子区会话对象。
会话 ID。
未找到会话时是否自动创建该会话:
true: 是;false: 否。子区会话实例。如果未找到会话,SDK 返回空值。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
将消息导入本地数据库。
你只能将你发送或接收的消息导入本地数据库。
要导入的消息列表。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
在本地会话中插入一条消息。
例如,收到一些推送消息后,可以构建消息,写入会话。若该消息已存在(msgId 或 localMsgId 已存在),该插入操作失败。
消息会根据消息里的 Unix 时间戳插入本地数据库,SDK 会更新会话的 latestMessage 等属性。
要插入的消息。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
子区 ID。
若调用成功,返回子区详情 ChatMessageThread;失败则抛出异常。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
退出子区。
子区中的所有成员均可调用该方法。
多设备登录情况下,注意以下几点:
各设备会收到 ChatMultiDeviceEventListener.onThreadEvent 回调。
你可通过设置 ChatMultiDeviceEventListener 监听相关事件。
要退出的子区的 ID。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
更新消息内容。本地和服务器都更新。
ext。注意消息 ID 不能更改。
修改后的消息。详见 ChatMessage。
如果有异常会在此抛出,包含错误码和错误描述,详见 ChatError。
设置会话是否置顶。
会话 ID.
是否置顶会话。
true:置顶;
false: 取消置顶。如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
置顶消息。
消息 ID。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
撤回发送成功的消息。
Optionaloption: { ext?: string }如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
移除所有消息监听器。
删除服务端的指定会话及其历史消息。
会话 ID。
会话类型,详见 ChatConversationType。
删除会话时是否同时删除历史消息。
true:是;false: 否。如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
移除子区成员。
只有子区所属群主、群管理员及子区创建者可调用该方法。
被移出的成员会收到 ChatMessageEventListener.onChatMessageThreadUserRemoved 回调。
你可通过设置 ChatMessageEventListener 监听子区事件。
子区 ID。
被移出子区的成员的用户 ID。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
从会话中删除消息(从本地存储和服务器)。
注意 如果会话对象不存在,此方法将创建它。
会话 ID。
会话类型。
要从当前会话中删除的消息的 ID。
会话是否为子区会话。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
从会话中删除消息(从本地存储和服务器)。
注意 如果会话对象不存在,此方法将创建它。
会话 ID。
会话类型。
消息时间戳(以毫秒为单位)。时间戳小于指定时间戳的消息将被删除。
会话是否为子区会话。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
删除当前用户的本地消息和服务器消息。单聊或群聊中其他用户的服务器消息不受影响,可通过消息漫游获取。
参数集合 -
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError.
删除 Reaction。
要删除的 Reaction。
添加了该 Reaction 的消息 ID。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
重发消息。
需要重发的消息。
消息状态监听器。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
搜索消息。
符合搜索条件的消息列表。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
从服务器端搜索消息。 注意 使用该方法前,你需要在环信控制台开通消息搜索增值服务。
分页搜索结果,按相关性排序。详见 ChatPageResult。
参数集合 -
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
搜索指定会话的消息。
符合搜索条件的消息列表。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError.
要发送的消息,必填。
Optionalcallback: ChatMessageStatusCallback
消息状态监听器。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
向服务器发送消息已读回执。
注意
true,该方法才会生效。要发送已读回执的消息 ID 列表。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
设置会话的扩展信息。
注意 如果会话对象不存在,此方法将创建它。
会话 ID。
会话类型。 请参阅ChatConversationType。
扩展信息。 该参数必须是key-value类型。
会话是否为子区会话。
翻译消息。
要翻译的文本消息。
目标语言。
翻译。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
取消置顶消息。
消息 ID。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
修改子区名称。
只有子区所属群主、群管理员及子区创建者可调用该方法。
子区所属群组的成员会收到 ChatMessageEventListener.onChatMessageThreadUpdated 回调。
你可通过设置 ChatMessageEventListener 监听子区事件。
子区 ID。
子区的新名称。长度不超过 64 个字符。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
更新本地数据库中的消息。
修改消息后,消息 ID 保持不变,SDK 会自动更新会话的属性,如“latestMessage”。
注意 如果会话对象不存在,此方法将创建它。
会话 ID。
会话类型。 请参阅ChatConversationType。
要更新的消息的 ID。
会话是否为子区会话。
如果有异常会在此抛出,包括错误码和错误信息,详见 ChatError。
更新本地消息。
该方法会同时更新本地内存和数据库中的消息。
更新后的消息。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
将语音文件转换为文本。
语音文件的本地路径。
OptionalvoiceParam: ChatVoiceParam
(可选)语音文件的格式信息。详见 ChatVoiceParam。
方法成功时返回由语音文件转换成的文本。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
将语音消息中的语音转换为文本。
待转换的语音消息。
方法成功时返回由语音转换成的文本。
如果有异常会在这里抛出,包含错误码和错误描述,详见 ChatError。
Protected Static_Protected StaticcheckProtected StatichandleOptionalcallback: ChatGroupFileStatusCallbackProtected StatichandleOptionalcallback: ChatMessageStatusCallback
聊天管理类,该类负责收发消息、管理会话(加载,删除等)、下载消息附件等。
发送文文本消息示例如下: