export interface RCIMIWAppSettings { /** * */ speechToTextEnable?: boolean; /** * */ messageModifiableMinutes?: number; /** * */ readReceiptVersion?: RCIMIWGroupReadReceiptVersion; } export interface RCIMIWHarmonyPushOptions { /** * [ZH] * --- * 通知栏右侧图片,格式支持 png、jpg、jpeg、heif、gif、bmp,图片长宽<25000像素,图片不满足要求的情况下,终端不能显示通知消息。 * --- * [EN] * --- * Notification icon (right side). Supports png, jpg, jpeg, heif, gif, bmp. Max pixel area: 25,000. Invalid images won't display. * --- */ imageUrl?: string; /** * [ZH] * --- * 消息自分类标识,默认为空。category 取值必须为大写字母,例如 IM。消息自分类标识,默认为空。category 取值必须为大写字母,例如 IM。 * --- * [EN] * --- * Message self-classification ID (empty by default). Use uppercase letters like IM. * --- */ category?: string; } export interface RCIMIWAndroidPushOptions { /** * [ZH] * --- * Android 平台 Push 唯一标识。 * 目前支持小米、华为推送平台,默认开发者不需要进行设置。 * 当消息产生推送时,消息的 messageUId 作为 notificationId 使用。 * --- * [EN] * --- * The unique identifier for Push on the Android platform. * Currently supports Xiaomi and Huawei push platforms. Developers do not need to configure this by default. * When a message triggers a push notification, the message's messageUId is used as the notificationId. * --- */ notificationId?: string; /** * [ZH] * --- * 小米的渠道 ID * 该条消息针对小米使用的推送渠道。 * --- * [EN] * --- * Xiaomi Channel ID * This message is targeted at the push notification channel used by Xiaomi. * --- */ channelIdMi?: string; /** * [ZH] * --- * 华为的渠道 ID * 该条消息针对华为使用的推送渠道,如开发者集成了华为推送,需要指定 channelId 时,可向 Android 端研发人员获取,channelId 由开发者自行创建。 * --- * [EN] * --- * Huawei Channel ID * This message is specific to the push channel used by Huawei. If you have integrated Huawei Push and need to specify the `channelId`, you can obtain it from the Android development team. The `channelId` is created by the developer. * --- */ channelIdHW?: string; /** * */ categoryHW?: string; /** * [ZH] * --- * OPPO 的渠道 ID。 * 该条消息针对 OPPO 使用的推送渠道,如开发者集成了 OPPO 推送,需要指定 channelId 时,可向 Android 端研发人员获取,channelId 由开发者自行创建。 * --- * [EN] * --- * Channel ID for OPPO. * This message is specific to the push channel used by OPPO. If developers have integrated OPPO push and need to specify the `channelId`, they can obtain it from the Android development team. The `channelId` is created by the developers themselves. * --- */ channelIdOPPO?: string; /** * [ZH] * --- * VIVO 推送通道类型 开发者集成了 VIVO 推送,需要指定推送类型时,可进行设置。 * --- * [EN] * --- * VIVO Push Channel Type * Developers who have integrated VIVO Push can configure the push type when specifying it. * --- */ pushTypeVIVO?: RCIMIWVIVOPushType; /** * [ZH] * --- * FCM 通知类型推送时所使用的分组 id * --- * [EN] * --- * FCM notification group ID used for push notifications * --- */ collapseKeyFCM?: string; /** * [ZH] * --- * FCM 通知类型的推送所使用的通知图片 url * --- * [EN] * --- * The URL of the notification image used for FCM notification-type push notifications. * --- */ imageUrlFCM?: string; /** * [ZH] * --- * 华为推送消息级别 * --- * [EN] * --- * Huawei Push Notification Priority * --- */ importanceHW?: RCIMIWImportanceHW; /** * [ZH] * --- * 华为通知栏消息右侧大图标 URL,如果不设置,则不展示通知栏右侧图标。 * URL使用的协议必须是HTTPS协议,取值样例:https://example.com/image.png。图标文件须小于 512KB,图标建议规格大小:40dp x 40dp,弧角大小为 8dp,超出建议规格大小的图标会存在图片压缩或显示不全的情况。 * --- * [EN] * --- * Huawei notification bar message large icon URL on the right. If not set, the icon on the right side of the notification bar will not be displayed. * The URL must use the HTTPS protocol. Example value: `https://example.com/image.png`. * The icon file must be smaller than 512KB. Recommended icon size: 40dp x 40dp, with rounded corners of 8dp. Icons exceeding the recommended size may be compressed or displayed incompletely. * --- */ imageUrlHW?: string; /** * [ZH] * --- * FCM 通知的频道 ID,该应用程序必须使用此频道 ID 创建一个频道,然后才能收到带有该频道 ID 的任何通知。 * 如果您未在请求中发送此频道 ID,或者如果应用尚未创建提供的频道 ID,则 FCM 使用应用清单中指定的频道 ID。 * --- * [EN] * --- * Channel ID for FCM Notifications * The app must create a channel using this channel ID before it can receive any notifications with this channel ID. * If you do not send this channel ID in the request, or if the app has not yet created the provided channel ID, FCM uses the channel ID specified in the app manifest. * --- */ channelIdFCM?: string; /** * */ categoryVivo?: string; /** * [ZH] * --- * 荣耀推送消息级别 * --- * [EN] * --- * Honor Push Notification Priority * --- */ importanceHonor?: RCIMIWImportanceHonor; /** * [ZH] * --- * 荣耀通知栏消息右侧大图标 URL,如果不设置,则不展示通知栏右侧图标。 * URL使用的协议必须是HTTPS协议,取值样例:https://example.com/image.png。图标文件须小于 512KB,图标建议规格大小:40dp x 40dp,弧角大小为 8dp,超出建议规格大小的图标会存在图片压缩或显示不全的情况。 * --- * [EN] * --- * Notification Bar Message Large Icon URL on the Right (Honor) * If not set, the icon on the right side of the notification bar will not be displayed. * The URL must use the HTTPS protocol. Example value: `https://example.com/image.png`. * The icon file must be smaller than 512KB. Recommended icon size: 40dp x 40dp with a corner radius of 8dp. Icons exceeding the recommended size may be compressed or partially displayed. * --- */ imageUrlHonor?: string; } export interface RCIMIWMessagePushOptions { /** * [ZH] * --- * 是否发送通知 * --- * [EN] * --- * Whether to send a notification * --- */ disableNotification?: boolean; /** * [ZH] * --- * 通知栏是否屏蔽通知标题 * true 不显示通知标题,false 显示通知标题 * 默认情况下融云单聊消息通知标题为用户名、群聊消息为群名称,设置后不会再显示通知标题。 * 此属性只针目标用户为iOS 平台时有效,Android 第三方推送平台的通知标题为必填项,所以暂不支持。 * --- * [EN] * --- * Hide Notification Title in Notification Bar * `true`: Hide the notification title. * `false`: Show the notification title. * By default, RongCloud displays the sender's username as the notification title for one-to-one chat messages and the group name for group chat messages. When this property is enabled, the notification title will no longer be displayed. * Note: This property is only effective for iOS users. For Android, the notification title is a required field for third-party push platforms and is therefore not supported at this time. * --- */ disablePushTitle?: boolean; /** * [ZH] * --- * 推送标题 * 默认标题显示规则:内置消息:单聊通知标题显示为发送者名称,群聊通知标题显示为群名称。 自定义消息:默认不显示标题。 * --- * [EN] * --- * Push Notification Title * Default Title Display Rules: * - Built-in Messages: * - For one-to-one chat, the notification title displays the sender's name. * - For group chat, the notification title displays the group name. * - Custom Messages: * By default, no title is displayed. * --- */ pushTitle?: string; /** * [ZH] * --- * 推送内容。 * --- * [EN] * --- * Push notification content. * --- */ pushContent?: string; /** * [ZH] * --- * 远程推送附加信息. * --- * [EN] * --- * Remote Notification Additional Information. * --- */ pushData?: string; /** * [ZH] * --- * 是否强制显示通知详情。 当目标用户设置推送不显示消息详情时, 可通过此功能,强制设置该条消息显示推送详情。 * --- * [EN] * --- * Whether to force the display of notification details. When the target user has set push notifications to hide message details, this function can be used to forcibly set the push notification details to be displayed for this message. * --- */ forceShowDetailContent?: boolean; /** * [ZH] * --- * 推送模板 ID * 设置后根据目标用户通过 setPushLanguageCode 设置的语言环境,匹配模板中设置的语言内容进行推送 * 未匹配成功时使用默认内容进行推送,模板内容在“开发者后台-自定义推送文案”中进行设置 注:RCMessagePushConfig 中的 Title 和 PushContent * 优先级高于模板 ID(templateId)中对应的标题和推送内容 * --- * [EN] * --- * Push Template ID * After setting the push template ID, the system will match the language content configured in the template based on the locale set by the target user through `setPushLanguageCode`. If no match is found, the default content will be used for the push. The template content can be configured in the "Developer Console - Custom Push Copywriting" section. * Note: The `Title` and `PushContent` in `RCMessagePushConfig` take precedence over the corresponding title and push content in the `templateId`. * --- */ templateId?: string; /** * [ZH] * --- * 如果对端设备是 iOS,设置 isVoIPPush 为 True,会走 VoIP 通道推送 Push。 * --- * [EN] * --- * If the peer device is iOS, setting `isVoIPPush` to `True` will route the push notification through the VoIP channel. * --- */ voIPPush?: boolean; /** * [ZH] * --- * iOS 平台相关配置 * --- * [EN] * --- * iOS Platform Configuration * --- */ iOSPushOptions?: RCIMIWIOSPushOptions; /** * [ZH] * --- * Android 平台相关配置 * --- * [EN] * --- * Android Platform Configuration * --- */ androidPushOptions?: RCIMIWAndroidPushOptions; /** * [ZH] * --- * 鸿蒙推送配置 * --- * [EN] * --- * HarmonyOS push notification setup * --- */ harmonyPushOptions?: RCIMIWHarmonyPushOptions; } export interface RCIMIWIOSPushOptions { /** * [ZH] * --- * iOS 平台通知栏分组 ID 相同的 thread-id 推送分为一组 iOS10 开始支持 * --- * [EN] * --- * iOS platform notification grouping: Push notifications with the same thread-id are grouped together. Supported starting from iOS 10. * --- */ threadId?: string; /** * [ZH] * --- * iOS 富文本推送的类型开发者自己定义,自己在 App 端进行解析判断,与 richMediaUri 一起使用,当设置 category 后,推送时默认携带 mutable-content 进行推送,属性值为 1。 * 如果不设置后台默认取消息类型字符串,如RC:TxtMsg * --- * [EN] * --- * The type of rich text push notifications in iOS is defined by the developer and parsed and judged on the App side. It is used together with `richMediaUri`. When `category` is set, the push notification will carry `mutable-content` by default with a property value of 1. * If not set, the background will default to the message type string, such as `RC:TxtMsg`. * --- */ category?: string; /** * [ZH] * --- * iOS 平台通知覆盖 ID apnsCollapseId 相同时,新收到的通知会覆盖老的通知,最大 64 字节 iOS10 开始支持 * --- * [EN] * --- * When the apnsCollapseId for iOS platform notifications is the same, newly received notifications will replace the old ones. The maximum length is 64 bytes, supported starting from iOS 10. * --- */ apnsCollapseId?: string; /** * [ZH] * --- * iOS 富文本推送内容的 URL,与 category 一起使用。 * --- * [EN] * --- * The URL for iOS rich text push notification content, used in conjunction with the category. * --- */ richMediaUri?: string; /** * [ZH] * --- * iOS 推送级别。默认值 "active"。 * "passive" 被动通知:即并不需要及时关注的通知,类似餐馆推荐通知。 * "active" 主动通知(默认的):默认的通知,即人们可能想知道的,类似最喜欢的体育比赛的最新比分。 * "time-sensitive" 时效性通知:需要人们立刻注意的通知,类似账户安全问题或快递动态。 * "critical" 重要通知:关于个人健康或直接影响到设备拥有者的公共安全事件且需要立刻关注的,这类通知很少,一般是来自公共政府机构或健康 App。 * --- * [EN] * --- * iOS push notification levels. Default: "active". * "passive" Not urgent, like restaurant recommendations * "active" (default) Regular alerts, like sports scores * "time-sensitive" Requires immediate attention, like security alerts * "critical" Health/safety emergencies from official sources * --- */ interruptionLevel?: string; } export interface RCIMIWCompressOptions { /** * [ZH] * --- * 原图压缩比 * --- * [EN] * --- * Original Image Compression Ratio * --- */ originalImageQuality?: number; /** * [ZH] * --- * 原图最长边的最大宽度 * --- * [EN] * --- * Maximum width of the longest side of the original image * --- */ originalImageSize?: number; /** * [ZH] * --- * 原图大小限制 配置发送图片时,如果图片大小不超过则发送原图 * --- * [EN] * --- * Original Image Size Limit * When sending an image, if the image size does not exceed the limit, the original image will be sent. * --- */ originalImageMaxSize?: number; /** * [ZH] * --- * 缩略图压缩比例 * --- * [EN] * --- * Thumbnail Compression Ratio * --- */ thumbnailQuality?: number; /** * [ZH] * --- * 缩略图压缩宽、高 * --- * [EN] * --- * Thumbnail compression width and height * --- */ thumbnailMaxSize?: number; /** * [ZH] * --- * 缩略图压缩最小宽、高 * --- * [EN] * --- * Thumbnail compression minimum width and height * --- */ thumbnailMinSize?: number; /** * [ZH] * --- * 小视频压缩宽度,建议使用16的倍数 * --- * [EN] * --- * Video compression width, recommended to use multiples of 16. * --- */ sightCompressWidth?: number; /** * [ZH] * --- * 小视频压缩高度,建议使用16的倍数 * --- * [EN] * --- * Short video compression height, recommended to use multiples of 16. * --- */ sightCompressHeight?: number; /** * [ZH] * --- * 位置消息缩略图压缩比例 * --- * [EN] * --- * Thumbnail Compression Ratio for Location Messages * --- */ locationThumbnailQuality?: number; /** * [ZH] * --- * 位置消息压缩的宽度 * --- * [EN] * --- * Width of the compressed location message * --- */ locationThumbnailWidth?: number; /** * [ZH] * --- * 位置消息压缩的高度 * --- * [EN] * --- * Height of the location message compression * --- */ locationThumbnailHeight?: number; } export interface RCIMIWEngineOptions { /** * [ZH] * --- * 私有部署的导航服务器地址。 * --- * [EN] * --- * Private deployment navigation server address. * --- */ naviServer?: string; /** * [ZH] * --- * 私有部署的媒体服务器地址,即文件和图片的上传地址。使用私有云时必须填写。 * --- * [EN] * --- * The media server address for private deployment, which is the upload address for files and images. This field is mandatory when using a private cloud. * --- */ fileServer?: string; /** * [ZH] * --- * 配置数据上传地址 * --- * [EN] * --- * Configure Data Upload URL * --- */ statisticServer?: string; /** * [ZH] * --- * 配置日志上传地址 * --- * [EN] * --- * Set log upload URL * --- */ logServer?: string; /** * [ZH] * --- * 配置云控服务器地址 * --- * [EN] * --- * Configure cloud control server address * --- */ cloudControlServer?: string; /** * [ZH] * --- * 数据中心区域码 * --- * [EN] * --- * Data Center Area Code * --- */ areaCode?: RCIMIWAreaCode; /** * [ZH] * --- * 网络环境标识 * 标识客户端所在当前网络环境,例如 intranet 内网,private 专网。如果不配置,使用对应于的默认环境配置 * --- * [EN] * --- * Network environment identifier * Shows client's current network (e.g., intranet, private). Uses default config if not set * --- */ environment?: string; /** * [ZH] * --- * 设置断线重连时是否踢出重连设备。 * 用户没有开通多设备登录功能的前提下,同一个账号在一台新设备上登录的时候,会把这个账号在之前登录的设备上踢出。 * --- * [EN] * --- * Set whether to kick out the reconnecting device during reconnection. * When a user has not enabled the multi-device login feature, if the same account logs in on a new device, the account will be kicked out from the previously logged-in device. * --- */ kickReconnectDevice?: boolean; /** * [ZH] * --- * 压缩项配置 * --- * [EN] * --- * Compression Configuration * --- */ compressOptions?: RCIMIWCompressOptions; /** * [ZH] * --- * 日志级别 * --- * [EN] * --- * Log Level * --- */ logLevel?: RCIMIWLogLevel; /** * Android 推送参数配置 */ pushOptions?: RCIMIWPushOptions; /** * Android 推送总开关 */ enablePush?: boolean; /** * 是否开启单进程 */ enableIPC?: boolean; } export interface RCIMIWMessageAuditInfo { /** * [ZH] * --- * 是否送审,消息回调是否送给三方审核 * --- * [EN] * --- * Send for review? Route callbacks to third-party audit * --- */ auditType?: RCIMIWMessageAuditType; /** * [ZH] * --- * 项目名称 默认为 空字符串 * --- * [EN] * --- * Project name defaults to empty string * --- */ project?: string; /** * [ZH] * --- * 审核策略 * --- * [EN] * --- * Audit policy * --- */ strategy?: string; } export interface RCIMIWUnknownMessage extends RCIMIWMessage { /** * [ZH] * --- * 消息数据 * --- * [EN] * --- * Message Data * --- */ rawData?: string; /** * [ZH] * --- * 消息的标识 * --- * [EN] * --- * Message Identifier * --- */ objectName?: string; } export interface RCIMIWUserInfo { /** * [ZH] * --- * 用户 id。 * --- * [EN] * --- * User ID. * --- */ userId?: string; /** * [ZH] * --- * 名称(昵称)。 * --- * [EN] * --- * Name (Nickname). * --- */ name?: string; /** * [ZH] * --- * 用户头像地址。 * --- * [EN] * --- * User avatar URL. * --- */ portrait?: string; /** * [ZH] * --- * 备注 * --- * [EN] * --- * Note * --- */ alias?: string; /** * [ZH] * --- * 附加信息。 * --- * [EN] * --- * Additional Information. * --- */ extra?: string; } export interface RCIMIWCustomMessage extends RCIMIWMessage { /** * [ZH] * --- * 自定义消息的标识符 * --- * [EN] * --- * Custom message identifier * --- */ identifier?: string; /** * [ZH] * --- * 自定义的消息存储策略 * --- * [EN] * --- * Custom Message Storage Strategy * --- */ policy?: RCIMIWCustomMessagePolicy; /** * [ZH] * --- * 自定义消息的键值对 * --- * [EN] * --- * Custom message key-value pairs * --- */ fields?: { [propName: string]: string; }; } export interface RCIMIWNativeCustomMessage extends RCIMIWMessage { /** * [ZH] * --- * 自定义消息的内容 * --- * [EN] * --- * Custom Message Content *

* --- */ fields?: { [propName: string]: Object; }; /** * [ZH] * --- * 自定义消息的搜索关键字 * --- * [EN] * --- * Custom Message Search Keywords *

* --- */ searchableWords?: Array; /** * [ZH] * --- * 自定义消息的唯一标识 * --- * [EN] * --- * Custom Message Unique Identifier *

* --- */ messageIdentifier?: string; } export interface RCIMIWInformationNotificationMessage extends RCIMIWMessage { /** * [ZH] * --- * 通知的内容 * --- * [EN] * --- * Notification content * --- */ message?: string; } export interface RCIMIWMessage { /** * [ZH] * --- * 会话类型 * --- * [EN] * --- * Conversation Type * --- */ conversationType?: RCIMIWConversationType; /** * [ZH] * --- * 消息的类型 * --- * [EN] * --- * ### Message Type * --- */ messageType?: RCIMIWMessageType; /** * [ZH] * --- * 会话 ID * --- * [EN] * --- * Conversation ID * --- */ targetId?: string; /** * [ZH] * --- * 所属会话的业务标识,长度限制 20 字符 * --- * [EN] * --- * Business identifier of the associated conversation, with a length limit of 20 characters. * --- */ channelId?: string; /** * [ZH] * --- * 本地数据库中存储的消息的唯一 ID 值。发送新消息时无需指定该 ID,否则会导致消息入库失败。在失败重发消息时,可以填入已入库的消息的 ID,请确保使用上一次发送失败的消息实例。 * --- * [EN] * --- * The unique ID value of the message stored in the local database. This ID does not need to be specified when sending a new message; otherwise, it will cause the message to fail to be stored in the database. When retrying a failed message, you can fill in the ID of the message that has already been stored. Ensure that you use the message instance from the previous failed attempt. * --- */ messageId?: number; /** * [ZH] * --- * 服务器消息唯一 ID(在同一个 Appkey 下全局唯一) * --- * [EN] * --- * Server message unique ID (globally unique within the same Appkey) * --- */ messageUId?: string; /** * [ZH] * --- * 是否是离线消息,只在接收消息的回调方法中有效,如果消息为离线消息,则为 YES ,其他情况均为 NO * --- * [EN] * --- * Indicates whether the message is an offline message. This is only valid in the message received callback method. If the message is an offline message, the value is YES; otherwise, it is NO. * --- */ offLine?: boolean; /** * [ZH] * --- * 群阅读回执状态 * --- * [EN] * --- * Group Read Receipt Status * --- */ groupReadReceiptInfo?: RCIMIWGroupReadReceiptInfo; /** * [ZH] * --- * 消息的接收时间(Unix 时间戳、毫秒) * --- * [EN] * --- * Message received time (Unix timestamp in milliseconds) * --- */ receivedTime?: number; /** * [ZH] * --- * 消息的发送时间(Unix 时间戳、毫秒) * --- * [EN] * --- * Message sending time (Unix timestamp, milliseconds) * --- */ sentTime?: number; /** * [ZH] * --- * 设置焚烧时间,默认是 0,0 代表该消息非阅后即焚消息。若此值大于 0,则消息为已读状态后,经过 destructDuration 时间后销毁。 * --- * [EN] * --- * Set self-destruct timer (default: 0). 0 means no auto-deletion. If >0, message destroys after being read for destructDuration. * --- */ destructDuration?: number; /** * [ZH] * --- * 消息的接收状态,只能为单一某个状态 * --- * [EN] * --- * Message Receipt Status * --- */ receivedStatus?: RCIMIWReceivedStatus; /** * [ZH] * --- * 消息的接收状态,可同时设为已读、已听、已下载、已收取 * --- * [EN] * --- * Message receipt status—set as read, listened, downloaded, or received * --- */ receivedStatusInfo?: RCIMIWReceivedStatusInfo; /** * [ZH] * --- * 消息的发送状态 * --- * [EN] * --- * Message Sending Status * --- */ sentStatus?: RCIMIWSentStatus; /** * [ZH] * --- * 消息的发送者 ID * --- * [EN] * --- * The sender ID of the message. * --- */ senderUserId?: string; /** * [ZH] * --- * 消息的方向 * --- * [EN] * --- * Message Direction * --- */ direction?: RCIMIWMessageDirection; /** * [ZH] * --- * 消息携带的用户信息 * --- * [EN] * --- * Message-bearing User Information * --- */ userInfo?: RCIMIWUserInfo; /** * [ZH] * --- * 消息的 @ 信息 * --- * [EN] * --- * Message @ Information * --- */ mentionedInfo?: RCIMIWMentionedInfo; /** * [ZH] * --- * 消息推送配置 * --- * [EN] * --- * Message Push Configuration * --- */ pushOptions?: RCIMIWMessagePushOptions; /** * [ZH] * --- * 消息的附加字段,可以随着消息发送给远端 * --- * [EN] * --- * Message Additional Fields * --- */ extra?: string; /** * [ZH] * --- * 消息的本地扩展字段,不会随着消息发送给远端,只会保存在本地数据库中 * --- * [EN] * --- * Local message extensions, stored only in local database without being sent to remote * --- */ localExtra?: string; /** * [ZH] * --- * 消息扩展信息,发消息前设置该属性可打开消息扩展功能,否则无法使用消息扩展功能。 * 发送成功后需使用 `updateMessageExpansion` 接口更新扩展信息。 * 消息扩展 key 长度不超过 32 ,value 长度不超过 4096 ,单次设置扩展数量最大为 20,消息的扩展总数不能超过 300 * *注*: 扩展信息只支持单聊和群组,其它会话类型不能设置扩展信息 * --- * [EN] * --- * Message expansion information. Set this property before sending a message to enable the message expansion feature; otherwise, the message expansion feature cannot be used. * After sending a message successfully, use the `updateMessageExpansion` interface to update the expansion information. * Message extension key length should not exceed 32 characters, and value length should not exceed 4096 characters. The maximum number of extensions that can be set at one time is 20, and the total number of extensions for a message cannot exceed 300." * *Note*: Extension information is only supported for private chats and groups; extension information cannot be set for other conversation types. * --- */ expansion?: { [propName: string]: string; }; /** * [ZH] * --- * 消息是否可以包含扩展消息。 * --- * [EN] * --- * Can messages include Extended Information * --- */ canIncludeExpansion?: boolean; /** * [ZH] * --- * 消息送审配置 * --- * [EN] * --- * Message review settings * --- */ auditInfo?: RCIMIWMessageAuditInfo; /** * [ZH] * --- * 定向用户列表,单聊会话类型返回空 * --- * [EN] * --- * Target user list (returns empty for one-to-one chat type) * --- */ directedUserIds?: Array; /** * [ZH] * --- * 是否需要已读回执,发送消息时设置为 true 表示支持已读 V5 * --- * [EN] * --- * Whether the message needs read receipt, set to true when sending to support read receipt V5 * --- */ needReceipt?: boolean; /** * [ZH] * --- * 是否已发送过已读回执,SDK 内部赋值 * --- * [EN] * --- * Whether the read receipt has been sent, assigned internally by SDK * --- */ sentReceipt?: boolean; } export interface RCIMIWNativeCustomMediaMessage extends RCIMIWMediaMessage { /** * [ZH] * --- * 自定义消息的内容 * --- * [EN] * --- * Custom Message Content * --- */ fields?: { [propName: string]: Object; }; /** * [ZH] * --- * 自定义消息的搜索关键字 * --- * [EN] * --- * Custom Message Search Keywords * --- */ searchableWords?: Array; /** * [ZH] * --- * 自定义消息的唯一标识 * --- * [EN] * --- * Unique identifier for custom messages * --- */ messageIdentifier?: string; } export interface RCIMIWReceivedStatusInfo { /** * [ZH] * --- * 获取是否已读取的状态。 * --- * [EN] * --- * Get read status * --- */ read?: boolean; /** * [ZH] * --- * 获取是否已被收听的状态。 * --- * [EN] * --- * Check if already listened * --- */ listened?: boolean; /** * [ZH] * --- * 获取文件是否已经下载的状态。 * --- * [EN] * --- * Check if file is downloaded * --- */ downloaded?: boolean; /** * [ZH] * --- * 获取消息是否已经被收取过。该消息已被同时在线或之前登录的其他设备接收。只要任何其他设备先收到该消息,当前设备该状态值就会为 true。 * --- * [EN] * --- * Checks if the message was already received by another device. True if any other online or previously logged-in device got it first. * --- */ retrieved?: boolean; } export interface RCIMIWImageMessage extends RCIMIWMediaMessage { /** * [ZH] * --- * 图片的缩略图数据 * --- * [EN] * --- * The thumbnail data of the image. * --- */ thumbnailBase64String?: string; /** * [ZH] * --- * 是否为原图 * --- * [EN] * --- * Is it the original image? * --- */ original?: boolean; /** * [ZH] * --- * 缩略图宽度 * --- * [EN] * --- * Thumbnail width * --- */ thumWidth?: number; /** * [ZH] * --- * 缩略图高度 * --- * [EN] * --- * Thumbnail height * --- */ thumHeight?: number; } export interface RCIMIWFileMessage extends RCIMIWMediaMessage { /** * [ZH] * --- * 文件名 * --- * [EN] * --- * File Name * --- */ name?: string; /** * [ZH] * --- * 文件类型 * --- * [EN] * --- * File Type * --- */ fileType?: string; /** * [ZH] * --- * 文件大小,单位为 Byte * --- * [EN] * --- * File size, in bytes. * --- */ size?: number; } export interface RCIMIWReferenceInfo { /** * */ senderId?: string; /** * */ messageUId?: string; /** * */ objectName?: string; /** * */ content?: RCIMIWMessage; } export interface RCIMIWRecallNotificationMessage extends RCIMIWMessage { /** * [ZH] * --- * 是否是管理员操作 * --- * [EN] * --- * Whether it is an administrator operation * --- */ admin?: boolean; /** * [ZH] * --- * 是否删除 * --- * [EN] * --- * Delete? * --- */ deleted?: boolean; /** * [ZH] * --- * 被撤回的原始消息的发送时间(毫秒) * --- * [EN] * --- * The send time of the original message that was recalled (in milliseconds) * --- */ recallTime?: number; /** * [ZH] * --- * 撤回动作的时间(毫秒) * --- * [EN] * --- * Withdrawal action time (milliseconds) * --- */ recallActionTime?: number; /** * [ZH] * --- * 撤回操作者的用户 ID * --- * [EN] * --- * User ID of the operator who revoked * --- */ operatorId?: string; /** * [ZH] * --- * 被撤回的原消息 * --- * [EN] * --- * The original message that was recalled * --- */ originalMessage?: RCIMIWMessage; } export interface RCIMIWMediaMessage extends RCIMIWMessage { /** * [ZH] * --- * 本地路径 * --- * [EN] * --- * Local Path * --- */ local?: string; /** * [ZH] * --- * 远端路径 * --- * [EN] * --- * Remote Path * --- */ remote?: string; } export interface RCIMIWTextMessage extends RCIMIWMessage { /** * [ZH] * --- * 文本内容 * --- * [EN] * --- * Text content * --- */ text?: string; } export interface RCIMIWGIFMessage extends RCIMIWMediaMessage { /** * [ZH] * --- * GIF 图的大小,单位字节 * --- * [EN] * --- * Size of the GIF image in bytes * --- */ dataSize?: number; /** * [ZH] * --- * GIF 图的宽 * --- * [EN] * --- * Width of the GIF image * --- */ width?: number; /** * [ZH] * --- * GIF 图的高 * --- * [EN] * --- * GIF height * --- */ height?: number; } export interface RCIMIWCommandMessage extends RCIMIWMessage { /** * [ZH] * --- * 命令的名称 * --- * [EN] * --- * Command Name * --- */ name?: string; /** * [ZH] * --- * 命令的扩展数据,可以为任意字符串,如存放您定义的json数据。 * --- * [EN] * --- * The extension data of the command, which can be any string, such as storing your custom JSON data. * --- */ data?: string; } export interface RCIMIWVoiceMessage extends RCIMIWMediaMessage { /** * [ZH] * --- * 语音的长度,单位:秒 * --- * [EN] * --- * The duration of the voice message, in seconds. * --- */ duration?: number; /** * */ numberOfChannels?: number; /** * */ sampleRate?: number; /** * */ format?: string; } export interface RCIMIWMentionedInfo { /** * [ZH] * --- * @ 提醒的类型 * --- * [EN] * --- * @ Reminder Type * --- */ type?: RCIMIWMentionedType; /** * [ZH] * --- * @ 的用户 ID 列表 * --- * [EN] * --- * @User ID List * --- */ userIdList?: Array; /** * [ZH] * --- * 包含 @ 提醒的消息,本地通知和远程推送显示的内容 * --- * [EN] * --- * Messages containing @ mentions, content displayed in local notifications and remote push notifications. * --- */ mentionedContent?: string; } export interface RCIMIWCommandNotificationMessage extends RCIMIWMessage { /** * [ZH] * --- * 命令提醒的名称 * --- * [EN] * --- * Command Reminder Name * --- */ name?: string; /** * [ZH] * --- * 命令提醒消息的扩展数据,可以为任意字符串,如存放您定义的 json 数据。 * --- * [EN] * --- * The extension data for the command reminder message, which can be any string, such as JSON data defined by you. * --- */ data?: string; } export interface RCIMIWSightMessage extends RCIMIWMediaMessage { /** * [ZH] * --- * 视频时长 * --- * [EN] * --- * Video Duration * --- */ duration?: number; /** * [ZH] * --- * 视频大小 * --- * [EN] * --- * Video Size * --- */ size?: number; /** * [ZH] * --- * 视频的名称 * --- * [EN] * --- * Video Name * --- */ name?: string; /** * [ZH] * --- * 缩略图数据 * --- * [EN] * --- * Thumbnail data * --- */ thumbnailBase64String?: string; } export interface RCIMIWLocationMessage extends RCIMIWMessage { /** * [ZH] * --- * 经度信息 * --- * [EN] * --- * Longitude Information * --- */ longitude?: number; /** * [ZH] * --- * 纬度信息 * --- * [EN] * --- * Latitude Information * --- */ latitude?: number; /** * [ZH] * --- * POI 信息 * --- * [EN] * --- * POI Information * --- */ poiName?: string; /** * [ZH] * --- * 缩略图地址 * --- * [EN] * --- * Thumbnail URL * --- */ thumbnailPath?: string; } export interface RCIMIWGroupNotificationMessage extends RCIMIWMessage { /** * */ operation?: string; /** * */ operatorUserId?: string; /** * */ data?: string; /** * */ message?: string; } export interface RCIMIWReferenceMessage extends RCIMIWMessage { /** * [ZH] * --- * 引用文本 * --- * [EN] * --- * Reference text * --- */ text?: string; /** * [ZH] * --- * 被引用的消息 * --- * [EN] * --- * Referenced Message * --- */ referenceMessage?: RCIMIWMessage; } export interface RCIMIWPagingQueryResult { /** * */ pageToken?: string; /** * */ totalCount?: number; /** * */ data?: Array; } export interface RCIMIWPagingQueryOption { /** * [ZH] * --- * 当前页数标识,表示当前查询到的位置。 * --- * [EN] * --- * Current page indicator showing query position * --- */ pageToken?: string; /** * [ZH] * --- * 每页条数。 * --- * [EN] * --- * Items per page * --- */ count?: number; /** * [ZH] * --- * 排序类型:支持设置正序、倒序获取。true:正序;false:倒序。默认值为false,倒序返回。 * --- * [EN] * --- * Sort order: ascending (true) or descending (false). Defaults to descending. * --- */ order?: boolean; } export interface RCIMIWBlockedMessageInfo { /** * [ZH] * --- * 封禁的会话类型 * --- * [EN] * --- * Banned Conversation Types * --- */ conversationType?: RCIMIWConversationType; /** * [ZH] * --- * 封禁的会话 ID * --- * [EN] * --- * Banned conversation ID * --- */ targetId?: string; /** * [ZH] * --- * 封禁的消息 Uid * --- * [EN] * --- * Banned Message UID * --- */ blockedMsgUId?: string; /** * [ZH] * --- * 封禁的类型 * --- * [EN] * --- * Ban Type * --- */ blockType?: RCIMIWMessageBlockType; /** * [ZH] * --- * 封禁的附加信息 * --- * [EN] * --- * Additional Information for Banning * --- */ extra?: string; } export interface RCIMIWTypingStatus { /** * [ZH] * --- * 当前正在输入的用户 ID * --- * [EN] * --- * The ID of the user currently typing. * --- */ userId?: string; /** * [ZH] * --- * 当前正在输入的消息类型名,为发送方调用发送接口时传入的 currentType * --- * [EN] * --- * The type name of the message currently being entered, which is the `currentType` passed by the sender when calling the send interface. * --- */ contentType?: string; /** * [ZH] * --- * 输入时间 * --- * [EN] * --- * Input Time * --- */ sentTime?: number; } export interface RCIMIWUltraGroupTypingStatusInfo { /** * [ZH] * --- * 会话 ID * --- * [EN] * --- * Conversation ID * --- */ targetId?: string; /** * [ZH] * --- * 所属会话的业务标识 * --- * [EN] * --- * The business identifier of the associated conversation. * --- */ channelId?: string; /** * [ZH] * --- * 用户id * --- * [EN] * --- * User ID * --- */ userId?: string; /** * [ZH] * --- * 用户数 * --- * [EN] * --- * User Count * --- */ userNums?: number; /** * [ZH] * --- * 输入状态 * --- * [EN] * --- * Input Status * --- */ status?: RCIMIWUltraGroupTypingStatus; /** * [ZH] * --- * 服务端收到用户操作的上行时间 * --- * [EN] * --- * The server receives the uplink timestamp of user operations. * --- */ timestamp?: number; } export interface RCIMIWGroupReadReceiptInfo { /** * [ZH] * --- * 是否为需要回执的消息。 true: 需要回执的消息。 false: 普通消息。 * --- * [EN] * --- * Indicates whether the message requires a receipt. true: The message requires a receipt. false: A regular message. * --- */ readReceiptMessage?: boolean; /** * [ZH] * --- * 是否发送过消息回执响应。 仅对消息接收方有效。 * --- * [EN] * --- * Indicates whether a message receipt response has been sent. This is only valid for the message receiver. * --- */ hasRespond?: boolean; /** * [ZH] * --- * 会话中响应过该消息回执的成员 userId 列表。 key: userId value: respondTime * --- * [EN] * --- * List of user IDs of members who have responded to the message receipt in the conversation. key: userId value: respondTime * --- */ respondUserIds?: { [propName: string]: number; }; } export interface RCIMIWChatRoomMemberBanEvent { /** * */ chatroomId?: string; /** * */ banType?: RCIMIWChatRoomMemberBanType; /** * */ durationTime?: number; /** * */ operateTime?: number; /** * */ userIdList?: Array; /** * */ extra?: string; } export interface RCIMIWChatRoomSyncEvent { /** * */ chatroomId?: string; /** * */ status?: RCIMIWChatRoomSyncStatus; /** * */ reason?: RCIMIWChatRoomSyncStatusReason; /** * */ time?: number; /** * */ extra?: string; } export interface RCIMIWChatRoomMemberAction { /** * [ZH] * --- * 操作的用户 * --- * [EN] * --- * The user performing the operation * --- */ userId?: string; /** * [ZH] * --- * 事件类型 * --- * [EN] * --- * Event Type * --- */ actionType?: RCIMIWChatRoomMemberActionType; } export interface RCIMIWChatRoomMemberBlockEvent { /** * */ chatroomId?: string; /** * */ operateType?: RCIMIWChatRoomMemberOperateType; /** * */ durationTime?: number; /** * */ operateTime?: number; /** * */ userIdList?: Array; /** * */ extra?: string; } export interface RCIMIWConversationTagInfo { /** * [ZH] * --- * 会话标签信息 * --- * [EN] * --- * Conversation Tag Information * --- */ tagInfo?: RCIMIWTagInfo; /** * [ZH] * --- * 是否置顶 * --- * [EN] * --- * Pin to Top * --- */ top?: boolean; } export interface RCIMIWSearchConversationResult { /** * [ZH] * --- * 获取会话的实体,用来容纳和存储客户端的会话信息,对应会话列表中的会话。 * --- * [EN] * --- * Retrieves the conversation entity, which is used to contain and store client-side conversation information, corresponding to the conversation in the conversation list. * --- */ conversation?: RCIMIWConversation; /** * [ZH] * --- * 获取会话匹配的消息数量 * --- * [EN] * --- * Retrieve the number of messages matching the conversation * --- */ count?: number; } export interface RCIMIWTagInfo { /** * [ZH] * --- * 获取标签 ID * --- * [EN] * --- * Get Tag ID * --- */ tagId?: string; /** * [ZH] * --- * 获取标签名 * --- * [EN] * --- * Get Tag Name * --- */ tagName?: string; /** * [ZH] * --- * 获取数量 * --- * [EN] * --- * Get Count * --- */ count?: number; /** * [ZH] * --- * 获取时间戳 * --- * [EN] * --- * Get Timestamp * --- */ timestamp?: number; } export interface RCIMIWConversation { /** * [ZH] * --- * 获取会话类型 * --- * [EN] * --- * Retrieve Conversation Type * --- */ conversationType?: RCIMIWConversationType; /** * [ZH] * --- * 会话 ID,单聊时为接收方 ID,群组会话中为群组 ID,聊天室会话中为聊天室 ID,系统会话为开发者指定的系统账号 Id * --- * [EN] * --- * Conversation ID. For one-to-one chats, it is the recipient ID; for group chats, it is the group ID; for chatrooms, it is the chatroom ID; for system conversations, it is the system account ID specified by the developer. * --- */ targetId?: string; /** * [ZH] * --- * 频道 ID * --- * [EN] * --- * Channel ID * --- */ channelId?: string; /** * [ZH] * --- * 当前会话未读消息数量 * --- * [EN] * --- * Number of Unread Messages in the Current Conversation * --- */ unreadCount?: number; /** * [ZH] * --- * 会话中 @ 消息的总未读个数 * --- * [EN] * --- * The number of unread @ mentions in this conversation. * --- */ mentionedCount?: number; /** * [ZH] * --- * 超级群会话中 @ 我的消息的未读个数,只有超级群获取频道列表时有效。 * --- * [EN] * --- * Unread @mention count in ultra group chats. Only valid when fetching channel lists for ultra groups. * --- */ mentionedMeCount?: number; /** * [ZH] * --- * 本会话是否置顶 * --- * [EN] * --- * Whether the conversation is pinned * --- */ top?: boolean; /** * [ZH] * --- * 会话里保存的草稿信息 * --- * [EN] * --- * The draft information saved in the conversation. * --- */ draft?: string; /** * [ZH] * --- * 获取最后一条消息 * --- * [EN] * --- * Get the last message * --- */ lastMessage?: RCIMIWMessage; /** * [ZH] * --- * 会话的通知级别 * --- * [EN] * --- * Conversation Notification Level * --- */ notificationLevel?: RCIMIWPushNotificationLevel; /** * [ZH] * --- * 获取会话第一条未读消息的时间戳,仅对超级群生效 * --- * [EN] * --- * Retrieves the timestamp of the first unread message in the conversation. This method is only applicable to ultra groups. * --- */ firstUnreadMsgSendTime?: number; /** * [ZH] * --- * 获取会话最后的操作时间 * --- * [EN] * --- * Get the last operation time of the conversation * --- */ operationTime?: number; } export interface RCIMIWPushOptions { /** * */ idMI?: string; /** * */ appKeyMI?: string; /** * */ appIdMeizu?: string; /** * */ appKeyMeizu?: string; /** * */ appKeyOPPO?: string; /** * */ appSecretOPPO?: string; /** * */ enableHWPush?: boolean; /** * */ enableFCM?: boolean; /** * */ enableVIVOPush?: boolean; } export declare enum RCIMIWGroupReadReceiptVersion { /** * 未知版本 */ UNKNOWN = 0, /** * 群已读回执功能版本1 */ VERSION_1 = 1, /** * 群已读回执功能版本2 */ VERSION_2 = 2, /** * 群已读回执功能版本4 */ VERSION_4 = 3, /** * 已读回执功能版本5 */ VERSION_5 = 4 } export declare enum RCIMIWImportanceHW { /** * [ZH] * --- * 表示消息为服务与通讯类��消息提醒方式为锁屏+铃声+震动。 * --- * [EN] * --- * Indicates that the message is a service and communication reminder, with the notification method set to lock screen + ringtone + vibration. * --- */ NORMAL = 0, /** * [ZH] * --- * 表示消息为资讯营销类。消息提醒方式为静默通知,仅在下拉通知栏展示。 * --- * [EN] * --- * Indicates that the message is of the marketing type. The notification method is silent, and it is only displayed in the notification drop-down bar. * --- */ LOW = 1 } export declare enum RCIMIWMessageOperationPolicy { /** * [ZH] * --- * 本地 * --- * [EN] * --- * Local * --- */ LOCAL = 0, /** * [ZH] * --- * 远端 * --- * [EN] * --- * Remote * --- */ REMOTE = 1, /** * [ZH] * --- * 本地和远端 * --- * [EN] * --- * Local and Remote * --- */ LOCAL_REMOTE = 2 } export declare enum RCIMIWNativeCustomMessagePersistentFlag { /** * [ZH] * --- * 不存储,不计数 * --- * [EN] * --- * Non-storage, non-counting * --- */ NONE = 0, /** * [ZH] * --- * 在本地只存储,但不计入未读数 * --- * [EN] * --- * Store locally but do not count as unread. * --- */ PERSISTED = 1, /** * [ZH] * --- * 在本地进行存储并计入未读数 * --- * [EN] * --- * Store locally and count as unread. * --- */ Counted = 2, /** * [ZH] * --- * 在本地不存储,不计入未读数,并且如果对方不在线,服务器会直接丢弃该消息,对方如果之后再上线也不会再收到此消息。 * 一般用于发送输入状态之类的消息。 * --- * [EN] * --- * The message is not stored locally, does not count towards the unread message count, and if the recipient is offline, the server will directly discard the message. The recipient will not receive this message even if they come online later. * This is typically used for sending messages such as typing status indicators. * --- */ STATUS = 3 } export declare enum RCIMIWVIVOPushType { /** * [ZH] * --- * 运营消息 * --- * [EN] * --- * Operation Message * --- */ OPERATE = 0, /** * [ZH] * --- * 系统消息 * --- * [EN] * --- * System Message * --- */ SYSTEM = 1 } export declare enum RCIMIWSentStatus { /** * [ZH] * --- * 发送中 * --- * [EN] * --- * Sending * --- */ SENDING = 0, /** * [ZH] * --- * 发送失败 * --- * [EN] * --- * Send failed * --- */ FAILED = 1, /** * [ZH] * --- * 已发送 * --- * [EN] * --- * Sent * --- */ SENT = 2, /** * [ZH] * --- * 对方已接收 * --- * [EN] * --- * The message has been received by the recipient. * --- */ RECEIVED = 3, /** * [ZH] * --- * 对方已读 * --- * [EN] * --- * The message has been read by the recipient. * --- */ READ = 4, /** * [ZH] * --- * 对方已销毁 * --- * [EN] * --- * The other party has been deactivated. * --- */ DESTROYED = 5, /** * [ZH] * --- * 对方已取消 * --- * [EN] * --- * The other party has canceled. * --- */ CANCELED = 6 } export declare enum RCIMIWChatRoomSyncStatus { /** * */ Quit = 0, /** * */ Join = 1 } export declare enum RCIMIWPushNotificationQuietHoursLevel { /** * [ZH] * --- * 未设置。如未设置,SDK 会依次查询消息所属群的用户级别免打扰设置及其他非用户级别设置,再判断是否需要推送通知。 * --- * [EN] * --- * Not set. If not set, the SDK will sequentially check the user-level Do Not Disturb settings of the group to which the message belongs, as well as other non-user-level settings, to determine whether a push notification is required. * --- */ NONE = 0, /** * [ZH] * --- * 与融云服务端断开连接后,当前用户仅在指定时段内针对指定会话中提及(@)当前用户和全体群成员的消息接收通知。 * --- * [EN] * --- * After disconnecting from the RongCloud server, the current user will only receive notifications for messages that mention (@) the current user and all group members in specified conversations within a designated time period. * --- */ MENTION_MESSAGE = 1, /** * [ZH] * --- * 当前用户在指定时段内针对任何消息都不接收推送通知。 * --- * [EN] * --- * The current user will not receive push notifications for any messages during the specified time period. * --- */ BLOCKED = 2 } export declare enum RCIMIWMessageDirection { /** * [ZH] * --- * 发送方 * --- * [EN] * --- * Sender * --- */ SEND = 0, /** * [ZH] * --- * 接收方 * --- * [EN] * --- * Recipient * --- */ RECEIVE = 1 } export declare enum RCIMIWReceivedStatus { /** * [ZH] * --- * 未读 * --- * [EN] * --- * Unread * --- */ UNREAD = 0, /** * [ZH] * --- * 已读 * --- * [EN] * --- * Read * --- */ READ = 1, /** * [ZH] * --- * 已听 * --- * [EN] * --- * Listened * --- */ LISTENED = 2, /** * [ZH] * --- * 已下载 * --- * [EN] * --- * Downloaded. * --- */ DOWNLOADED = 3, /** * [ZH] * --- * 该消息已经被其他登录的多端收取过。(即该消息已经被其他端收取过后。当前端才登录,并重新拉取了这条消息。客户可以通过这个状态更新 UI,比如不再提示) * --- * [EN] * --- * The message has already been received by other devices logged in with the same account. (This means the message was received by other devices before the current device logged in and re-fetched the message. Clients can use this status to update the UI, e.g., stop displaying notifications.) * --- */ RETRIEVED = 4, /** * [ZH] * --- * 该消息是被多端同时收取的。(即其他端正同时登录,一条消息被同时发往多端。客户可以通过这个状态值更新自己的某些 UI 状态)。 * --- * [EN] * --- * The message is simultaneously received by multiple endpoints (i.e., other endpoints are logged in at the same time, and a single message is sent to multiple endpoints simultaneously). Clients can use this status value to update certain UI states. * --- */ MULTIPLE_RECEIVE = 5 } export declare enum RCIMIWChatRoomMemberActionType { /** * [ZH] * --- * 未知 * --- * [EN] * --- * Unknown * --- */ UNKNOWN = 0, /** * [ZH] * --- * 已加入 * --- * [EN] * --- * Joined * --- */ JOIN = 1, /** * [ZH] * --- * 已离开 * --- * [EN] * --- * Left * --- */ LEAVE = 2 } export declare enum RCIMIWPushNotificationLevel { /** * [ZH] * --- * 与融云服务端断开连接后,当前用户可针对指定类型会话中的所有消息接收通知。 * --- * [EN] * --- * After disconnecting from the RongCloud server, the current user can receive notifications for all messages in specified conversation types. * --- */ ALL_MESSAGE = 0, /** * [ZH] * --- * 未设置。未设置时均为此初始状态。 * --- * [EN] * --- * Not set. This is the initial state when no value is set. * --- */ NONE = 1, /** * [ZH] * --- * 与融云服务端断开连接后,当前用户仅针对指定类型的会话中提及(@)当前用户和全体群成员的消息接收通知。 * --- * [EN] * --- * After disconnecting from the RongCloud server, the current user will only receive notifications for messages that mention (@) the current user or all group members in specified types of conversations. * --- */ MENTION = 2, /** * [ZH] * --- * 与融云服务端断开连接后,当前用户仅针对指定类型的会话中提及(@)当前用户的消息接收通知。例如:张三只会接收 “@张三 Hello” 的消息的通知。 * --- * [EN] * --- * After disconnecting from the RongCloud server, the current user will only receive notifications for messages that mention (@) them in specified conversation types. For example, Zhang San will only receive notifications for messages like @Zhang San Hello. * --- */ MENTION_USERS = 3, /** * [ZH] * --- * 与融云服务端断开连接后,当前用户仅针对指定类型的会话中提及(@)全部群成员的消息接收通知。 * --- * [EN] * --- * After disconnecting from the RongCloud server, the current user will only receive notifications for messages that mention (@) all group members in specified types of conversations. * --- */ MENTION_ALL = 4, /** * [ZH] * --- * 当前用户针对指定类型的会话中的任何消息都不接收推送通知。 * --- * [EN] * --- * The current user does not receive push notifications for any messages in the specified type of conversation. * --- */ BLOCKED = 5 } export declare enum RCIMIWReadReceiptStatus { /** * [ZH] * --- * 已读 * --- * [EN] * --- * Read * --- */ READ = 0, /** * [ZH] * --- * 未读 * --- * [EN] * --- * Unread * --- */ UNREAD = 1 } export declare enum RCIMIWMessageType { /** * [ZH] * --- * 无效类型 * --- * [EN] * --- * Invalid Type * --- */ UNKNOWN = 0, /** * [ZH] * --- * 自定义 * --- * [EN] * --- * Custom * --- */ CUSTOM = 1, /** * [ZH] * --- * 文本 * --- * [EN] * --- * Text * --- */ TEXT = 2, /** * [ZH] * --- * 语音 * --- * [EN] * --- * Voice * --- */ VOICE = 3, /** * [ZH] * --- * 图片 * --- * [EN] * --- * Image * --- */ IMAGE = 4, /** * [ZH] * --- * 文件 * --- * [EN] * --- * File * --- */ FILE = 5, /** * [ZH] * --- * 小视频 * --- * [EN] * --- * Short video * --- */ SIGHT = 6, /** * [ZH] * --- * GIF 图 * --- * [EN] * --- * GIF Image * --- */ GIF = 7, /** * [ZH] * --- * 撤回 * --- * [EN] * --- * Recall * --- */ RECALL = 8, /** * [ZH] * --- * 引用 * --- * [EN] * --- * Reference * --- */ REFERENCE = 9, /** * [ZH] * --- * 命令 * --- * [EN] * --- * Command * --- */ COMMAND = 10, /** * [ZH] * --- * 命令通知 * --- * [EN] * --- * Command Notification * --- */ COMMAND_NOTIFICATION = 11, /** * [ZH] * --- * 位置消息 * --- * [EN] * --- * Location Message * --- */ LOCATION = 12, /** * [ZH] * --- * 用户自定义消息 * --- * [EN] * --- * User Custom Message * --- */ USER_CUSTOM = 13, /** * [ZH] * --- * 原生自定义普通消息 * --- * [EN] * --- * Native Custom Message * --- */ NATIVE_CUSTOM = 14, /** * [ZH] * --- * 原生自定义媒体消息 * --- * [EN] * --- * Native Custom Media Message * --- */ NATIVE_CUSTOM_MEDIA = 15, /** * [ZH] * --- * 群通知消息 * --- * [EN] * --- * Group Notification Message * --- */ GROUP_NOTIFICATION = 16, /** * [ZH] * --- * 信息通知消息 * --- * [EN] * --- * Information Notification Message * --- */ INFORMATION_NOTIFICATION = 17 } export declare enum RCIMIWMessageBlockType { /** * [ZH] * --- * 未知 * --- * [EN] * --- * Unknown * --- */ UNKNOWN = 0, /** * [ZH] * --- * 全局敏感词:命中了融云内置的全局敏感词 * --- * [EN] * --- * Global Sensitive Words: Matches RongCloud's built-in global sensitive words. * --- */ GLOBAL = 1, /** * [ZH] * --- * 自定义敏感词拦截:命中了客户在融云自定义的敏感词 * --- * [EN] * --- * Custom Sensitive Word Blocking: Triggered by sensitive words customized by the customer in RongCloud. * --- */ CUSTOM = 2, /** * [ZH] * --- * 第三方审核拦截:命中了第三方(数美)或模板路由决定不下发的状态 * --- * [EN] * --- * Third-party moderation interception: Triggered when the message is blocked by a third-party (e.g., ShuMei) or the template routing decides not to deliver it. * --- */ THIRD_PARTY = 3 } export declare enum RCIMIWMessageAuditType { /** * [ZH] * --- * 不需要送审,默认值 * --- * [EN] * --- * No review required, default value * --- */ DISALLOW = 0, /** * [ZH] * --- * 需要送审 * --- * [EN] * --- * Requires review * --- */ ALLOW = 1 } export declare enum RCIMIWChatRoomMemberBanType { /** * 解除指定聊天室中用户禁言 */ UnmuteUsers = 0, /** * 禁言指定聊天室中用户 */ MuteUsers = 1, /** * 解除聊天室全体禁言 */ UnmuteAll = 2, /** * 聊天室全体禁言 */ MuteAll = 3, /** * 移出禁言用户白名单 */ RemoveWhitelist = 4, /** * 添加禁言用户白名单 */ AddWhitelist = 5, /** * 解除用户聊天室全局禁言 */ UnmuteGlobal = 6, /** * 用户聊天室全局禁言 */ MuteGlobal = 7 } export declare enum RCIMIWReadReceiptOrder { /** * [ZH] * --- * 倒序 * --- * [EN] * --- * Descending order * --- */ DESCENDING = 0, /** * [ZH] * --- * 正序 * --- * [EN] * --- * Ascending order * --- */ ASCENDING = 1 } export declare enum RCIMIWChatRoomMemberOperateType { /** * 0是解封 */ Deblock = 0, /** * 1是封禁 */ Blocked = 1 } export declare enum RCIMIWTimeOrder { /** * [ZH] * --- * 时间递减 * --- * [EN] * --- * Time descending * --- */ BEFORE = 0, /** * [ZH] * --- * 时间递增 * --- * [EN] * --- * Timestamp Increment * --- */ AFTER = 1 } export declare enum RCIMIWCustomMessagePolicy { /** * [ZH] * --- * 客户端不存储,支持离线消息机制,不计入未读消息数 * --- * [EN] * --- * The client does not store messages locally and supports an offline message mechanism, which does not count towards unread message totals. * --- */ COMMAND = 0, /** * [ZH] * --- * 客户端存储,支持离线消息机制,且存入服务端历史消息,计入未读消息数 * --- * [EN] * --- * Client-side storage supports the offline message mechanism, stores messages in server history, and counts towards unread message totals. * --- */ NORMAL = 1, /** * [ZH] * --- * 客户端不存储,服务端不存储,不计入未读消息数 * --- * [EN] * --- * The client does not store it, the server does not store it, and it is not counted in the unread message count. * --- */ STATUS = 2, /** * [ZH] * --- * 客户端存储,支持离线消息机制,且存入服务端历史消息,不计入未读消息数 * --- * [EN] * --- * Client-side storage supports the offline message mechanism, and messages stored in the server's history are not counted as unread messages. * --- */ STORAGE = 3 } export declare enum RCIMIWChatRoomStatus { /** * [ZH] * --- * 聊天室被重置 * --- * [EN] * --- * Chatroom has been reset * --- */ RESET = 0, /** * [ZH] * --- * 用户调用IM Server API 手动销毁聊天室 * --- * [EN] * --- * The user invokes the IM Server API to manually destroy a chatroom. * --- */ DESTROY_MANUAL = 1, /** * [ZH] * --- * IM Server 自动销毁聊天室 * --- * [EN] * --- * IM Server automatically destroys chatrooms. * --- */ DESTROY_AUTO = 2 } export declare enum RCIMIWConversationType { /** * [ZH] * --- * 暂不支持,SDK 保留类型,开发者不可使用 * --- * [EN] * --- * Not supported. Reserved type for SDK, not available for developers. * --- */ INVALID = 0, /** * [ZH] * --- * 单聊会话 * --- * [EN] * --- * One-to-One Chat Conversation * --- */ PRIVATE = 1, /** * [ZH] * --- * 群聊会话 * --- * [EN] * --- * Group Chat Conversation * --- */ GROUP = 2, /** * [ZH] * --- * 聊天室会话 * --- * [EN] * --- * Chatroom Conversation * --- */ CHATROOM = 3, /** * [ZH] * --- * 系统会话 * --- * [EN] * --- * System Conversation * --- */ SYSTEM = 4, /** * [ZH] * --- * 超级群会话 * --- * [EN] * --- * Ultra Group Conversation * --- */ ULTRA_GROUP = 5 } export declare enum RCIMIWErrorCode { /** * [ZH] * --- * 成功 * --- * [EN] * --- * Success * --- */ SUCCESS = 0, /** * [ZH] * --- * 参数错误 * --- * [EN] * --- * Parameter Error * --- */ PARAM_ERROR = 1, /** * [ZH] * --- * 引擎已销毁 * --- * [EN] * --- * Engine has been destroyed * --- */ ENGINE_DESTROYED = 2, /** * [ZH] * --- * 原生层操作错误 * --- * [EN] * --- * Native Layer Operation Error * --- */ NATIVE_OPERATION_ERROR = 3, /** * */ RESULT_UNKNOWN = 4 } export declare enum RCIMIWChatRoomSyncStatusReason { /** * 自己主动离开 */ LeaveOnMyOwn = 0, /** * 多端加入互踢导致离开 */ OtherDeviceLogin = 1 } export declare enum RCIMIWUltraGroupTypingStatus { /** * [ZH] * --- * 正在输入文本 * --- * [EN] * --- * Typing in progress * --- */ TEXT = 0 } export declare enum RCIMIWMentionedType { /** * [ZH] * --- * @ 所有人 * --- * [EN] * --- * @everyone * --- */ ALL = 0, /** * [ZH] * --- * @ 指定的人 * --- * [EN] * --- * @ Mentioned User * --- */ PART = 1 } export declare enum RCIMIWAreaCode { /** * [ZH] * --- * 北京数据中心,默认值 * --- * [EN] * --- * Beijing Data Center, default value * --- */ BJ = 0, /** * [ZH] * --- * 新加坡数据中心 * [EN] * --- * Singapore Data Center * --- */ SG = 1, /** * [ZH] * --- * 北美数据中心 * [EN] * --- * North America Data Center * --- */ NA = 2, /** * [ZH] * --- * 新加坡 B 企业合作数据中心 * --- * [EN] * --- * Singapore B Enterprise Collaboration Data Center * --- */ SG_B = 3, /** * [ZH] * --- * 沙特数据中心 * --- * [EN] * --- * China (Beijing) Data Center * --- */ SA = 4 } export declare enum RCIMIWChatRoomEntriesOperationType { /** * [ZH] * --- * 更新操作 * --- * [EN] * --- * Update Operation * --- */ Update = 0, /** * [ZH] * --- * 删除操作 * --- * [EN] * --- * Delete Operation * --- */ Remove = 1 } export declare enum RCIMIWLogLevel { /** * [ZH] * --- * 不输出任何日志 * --- * [EN] * --- * Do not output any logs. * --- */ NONE = 0, /** * [ZH] * --- * 只输出错误的日志 * --- * [EN] * --- * Only output error logs. * --- */ ERROR = 1, /** * [ZH] * --- * 输出错误和警告的日志 * --- * [EN] * --- * Logs output errors and warnings. * --- */ WARN = 2, /** * [ZH] * --- * 输出错误、警告和一般的日志 * --- * [EN] * --- * Output errors, warnings, and general logs. * --- */ INFO = 3, /** * [ZH] * --- * 输出错误、警告和一般的日志以及 debug 日志 * --- * [EN] * --- * Output errors, warnings, general logs, and debug logs. * --- */ DEBUG = 4, /** * [ZH] * --- * 输出所有日志 * --- * [EN] * --- * Output All Logs * --- */ VERBOSE = 5 } export declare enum RCIMIWBlacklistStatus { /** * [ZH] * --- * 未知 * --- * [EN] * --- * Unknown * --- */ UNKNOWN = 0, /** * [ZH] * --- * 在黑名单中 * --- * [EN] * --- * In the blocklist * --- */ IN_BLACKLIST = 1, /** * [ZH] * --- * 不在黑名单 * --- * [EN] * --- * Not in the blocklist * --- */ NOT_IN_BLACKLIST = 2 } export declare enum RCIMIWImportanceHonor { /** * [ZH] * --- * 表示消息为服务与通讯类。消息提醒方式为锁屏+铃声+震动。 * --- * [EN] * --- * Indicates that the message is related to service and communication. The notification method includes lock screen, ringtone, and vibration. * --- */ NORMAL = 0, /** * [ZH] * --- * 表示消息为资讯营销类。消息提醒方式为静默通知,仅在下拉通知栏展示。 * --- * [EN] * --- * Indicates that the message is of marketing or informational type. The notification method is silent, and it is only displayed in the notification dropdown bar. * --- */ LOW = 1 } export declare enum RCIMIWConnectionStatus { /** * [ZH] * --- * 网络不可用 * --- * [EN] * --- * Network unavailable * --- */ NETWORK_UNAVAILABLE = 0, /** * [ZH] * --- * 连接成功 * --- * [EN] * --- * Connection established * --- */ CONNECTED = 1, /** * [ZH] * --- * 连接中 * --- * [EN] * --- * Connecting * --- */ CONNECTING = 2, /** * [ZH] * --- * 未连接 * --- * [EN] * --- * Not connected * --- */ UNCONNECTED = 3, /** * [ZH] * --- * 用户账户在其他设备登录,本机会被踢掉线 * --- * [EN] * --- * The current device will be kicked offline if the user account logs in from another device. * --- */ KICKED_OFFLINE_BY_OTHER_CLIENT = 4, /** * [ZH] * --- * Token 不正确 * --- * [EN] * --- * Token is invalid. * --- */ TOKEN_INCORRECT = 5, /** * [ZH] * --- * 用户被开发者后台封禁 * --- * [EN] * --- * The user has been banned by the developer backend. * --- */ CONN_USER_BLOCKED = 6, /** * [ZH] * --- * 用户主动调用 disconnect 或 logout 接口断开连接 * --- * [EN] * --- * The user actively calls the `disconnect` or `logout` interface to terminate the connection. * --- */ SIGN_OUT = 7, /** * [ZH] * --- * 连接暂时挂起(多是由于网络问题导致),SDK 会在合适时机进行自动重连 * --- * [EN] * --- * The connection is temporarily suspended (usually due to network issues). The SDK will automatically reconnect at an appropriate time. * --- */ SUSPEND = 8, /** * [ZH] * --- * 自动连接超时,SDK 将不会继续连接,用户需要做超时处理,再自行调用 connectWithToken 接口进行连接 * --- * [EN] * --- * Automatic connection timeout: The SDK will not continue to connect. The user needs to handle the timeout and manually call the `connectWithToken` interface to reconnect. * --- */ TIMEOUT = 9, /** * [ZH] * --- * 异常情况 * --- * [EN] * --- * Exception Handling * --- */ UNKNOWN = 10 } export interface RCIMIWConnectCallback extends IRCIMIWConnectCallback { /** * */ onDatabaseOpened?: (code: number) => void; } export interface RCIMIWSendMessageCallback extends IRCIMIWSendMessageCallback { /** * */ onMessageSaved?: (message: RCIMIWMessage) => void; } export interface RCIMIWSendMediaMessageListener extends IRCIMIWSendMediaMessageListener { /** * [ZH] * --- * 消息保存到本地数据库的回调 * @param message 消息 * --- * [EN] * --- * Callback for saving messages to the local database * @param message The message * --- */ onMediaMessageSaved?: (message: RCIMIWMediaMessage) => void; /** * [ZH] * --- * 消息发送中的回调 * @param message 消息 * @param progress 进度 * --- * [EN] * --- * Callback for sending messages * @param message The message * @param progress The progress * --- */ onMediaMessageSending?: (message: RCIMIWMediaMessage, progress: number) => void; /** * [ZH] * --- * 取消发送消息的回调 * @param message 消息 * --- * [EN] * --- * Callback for canceling message sending * @param message The message * --- */ onSendingMediaMessageCanceled?: (message: RCIMIWMediaMessage) => void; } export interface RCIMIWDownloadMediaMessageListener extends IRCIMIWDownloadMediaMessageListener { /** * [ZH] * --- * 消息下载中的回调 * @param message 消息 * @param progress 进度 * --- * [EN] * --- * Callback for downloading messages * @param message The message * @param progress The progress * --- */ onMediaMessageDownloading?: (message: RCIMIWMediaMessage, progress: number) => void; /** * [ZH] * --- * 取消下载消息的回调 * @param message 消息 * --- * [EN] * --- * Callback for canceling message downloading * @param message The message * --- */ onDownloadingMediaMessageCanceled?: (message: RCIMIWMediaMessage) => void; } export interface RCIMIWSendGroupMessageToDesignatedUsersCallback extends IRCIMIWSendGroupMessageToDesignatedUsersCallback { /** * */ onMessageSaved?: (message: RCIMIWMessage) => void; } export interface IRCIMIWConnectCallback { /** * [ZH] * --- * 连接回调 * @param code 连接状态码 * @param userId 用户ID * --- * [EN] * --- * Connection Callback * @param code Connection status code * @param userId User ID * --- */ onConnected?: (code: number, userId: string) => void; /** * [ZH] * --- * 数据库打开回调 * @param code 连接状态码 * --- * [EN] * --- * Database Open Callback * @param code Indicates the connection status code. * --- */ onDatabaseOpened?: (code: number) => void; } export interface IRCIMIWSendMessageCallback { /** * [ZH] * --- * 消息保存到本地数据库的回调 * @param message 消息 * --- * [EN] * --- * Callback for saving messages to the local database * @param message The message * --- */ onMessageSaved?: (message: RCIMIWMessage) => void; /** * [ZH] * --- * 消息发送成功的回调 * @param code 状态码 * @param message 消息 * --- * [EN] * --- * Callback triggered when a message is sent successfully * @param code Status code * @param message Message * --- */ onMessageSent?: (code: number, message: RCIMIWMessage) => void; } export interface IRCIMIWSendMediaMessageListener { /** * [ZH] * --- * 消息保存到本地数据库的回调 * @param message 消息 * --- * [EN] * --- * Callback for saving messages to the local database * @param message The message * --- */ onMediaMessageSaved?: (message: RCIMIWMediaMessage) => void; /** * [ZH] * --- * 消息发送中的回调 * @param message 消息 * @param progress 进度 * --- * [EN] * --- * Callback for sending messages * @param message The message * @param progress The progress * --- */ onMediaMessageSending?: (message: RCIMIWMediaMessage, progress: number) => void; /** * [ZH] * --- * 取消发送消息的回调 * @param message 消息 * --- * [EN] * --- * Callback for canceling message sending * @param message The message * --- */ onSendingMediaMessageCanceled?: (message: RCIMIWMediaMessage) => void; /** * [ZH] * --- * 消息发送成功的回调 * @param code 状态码 * @param message 消息 * --- * [EN] * --- * Callback for successful message sending * @param code Status code * @param message Message * --- */ onMediaMessageSent?: (code: number, message: RCIMIWMediaMessage) => void; } export interface IRCIMIWCancelSendingMediaMessageCallback { /** * */ onCancelSendingMediaMessageCalled?: (code: number, message: RCIMIWMediaMessage) => void; } export interface IRCIMIWDownloadMediaMessageListener { /** * [ZH] * --- * 消息下载中的回调 * @param message 消息 * @param progress 进度 * --- * [EN] * --- * Callback for downloading messages * @param message The message * @param progress The progress * --- */ onMediaMessageDownloading?: (message: RCIMIWMediaMessage, progress: number) => void; /** * [ZH] * --- * 取消下载消息的回调 * @param message 消息 * --- * [EN] * --- * Callback for canceling message downloading * @param message The message * --- */ onDownloadingMediaMessageCanceled?: (message: RCIMIWMediaMessage) => void; /** * [ZH] * --- * 消息下载成功的回调 * @param code 状态码 * @param message 消息 * --- * [EN] * --- * Callback for successful message downloading * @param code Status code * @param message The message * --- */ onMediaMessageDownloaded?: (code: number, message: RCIMIWMediaMessage) => void; } export interface IRCIMIWCancelDownloadingMediaMessageCallback { /** * */ onCancelDownloadingMediaMessageCalled?: (code: number, message: RCIMIWMediaMessage) => void; } export interface IRCIMIWGetConversationCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWObjectCallback { /** * [ZH] * --- * 成功回调 * - t 返回对象 * --- * [EN] * --- * Success callback * - t Returned object * --- */ onSuccess?: (t: T) => void; /** * [ZH] * --- * 错误回调 * - code 错误码 * --- * [EN] * --- * Error callback * - code Error code * --- */ onError?: (code: number) => void; } export interface IRCIMIWGetConversationsCallback extends IRCIMIWObjectCallback> { } export interface IRCIMIWGetUnreadConversationsCallback extends IRCIMIWObjectCallback> { } export interface IRCIMIWOperationCallback { /** * [ZH] * --- * 操作成功回调 * --- * [EN] * --- * Operation succeeded callback * --- */ onSuccess?: () => void; /** * [ZH] * --- * 操作失败回调 * - code 错误码 * --- * [EN] * --- * Operation failed callback * - code Error code * --- */ onError?: (code: number) => void; } export interface IRCIMIWRemoveConversationCallback { /** * */ onConversationRemoved?: (code: number) => void; } export interface IRCIMIWRemoveConversationsCallback { /** * */ onConversationsRemoved?: (code: number) => void; } export interface IRCIMIWGetUnreadCountCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWGetTotalUnreadCountCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWGetUnreadMentionedCountCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWGetUltraGroupAllUnreadCountCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWGetUltraGroupAllUnreadMentionedCountCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWGetUltraGroupUnreadCountCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWGetUltraGroupUnreadMentionedCountCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWGetUnreadCountByConversationTypesCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWGetUnreadCountByLevelsCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWClearUnreadCountCallback { /** * */ onUnreadCountCleared?: (code: number) => void; } export interface IRCIMIWSaveDraftMessageCallback { /** * */ onDraftMessageSaved?: (code: number) => void; } export interface IRCIMIWGetDraftMessageCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWClearDraftMessageCallback { /** * */ onDraftMessageCleared?: (code: number) => void; } export interface IRCIMIWGetBlockedConversationsCallback extends IRCIMIWObjectCallback> { } export interface IRCIMIWChangeConversationTopStatusCallback { /** * */ onConversationTopStatusChanged?: (code: number) => void; } export interface IRCIMIWGetConversationTopStatusCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWSyncConversationReadStatusCallback { /** * */ onConversationReadStatusSynced?: (code: number) => void; } export interface IRCIMIWGetMessagesCallback extends IRCIMIWObjectCallback> { } export interface IRCIMIWGetMessageCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWGetMessagesAroundTimeCallback extends IRCIMIWObjectCallback> { } export interface IRCIMIWGetFirstUnreadMessageCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWGetUnreadMentionedMessagesCallback extends IRCIMIWObjectCallback> { } export interface IRCIMIWInsertMessageCallback { /** * */ onMessageInserted?: (code: number, message: RCIMIWMessage) => void; } export interface IRCIMIWInsertMessagesCallback { /** * */ onMessagesInserted?: (code: number, messages: Array) => void; } export interface IRCIMIWClearMessagesCallback { /** * */ onMessagesCleared?: (code: number) => void; } export interface IRCIMIWDeleteLocalMessagesCallback { /** * */ onLocalMessagesDeleted?: (code: number, messages: Array) => void; } export interface IRCIMIWDeleteLocalMessageByIdsCallback extends IRCIMIWCompletionCallback { } export interface IRCIMIWCompletionCallback { /** * [ZH] * --- * 接口调用结果,code 非 0 时为失败 * --- * [EN] * --- * API call result. Non-zero code means failure * --- */ onCompleted?: (code: number) => void; } export interface IRCIMIWDeleteMessagesCallback { /** * */ onMessagesDeleted?: (code: number, messages: Array) => void; } export interface IRCIMIWRecallMessageCallback { /** * */ onMessageRecalled?: (code: number, message: RCIMIWMessage) => void; } export interface IRCIMIWSendPrivateReadReceiptMessageCallback { /** * */ onPrivateReadReceiptMessageSent?: (code: number) => void; } export interface IRCIMIWSendGroupReadReceiptRequestCallback { /** * */ onGroupReadReceiptRequestSent?: (code: number, message: RCIMIWMessage) => void; } export interface IRCIMIWSendGroupReadReceiptResponseCallback { /** * */ onGroupReadReceiptResponseSent?: (code: number, message: Array) => void; } export interface IRCIMIWUpdateMessageExpansionCallback { /** * */ onMessageExpansionUpdated?: (code: number) => void; } export interface IRCIMIWRemoveMessageExpansionForKeysCallback { /** * */ onMessageExpansionForKeysRemoved?: (code: number) => void; } export interface IRCIMIWChangeMessageSentStatusCallback { /** * */ onMessageSentStatusChanged?: (code: number) => void; } export interface IRCIMIWChangeMessageReceivedStatusCallback { /** * */ onMessageReceiveStatusChanged?: (code: number) => void; } export interface IRCIMIWChangeMessageReceivedStatusInfoCallback { /** * */ onMessageReceiveStatusInfoChanged?: (code: number) => void; } export interface IRCIMIWUpdateMessageLocalExtraCallback { /** * */ onMessageLocalExtraUpdated?: (code: number) => void; } export interface IRCIMIWJoinChatRoomCallback { /** * */ onChatRoomJoined?: (code: number, targetId: string) => void; } export interface IRCIMIWLeaveChatRoomCallback { /** * */ onChatRoomLeft?: (code: number, targetId: string) => void; } export interface IRCIMIWGetChatRoomMessagesCallback extends IRCIMIWObjectCallback> { } export interface IRCIMIWAddChatRoomEntryCallback { /** * */ onChatRoomEntryAdded?: (code: number) => void; } export interface IRCIMIWAddChatRoomEntriesCallback { /** * */ onChatRoomEntriesAdded?: (code: number, errors: Map) => void; } export interface IRCIMIWGetChatRoomEntryCallback extends IRCIMIWObjectCallback> { } export interface IRCIMIWGetChatRoomAllEntriesCallback extends IRCIMIWObjectCallback> { } export interface IRCIMIWRemoveChatRoomEntryCallback { /** * */ onChatRoomEntryRemoved?: (code: number) => void; } export interface IRCIMIWRemoveChatRoomEntriesCallback { /** * */ onChatRoomEntriesRemoved?: (code: number) => void; } export interface IRCIMIWAddToBlacklistCallback { /** * */ onBlacklistAdded?: (code: number, userId: string) => void; } export interface IRCIMIWRemoveFromBlacklistCallback { /** * */ onBlacklistRemoved?: (code: number, userId: string) => void; } export interface IRCIMIWGetBlacklistStatusCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWGetBlacklistCallback extends IRCIMIWObjectCallback> { } export interface IRCIMIWSearchMessagesCallback extends IRCIMIWObjectCallback> { } export interface IRCIMIWSearchMessagesByTimeRangeCallback extends IRCIMIWObjectCallback> { } export interface IRCIMIWSearchMessagesByUserIdCallback extends IRCIMIWObjectCallback> { } export interface IRCIMIWSearchMessagesByMessageTypesCallback extends IRCIMIWObjectCallback> { } export interface IRCIMIWSearchConversationsCallback extends IRCIMIWObjectCallback> { } export interface IRCIMIWChangeNotificationQuietHoursCallback { /** * */ onNotificationQuietHoursChanged?: (code: number) => void; } export interface IRCIMIWRemoveNotificationQuietHoursCallback { /** * */ onNotificationQuietHoursRemoved?: (code: number) => void; } export interface IRCIMIWGetNotificationQuietHoursCallback { /** * */ onSuccess?: (startTime: string, spanMinutes: number, level: RCIMIWPushNotificationQuietHoursLevel) => void; /** * */ onError?: (code: number) => void; } export interface IRCIMIWChangeConversationNotificationLevelCallback { /** * */ onConversationNotificationLevelChanged?: (code: number) => void; } export interface IRCIMIWGetConversationNotificationLevelCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWChangeConversationTypeNotificationLevelCallback { /** * */ onConversationTypeNotificationLevelChanged?: (code: number) => void; } export interface IRCIMIWGetConversationTypeNotificationLevelCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWChangeUltraGroupDefaultNotificationLevelCallback { /** * */ onUltraGroupDefaultNotificationLevelChanged?: (code: number) => void; } export interface IRCIMIWGetUltraGroupDefaultNotificationLevelCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWChangeUltraGroupChannelDefaultNotificationLevelCallback { /** * */ onUltraGroupChannelDefaultNotificationLevelChanged?: (code: number) => void; } export interface IRCIMIWGetUltraGroupChannelDefaultNotificationLevelCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWChangePushContentShowStatusCallback { /** * */ onPushContentShowStatusChanged?: (code: number) => void; } export interface IRCIMIWChangePushLanguageCallback { /** * */ onPushLanguageChanged?: (code: number) => void; } export interface IRCIMIWChangePushReceiveStatusCallback { /** * */ onPushReceiveStatusChanged?: (code: number) => void; } export interface IRCIMIWSendGroupMessageToDesignatedUsersCallback extends IRCIMIWSendMessageCallback { } export interface IRCIMIWGetMessageCountCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWGetTopConversationsCallback extends IRCIMIWObjectCallback> { } export interface IRCIMIWSyncUltraGroupReadStatusCallback { /** * */ onUltraGroupReadStatusSynced?: (code: number) => void; } export interface IRCIMIWGetConversationsForAllChannelCallback extends IRCIMIWObjectCallback> { } export interface IRCIMIWModifyUltraGroupMessageCallback { /** * */ onUltraGroupMessageModified?: (code: number) => void; } export interface IRCIMIWRecallUltraGroupMessageCallback { /** * */ onUltraGroupMessageRecalled?: (code: number) => void; } export interface IRCIMIWClearUltraGroupMessagesCallback { /** * */ onUltraGroupMessagesCleared?: (code: number) => void; } export interface IRCIMIWSendUltraGroupTypingStatusCallback { /** * */ onUltraGroupTypingStatusSent?: (code: number) => void; } export interface IRCIMIWClearUltraGroupMessagesForAllChannelCallback { /** * */ onUltraGroupMessagesClearedForAllChannel?: (code: number) => void; } export interface IRCIMIWGetBatchRemoteUltraGroupMessagesCallback { /** * */ onSuccess?: (matchedMessages: Array, notMatchedMessages: Array) => void; /** * */ onError?: (code: number) => void; } export interface IRCIMIWUpdateUltraGroupMessageExpansionCallback { /** * */ onUltraGroupMessageExpansionUpdated?: (code: number) => void; } export interface IRCIMIWRemoveUltraGroupMessageExpansionForKeysCallback { /** * */ onUltraGroupMessageExpansionForKeysRemoved?: (code: number) => void; } export interface IRCIMIWCreateTagCallback { /** * */ onTagCreated?: (code: number) => void; } export interface IRCIMIWRemoveTagCallback { /** * */ onTagRemoved?: (code: number) => void; } export interface IRCIMIWUpdateTagNameByIdCallback { /** * */ onTagNameByIdUpdated?: (code: number) => void; } export interface IRCIMIWGetTagsCallback extends IRCIMIWObjectCallback> { } export interface IRCIMIWAddConversationToTagCallback { /** * */ onConversationToTagAdded?: (code: number) => void; } export interface IRCIMIWRemoveConversationFromTagCallback { /** * */ onConversationFromTagRemoved?: (code: number) => void; } export interface IRCIMIWRemoveTagsFromConversationCallback { /** * */ onTagsFromConversationRemoved?: (code: number) => void; } export interface IRCIMIWGetTagsFromConversationCallback extends IRCIMIWObjectCallback> { } export interface IRCIMIWChangeConversationTopStatusInTagCallback { /** * */ onConversationTopStatusInTagChanged?: (code: number) => void; } export interface IRCIMIWGetConversationTopStatusInTagCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWClearMessagesUnreadStatusByTagCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWClearConversationsByTagCallback extends IRCIMIWObjectCallback { } export interface IRCIMIWListener { /** * [ZH] * --- * 收到消息的监听 * @param message 接收到的消息对象 * @param left 当客户端连接成功后,服务端会将所有补偿消息以消息包的形式下发给客户端,最多每 200 条消息为一个消息包,即一个 Package, 客户端接受到消息包后,会逐条解析并通知应用。left 为当前消息包(Package)里还剩余的消息条数 * @param offline 消息是否离线消息 * @param hasPackage 是否在服务端还存在未下发的消息包 * --- * [EN] * --- * Message Received Listener * @param message Represents the received message object. * @param left After the client successfully connects, the server delivers all compensation messages in packages, with a maximum of 200 messages per package. Once the client receives a message package, it parses and notifies the application message by message. The `left` parameter indicates the number of remaining messages in the current package. * @param offline Specifies whether the message is an offline message. * @param hasPackage Indicates whether there are undelivered message packages remaining on the server. * --- */ onMessageReceived?: (message: RCIMIWMessage, left: number, offline: boolean, hasPackage: boolean) => void; /** * [ZH] * --- * 离线消息同步完成 * --- * [EN] * --- * Offline messages synced * --- */ onOfflineMessageSyncCompleted?: () => void; /** * [ZH] * --- * 网络状态变化 * @param status SDK 与融云服务器的连接状态 * --- * [EN] * --- * Network Status Change * @param status Specifies the connection status between the SDK and the RongCloud server. * --- */ onConnectionStatusChanged?: (status: RCIMIWConnectionStatus) => void; /** * [ZH] * --- * 会话状态置顶多端同步监听 * @param type 会话类型 * @param targetId 会话 ID * @param channelId 频道 ID,仅支持超级群使用,其他会话类型传 null 即可。 频道 ID,仅支持超级群使用,其他会话类型传 null 即可。 * @param top 是否置顶 * --- * [EN] * --- * Pin Conversation Status Multi-Device Sync Listener * @param type Specifies the conversation type. * @param targetId Indicates the conversation ID. * @param channelId Represents the channel ID, which is only supported for ultra groups. For other conversation types, pass `null`. * @param top Indicates whether the conversation is pinned. * --- */ onConversationTopStatusSynced?: (type: RCIMIWConversationType, targetId: string, channelId: string, top: boolean) => void; /** * [ZH] * --- * 会话状态免打扰多端同步监听 * @param type 会话类型 * @param targetId 会话 ID * @param channelId 频道 ID,仅支持超级群使用,其他会话类型传 null 即可。 * @param level 当前会话通知的类型 * --- * [EN] * --- * Conversation Status Do Not Disturb Multi-Device Synchronization Listener * @param type Specifies the conversation type * @param targetId Specifies the conversation ID * @param channelId Specifies the channel ID, supported only for ultra groups. For other conversation types, pass `null`. * @param level Indicates the current notification type for the conversation * --- */ onConversationNotificationLevelSynced?: (type: RCIMIWConversationType, targetId: string, channelId: string, level: RCIMIWPushNotificationLevel) => void; /** * [ZH] * --- * 撤回消息监听器 * @param message 原本的消息会变为撤回消息 * --- * [EN] * --- * Message Recall Listener * @param message The original message will be transformed into a recalled message. * --- */ onRemoteMessageRecalled?: (message: RCIMIWMessage) => void; /** * [ZH] * --- * 单聊中收到消息回执的回调。 * @param targetId 会话 ID * @param channelId 频道 ID,仅支持超级群使用,其他会话类型传 null 即可。 * @param timestamp 已阅读的最后一条消息的 sendTime * --- * [EN] * --- * Callback triggered when a message receipt is received in a one-to-one chat. * @param targetId The conversation ID * @param channelId The channel ID, only supported for ultra groups. Pass `null` for other conversation types. * @param timestamp The sendTime of the last read message * --- */ onPrivateReadReceiptReceived?: (targetId: string, channelId: string, timestamp: number) => void; /** * [ZH] * --- * 消息扩展信息更改的回调 * @param expansion 消息扩展信息中更新的键值对,只包含更新的键值对,不是全部的数据。如果想获取全部的键值对,请使用 message 的 expansion 属性。 * @param message 发生变化的消息 * --- * [EN] * --- * Callback for Message Extension Information Change * @param expansion Specifies the key-value pairs updated in the message extension information. Only the updated key-value pairs are included, not the entire dataset. To retrieve all key-value pairs, use the `expansion` property of the `message` object. * @param message Indicates the message object where the changes occurred. * --- */ onRemoteMessageExpansionUpdated?: (expansion: Map, message: RCIMIWMessage) => void; /** * [ZH] * --- * 消息扩展信息删除的回调 * @param message 发生变化的消息 * @param keys 消息扩展信息中删除的键值对 key 列表 * --- * [EN] * --- * Callback for Message Extension Information Deletion * @param message The message that has been modified * @param keys List of keys deleted from the message extension information * --- */ onRemoteMessageExpansionForKeyRemoved?: (message: RCIMIWMessage, keys: Array) => void; /** * [ZH] * --- * 聊天室用户进入、退出聊天室监听 * @param targetId 会话 ID * @param actions 发生的事件 * --- * [EN] * --- * Chatroom User Entry and Exit Monitoring * @param targetId Conversation ID * @param actions Events that occurred * --- */ onChatRoomMemberChanged?: (targetId: string, actions: Array) => void; /** * [ZH] * --- * 会话输入状态发生变化。对于单聊而言,当对方正在输入时,监听会触发一次;当对方不处于输入状态时,该监听还会触发一次,但回调里输入用户列表为空。 * @param type 会话类型 * @param targetId 会话 ID * @param channelId 频道 ID,仅支持超级群使用,其他会话类型传 null 即可。 * @param userTypingStatus 发生状态变化的集合 * --- * [EN] * --- * The conversation input status has changed. For one-to-one chats, the listener is triggered once when the other party is typing, and it is triggered again when the other party stops typing, but the list of typing users in the callback will be empty. * @param type Conversation type * @param targetId Conversation ID * @param channelId Channel ID, only supported for ultra groups. For other conversation types, pass null. * @param userTypingStatus Collection of users whose typing status has changed * --- */ onTypingStatusChanged?: (type: RCIMIWConversationType, targetId: string, channelId: string, userTypingStatus: Array) => void; /** * [ZH] * --- * 同步消息未读状态监听接口。多端登录,收到其它端清除某一会话未读数通知的时候 * @param type 会话类型 * @param targetId 会话 ID * @param timestamp 时间戳 * --- * [EN] * --- * Listener interface for synchronizing unread message status. Triggers when a multi-device login occurs and a notification is received from another device clearing the unread count of a specific conversation. * @param type Conversation type * @param targetId Conversation ID * @param timestamp Timestamp * --- */ onConversationReadStatusSyncMessageReceived?: (type: RCIMIWConversationType, targetId: string, timestamp: number) => void; /** * [ZH] * --- * 聊天室 KV 同步完成的回调 * @param roomId 聊天室 ID * --- * [EN] * --- * Chatroom KV Synchronization Completion Callback * @param roomId The ID of the chatroom. * --- */ onChatRoomEntriesSynced?: (roomId: string) => void; /** * [ZH] * --- * 聊天室 KV 发生变化的回调 * @param operationType 操作的类型 * @param roomId 聊天室 ID * @param entries 发送变化的 KV * --- * [EN] * --- * Callback for Chatroom KV Changes * @param operationType Specifies the type of operation * @param roomId Indicates the chatroom ID * @param entries Represents the KV that has changed * --- */ onChatRoomEntriesChanged?: (operationType: RCIMIWChatRoomEntriesOperationType, roomId: string, entries: Map) => void; /** * [ZH] * --- * 超级群消息 kv 被更新 * @param messages 被更新的消息集合 * --- * [EN] * --- * Supergroup message KV is updated. * @param messages The collection of messages that have been updated. * --- */ onRemoteUltraGroupMessageExpansionUpdated?: (messages: Array) => void; /** * [ZH] * --- * 超级群消息被更改 * @param messages 被更新的消息集合 * --- * [EN] * --- * Super Group Messages Updated * @param messages Specifies the collection of updated messages. * --- */ onRemoteUltraGroupMessageModified?: (messages: Array) => void; /** * [ZH] * --- * 超级群消息被撤回 * @param messages 撤回的消息集合 * --- * [EN] * --- * Ultra Group Message Recalled * @param messages Specifies the collection of messages that have been recalled. * --- */ onRemoteUltraGroupMessageRecalled?: (messages: Array) => void; /** * [ZH] * --- * 超级群已读的监听 * @param targetId 会话 ID * @param channelId 频道 ID,仅支持超级群使用,其他会话类型传 null 即可。 * @param timestamp * --- * [EN] * --- * Ultra Group Read Receipt Listener * @param targetId Conversation ID * @param channelId Channel ID (supported only for ultra groups; for other conversation types, pass `null`). * @param timestamp Indicates the timestamp of the read receipt. * --- */ onUltraGroupReadTimeReceived?: (targetId: string, channelId: string, timestamp: number) => void; /** * [ZH] * --- * 用户输入状态变化的回调 * 当客户端收到用户输入状态的变化时,会回调此接口,通知发生变化的会话以及当前正在输入的RCUltraGroupTypingStatusInfo列表 * @param info 正在输入的RCUltraGroupTypingStatusInfo列表(nil标示当前没有用户正在输入) * --- * [EN] * --- * Callback for User Typing Status Change * This callback is triggered when the client detects a change in the user's typing status. It notifies the affected conversation and provides a list of RCUltraGroupTypingStatusInfo indicating users currently typing. * @param info List of RCUltraGroupTypingStatusInfo indicating users currently typing (nil indicates no users are currently typing) * --- */ onUltraGroupTypingStatusChanged?: (info: Array) => void; /** * [ZH] * --- * 发送含有敏感词消息被拦截的回调 * @param info 被拦截消息的相关信息 * --- * [EN] * --- * Callback for Blocked Messages Containing Sensitive Words * @param info Specifies the details of the blocked message. * --- */ onMessageBlocked?: (info: RCIMIWBlockedMessageInfo) => void; /** * [ZH] * --- * 聊天室状态发生变化的监听 * @param targetId 会话 ID * @param status 聊天室变化的状态 * --- * [EN] * --- * Callback for Chatroom Status Changes * @param targetId The conversation ID * @param status The status of the chatroom change * --- */ onChatRoomStatusChanged?: (targetId: string, status: RCIMIWChatRoomStatus) => void; /** * [ZH] * --- * 收到群聊已读回执请求的监听 * @param targetId 会话 ID * @param messageUId 消息的 messageUid * --- * [EN] * --- * Callback for Receiving Group Chat Read Receipt Request * @param targetId Conversation ID * @param messageUId Message's messageUid * --- */ onGroupMessageReadReceiptRequestReceived?: (targetId: string, messageUId: string) => void; /** * [ZH] * --- * 收到群聊已读回执响应的监听 * @param targetId 会话 ID * @param messageUId 收到回执响应的消息的 messageUId * @param respondUserIds 会话中响应了此消息的用户列表。其中 key: 用户 id ; value: 响应时间。 * --- * [EN] * --- * Listener for Group Chat Read Receipt Response * @param targetId Conversation ID * @param messageUId Message UID of the message for which the read receipt response was received * @param respondUserIds List of users in the conversation who responded to this message. The key is the user ID, and the value is the response time. * --- */ onGroupMessageReadReceiptResponseReceived?: (targetId: string, messageUId: string, respondUserIds: Map) => void; /** * [ZH] * --- * 超级群列表同步完成的回调 * --- * [EN] * --- * Callback for Ultra Group List Synchronization Completion * --- */ onUltraGroupConversationsSynced?: () => void; /** * [ZH] * --- * 远端会话列表同步完成的回调 * @param code 接口回调的状态码,0 代表成功,非 0 代表出现异常 * --- * [EN] * --- * Callback when remote conversation list sync completes * @param code Status code of the sync result. 0 indicates success, non-zero indicates failure. * --- */ onRemoteConversationListSynced?: (code: number) => void; /** * [ZH] * --- * 正在加入聊天室的回调 * @param targetId 聊天室 ID * --- * [EN] * --- * Callback for Joining a Chatroom * @param targetId Specifies the ID of the chatroom. * --- */ onChatRoomJoining?: (targetId: string) => void; /** * [ZH] * --- * 多端登录相关事件通知回调 * @param event 同步事件信息 * --- * [EN] * --- * Callback for multi-device login events * @param event Synchronization event details * --- */ onChatRoomNotifyMultiLoginSync?: (event: RCIMIWChatRoomSyncEvent) => void; /** * [ZH] * --- * 封禁用户相关事件通知回调 * @param event 封禁事件信息 * --- * [EN] * --- * Callback for banned user events * @param event Ban event details * --- */ onChatRoomNotifyBlock?: (event: RCIMIWChatRoomMemberBlockEvent) => void; /** * [ZH] * --- * 禁言相关事件通知回调 * @param event 禁言事件信息 * --- * [EN] * --- * Mute event notification callback * @param event Mute event details * --- */ onChatRoomNotifyBan?: (event: RCIMIWChatRoomMemberBanEvent) => void; } //# sourceMappingURL=RCIMDefines.d.ts.map