UNPKG

nim-web-sdk-ng

Version:

Yunxin IM SDK next generation

2,199 lines (2,198 loc) 52.1 kB
import type { NIMEBaseServiceClass } from './types'; /** * @example * ```js * nim.signaling.callEx(options) * ``` */ export declare class SignalingServiceInterface extends NIMEBaseServiceClass<NIMESignalingEventInterface> { /** * @Multi_Lang_Tag * @locale cn * 呼叫并加入频道: 创建一个频道, 己方加入,并邀请对方加入音视频的频道 * * 注: 组合接口, 等效于 {@link SignalingServiceInterface.create | create} 创建频道 + {@link SignalingServiceInterface.join | join} 加入频道 + {@link SignalingServiceInterface.invite | invite} 邀请他人进入频道 * * - 频道存在默认有效期。若房间内存在成员,频道会自动延长有效期。 * * #### 影响范围 * - 被邀请人收到 {@link NIMESignalingEventInterface.signalingInvite | signalingInvite} 事件通知 * @locale * * @locale en * Call a user to join a channel. The current user creates and joins a channel and the invited user is invited to join the channel. * * Note: this is a combined interface, equivalent to creating a channel, joining a channel, and inviting a user to join the channel. * @locale * * @example * ```ts * const channel = await nim.signaling.callEx({ * channelName: 'video-call-room', * type: 1, * uid: 'caller-uid', * inviteeAccountId: 'callee-account' * }) * ``` */ callEx(options: NIMESignalingCallExOptions): Promise<NIMESignalingChannel>; /** * @Multi_Lang_Tag * @locale cn * 接受呼叫邀请,并加入频道 * * - 收到 {@link NIMESignalingEventInterface.signalingInvite | signalingInvite} 事件通知后,调用此接口加入频道 * * #### 影响范围 * - 调用此接口后,邀请人收到 {@link NIMESignalingEventInterface.signalingAccept | signalingAccept} 事件通知 * - 调用此接口后,频道内的成员收到 {@link NIMESignalingEventInterface.signalingJoin | signalingJoin} 事件通知 * @locale * * @locale en * Accept a call * * Note: This interface responds to the callEx interface, the recipient accepts a call and join the channe; * @locale * * @example * ```ts * const channel = await nim.signaling.joinAndAccept({ * channelId: 'channel-123', * accountId: inviteEvent.accountId, * requestId: inviteEvent.requestId * }) * ``` */ joinAndAccept(options: NIMESignalingJoinAndAcceptOptions): Promise<NIMESignalingChannel>; /** * @Multi_Lang_Tag * @locale cn * - 推荐使用复合接口 {@link SignalingServiceInterface.callEx | callEx} 替换此函数。 * * 通过名称创建频道。注意创建房间后,需要调用 `join` 才可以加入房间。 * * - 频道存在默认有效期。若房间内存在成员,频道会自动延长有效期。 * - 函数返回结果为频道的基本信息。其它用户根据返回值的 channelInfo.channelId 加入房间 * - 创建房间后,应用内所有用户可以通过 {@link SignalingServiceInterface.queryInfo | queryInfo} 查询房间信息 * @locale * * @locale en * Create a channel * @locale * * @example * ```ts * const channel = await nim.signaling.create({ * channelName: 'my-channel', * type: 1 * }) * ``` */ create(options: NIMESignalingCreateOptions): Promise<NIMESignalingChannel>; /** * @Multi_Lang_Tag * @locale cn * 关闭频道。已经关闭的房间无法再加入 * * #### 影响范围 * - 房间内其它用户会收到 {@link NIMESignalingEventInterface.signalingClose | signalingClose} 事件通知 * @locale * * @locale en * Close a channel * @locale * * @example * ```ts * await nim.signaling.close({ channelId: 'channel-123' }) * ``` */ close(options: NIMESignalingCloseOptions): Promise<void>; /** * @Multi_Lang_Tag * @locale cn * 通过频道名称(name)查询频道信息。返回结果包括频道基本信息,以及频道的在线成员列表。 * @locale * * @locale en * Query the information about a channel * @locale * * @example * ```ts * const channelInfo = await nim.signaling.queryInfo({ channelName: 'my-channel' }) * ``` */ queryInfo(options: NIMESignalingQueryInfoOptions): Promise<NIMESignalingChannel>; /** * @Multi_Lang_Tag * @locale cn * 通过 channelId 加入频道。 * * - 相同 uid 不能同时进入一个频道。也不允许同一个 IM 账号多处同时进入一个房间。 * * #### 影响范围 * - 加入频道后,已在房间中的用户会收到 {@link NIMESignalingEventInterface.signalingJoin | signalingJoin} 事件通知 * @locale * * @locale en * Join a channel * @locale * * @example * ```ts * const channel = await nim.signaling.join({ * channelId: 'channel-123', * uid: 'my-uid' * }) * ``` */ join(options: NIMESignalingJoinOptions): Promise<NIMESignalingChannel>; /** * @Multi_Lang_Tag * @locale cn * 离开频道 * * #### 影响范围 * - 房间内其它用户会收到 {@link NIMESignalingEventInterface.signalingLeave | signalingLeave} 事件通知 * @locale * * @locale en * Leave a channel * @locale * * @example * ```ts * await nim.signaling.leave({ channelId: 'channel-123' }) * ``` */ leave(options: NIMESignalingLeaveOptions): Promise<void>; /** * @Multi_Lang_Tag * @locale cn * 邀请某人进入频道。 * * #### 影响范围 * - 被邀请人会收到 {@link NIMESignalingEventInterface.signalingInvite | signalingInvite} 事件通知 * - 被邀请人通过 {@link SignalingServiceInterface.joinAndAccept | joinAndAccept} 加入频道。 * @locale * * @locale en * Invite a user to join a channel * @locale * * @example * ```ts * await nim.signaling.invite({ * channelId: 'channel-123', * inviteeAccountId: 'target-user' * }) * ``` */ invite(options: NIMESignalingInviteOptions): Promise<void>; /** * @Multi_Lang_Tag * @locale cn * 取消邀请 * * #### 影响范围 * - 被邀请人会收到 {@link NIMESignalingEventInterface.signalingCancelInvite | signalingCancelInvite} 事件通知 * - 邀请人取消邀请后,被邀请人无法调用 {@link SignalingServiceInterface.joinAndAccept | joinAndAccept} 加入频道 * @locale * * @locale en * Cancel an invitation * @locale * * @example * ```ts * await nim.signaling.cancelInvite({ * channelId: 'channel-123', * inviteeAccountId: 'target-user', * requestId: 'req-123' * }) * ``` */ cancelInvite(options: NIMESignalingCancelInviteOptions): Promise<void>; /** * @Multi_Lang_Tag * @locale cn * 收到 {@link NIMESignalingEventInterface.signalingInvite | signalingInvite} 事件通知后,通过该函数拒绝进入频道的邀请。 * * #### 影响范围 * - 邀请人收到 {@link NIMESignalingEventInterface.signalingReject | signalingReject} 事件通知 * @locale * * @locale en * Reject to join a channel * @locale * * @example * ```ts * await nim.signaling.reject({ * channelId: inviteEvent.channelId, * accountId: inviteEvent.accountId, * requestId: inviteEvent.requestId * }) * ``` */ reject(options: NIMESignalingRejectOptions): Promise<void>; /** * @Multi_Lang_Tag * @locale cn * * @deprecated * * - 请使用 {@link SignalingServiceInterface.joinAndAccept | joinAndAccept} 替代此函数 * * 接受进入频道的邀请 * @locale * * @locale en * Accept the invitation to join a channel * @locale */ accept(options: NIMESignalingAcceptOptions): Promise<void>; /** * @Multi_Lang_Tag * @locale cn * 发送自定义信令, 只有频道内的用户才可以接收指令 * * ### 影响范围 * - 信令接收方会收到 {@link NIMESignalingEventInterface.signalingCustomCommand | signalingCustomCommand} 事件通知 * @locale * * @locale en * Send a custom signal * @locale * * @example * ```ts * await nim.signaling.sendCustomCommand({ * channelId: 'channel-123', * toAccountId: 'target-user', * customInfo: JSON.stringify({ action: 'mute' }) * }) * ``` */ sendCustomCommand(options: NIMESignalingSendCustomCommandOptions): Promise<void>; } /** * @example * ```js * nim.signaling.on('signalingClose', function (result) {}) * ``` */ export interface NIMESignalingEventInterface { /** * @Multi_Lang_Tag * @locale cn * 收到频道关闭事件 * @locale * * @locale en * Event of closing a channel * @locale */ signalingClose: [result: NIMESignalingCloseNotify]; /** * @Multi_Lang_Tag * @locale cn * 收到成员加入频道事件 * @locale * * @locale en * event of a member joining a channel * @locale */ signalingJoin: [result: NIMESignalingJoinNotify]; /** * @Multi_Lang_Tag * @locale cn * 收到邀请事件 * @locale * * @locale en * Event of receiving an invitation * @locale */ signalingInvite: [result: NIMESignalingInviteNotify]; /** * @Multi_Lang_Tag * @locale cn * 收到取消邀请事件 * @locale * * @locale en * Event of canceling an invitation * @locale */ signalingCancelInvite: [result: NIMESignalingCancelInviteNotify]; /** * @Multi_Lang_Tag * @locale cn * 收到拒绝邀请事件 * @locale * * @locale en * Event of rejecting an invitation * @locale */ signalingReject: [result: NIMESignalingRejectNotify]; /** * @Multi_Lang_Tag * @locale cn * 收到接受邀请事件 * @locale * * @locale en * event of accepting an invitation * @locale */ signalingAccept: [result: NIMESignalingAcceptNotify]; /** * @Multi_Lang_Tag * @locale cn * 收到退出频道事件 * @locale * * @locale en * Event of leaving a channel * @locale */ signalingLeave: [result: NIMESignalingLeaveNotify]; /** * @Multi_Lang_Tag * @locale cn * 收到自定义控制指令事件 * @locale * * @locale en * Event of receiving a custom command * @locale */ signalingCustomCommand: [result: NIMESignalingCustomCommandNotify]; /** * @Multi_Lang_Tag * @locale cn * 初始化时同步获取到已加入的频道列表,触发此事件 * @locale * * @locale en * * @locale */ singalingSyncChannels: [result: NIMESignalingChannel[]]; } export declare const enum NIMEEnumSignalingType { /** * 音频 */ audio = 1, /** * 视频 */ video = 2, /** * 自定义 */ custom = 3 } export interface NIMESignalingChannel { /** * @Multi_Lang_Tag * @locale cn * 具体频道信息 * @locale * * @locale en * Channel information * @locale */ channelInfo: NIMESignalingChannelInfo; /** * @Multi_Lang_Tag * @locale cn * 频道下的成员列表 * @locale * * @locale en * List of members * @locale */ memberList?: NIMESignalingChannelMemberInfo[]; } export interface NIMESignalingJoinAndAcceptResult extends NIMESignalingChannel { /** * 呼叫状态. */ callStatus?: number; } export interface NIMESignalingCallExResult extends NIMESignalingChannel { /** * 呼叫状态. */ callStatus?: number; } export interface NIMESignalingChannelNertcInfo { /** * @Multi_Lang_Tag * @locale cn * 云信 G2-RTC 的房间名. 是在创建频道的请求中携带的 * @locale * * @locale en * * @locale */ nertcChannelName?: string; /** * @Multi_Lang_Tag * @locale cn * 云信 G2-RTC 的 token 的有效期. 在创建频道的请求时携带, 表示token的过期时间 * * 注: 单位秒, 默认10分钟 * @locale * * @locale en * The validity period of the token for NIM G2-RTC, carried in the request for creating a channel and indicates the expiration time of the token. * * Note: Unit: seconds. The default is 10 minutes. * @locale */ nertcTokenTtl?: number; /** * @Multi_Lang_Tag * @locale cn * 云信 G2-RTC 的 token * * 注: 开发者可以使用该 token 加入 G2 的 RTC 房间 * @locale * * @locale en * The token for NIM G2-RTC * * Note: You can use this token to join the G2-RTC room." * @locale */ nertcToken?: string; /** * @Multi_Lang_Tag * @locale cn * 云信 G2-RTC 加入房间的响应内容 * * 注: 这是一个 JSON 序列化字符串 * @locale * * @locale en * Response content for joining the room in NIM G2-RTC. * * Note: This is a serialized JSON string. * @locale */ nertcJoinRoomResponse?: string; /** * @Multi_Lang_Tag * @locale cn * 对应于invite协议的错误码:成功、不在线、推送不可达 * * 注: 这是一个 JSON 序列化字符串 * @locale * * @locale en * Error codes corresponding to the invite protocol: success, offline, push unreachable. * * Note: This is a serialized JSON string. * @locale */ callStatus?: number; } export interface NIMESignalingChannelMemberInfo { /** * @Multi_Lang_Tag * @locale cn * 受邀请者的账号 account id * @locale * * @locale en * The ID of an invited account * @locale */ accid: string; /** * @Multi_Lang_Tag * @locale cn * 自己在频道中对应的uid,大于零有效,无效时服务器会分配随机唯一的uid * @locale * * @locale en * The UID of the current user in the channel, valid if the value is greater than zero. If it is invalid, the server will assign a random unique UID. * @locale */ uid: number; /** * @Multi_Lang_Tag * @locale cn * 加入时间点 * @locale * * @locale en * The time when a member joins a channel * @locale */ createTime: number; /** * @Multi_Lang_Tag * @locale cn * 失效时间点,失效即认为离开了频道 * @locale * * @locale en * The expiration time, indicating when a member leaves a channel * @locale */ expireTime: number; } export interface NIMESignalingChannelInfo { /** * @Multi_Lang_Tag * @locale cn * 频道类型 * @locale * * @locale en * Channel type * @locale */ type: NIMEEnumSignalingType; /** * @Multi_Lang_Tag * @locale cn * 频道名称 * @locale * * @locale en * Channel name * @locale */ name: string; /** * @Multi_Lang_Tag * @locale cn * 频道id,唯一标识 * @locale * * @locale en * The unique channel ID * @locale */ channelId: string; /** * @Multi_Lang_Tag * @locale cn * 扩展字段 * @locale * * @locale en * the extension field * @locale */ ext?: string; /** * @Multi_Lang_Tag * @locale cn * 创建时间点 * @locale * * @locale en * The time when a channel is created * @locale */ createTime: number; /** * @Multi_Lang_Tag * @locale cn * 失效时间点 * @locale * * @locale en * The expiration time * @locale */ expireTime: number; /** * @Multi_Lang_Tag * @locale cn * 创建者的账号 account id * @locale * * @locale en * The account ID of an owner * @locale */ creatorAccid: string; /** * @Multi_Lang_Tag * @locale cn * 该频道是否有效. 为 true 代表无效, 为 false 代表有效. 默认为 false * @locale * * @locale en * Whether the channel is valid * @locale */ invalid?: boolean; /** * @Multi_Lang_Tag * @locale cn * 扩展的设置数据. 诸如 nertc 参数等 * @locale * * @locale en * Extension data, such as nertc parameters * @locale */ pluginSetting?: { /** * @Multi_Lang_Tag * @locale cn * G2 音视频频道的信息. * * 注: 若是使用呼叫接口 signalingCall 且传入了 nertcInfo 的参数的,则会存在 * @locale * * @locale en * * @locale */ nertcInfo?: NIMESignalingChannelNertcInfo; }; } /** * @Multi_Lang_Tag * @locale cn * 呼叫并加入频道的入参 * @locale * * @locale en * Parameters for the CallEx method * @locale */ export interface NIMESignalingCallExOptions { /** * @Multi_Lang_Tag * @locale cn * 频道类型 * @locale * * @locale en * Channel type * @locale */ type: NIMEEnumSignalingType; /** * @Multi_Lang_Tag * @locale cn * 频道名称. * * 注: 不填写会随机生成一个 name * @locale * * @locale en * Channel name * * Note: a random name is generated if unspecified * @locale */ name?: string; /** * @Multi_Lang_Tag * @locale cn * 扩展字段 * @locale * * @locale en * extension field * @locale */ ext?: string; /** * @Multi_Lang_Tag * @locale cn * 自己在频道中对应的uid,大于零有效,无效时服务器会分配随机唯一的uid * @locale * * @locale en * The UID of the current user in the channel, valid if the value is greater than zero. If it is invalid, the server will assign a random unique UID. * @locale */ uid?: string; /** * @Multi_Lang_Tag * @locale cn * 受邀请者的账号 account id * @locale * * @locale en * The account of an invited user * @locale */ toAccid: string; /** * @Multi_Lang_Tag * @locale cn * 邀请者邀请的请求id,需要邀请者填写,之后取消邀请、拒绝、接受需要复用该 requestId * @locale * * @locale en * The request ID for the invitation specified by the inviter. This request ID will be reused for cancelling, rejecting or accepting the invitation later. * @locale */ requestId: string; /** * @Multi_Lang_Tag * @locale cn * 该操作的附加信息,透传给受邀请者 * * 接收者通过 {@link NIMESignalingEventInterface.signalingInvite | signalingInvite} 事件回调的 `metaData.ext` 属性读取其它用户设置的该属性 * @locale * * @locale en * additional message, delivered to others without processing * @locale */ attachExt?: string; /** * @Multi_Lang_Tag * @locale cn * 是否存入离线消息。默认 false * * 若设置为 true,则离线用户上线时,会收到对应消息通知。 * @locale * * @locale en * Whether messages are stored for offline users. The default value is false. * @locale */ needOffline?: boolean; /** * @Multi_Lang_Tag * @locale cn * 插件数据设置 * @locale * * @locale en * Plugin setting * @locale */ pluginSetting: { /** * @Multi_Lang_Tag * @locale cn * G2-RTC 音视频属性 * @locale * * @locale en * G2-RTC audio and video properties * @locale */ nertcInfo?: NIMESignalingCallNertcInfo; }; /** * @Multi_Lang_Tag * @locale cn * 推送属性 * @locale * * @locale en * The properties of a push notification * @locale */ pushInfo?: NIMESignalingPushInfo; } export interface NIMESignalingCallNertcInfo { /** * @Multi_Lang_Tag * @locale cn * 云信 G2-RTC 的房间名. 是在创建频道的请求中携带的 * @locale * * @locale en * Room name, carried when creating a channel * @locale */ nertcChannelName?: string; /** * @Multi_Lang_Tag * @locale cn * 云信 G2-RTC 的 token 的有效期. 在创建频道的请求时携带, 表示token的过期时间 * * 注: 单位秒, 默认10分钟 * @locale * * @locale en * The validity period of the token for NIM G2-RTC, carried in the request for creating a channel and indicates the expiration time of the token. * * Note: Unit: seconds. The default is 10 minutes. * @locale */ nertcTokenTtl?: number; /** * @Multi_Lang_Tag * @locale cn * 透传给云信 G2-RTC 加入房间的请求参数 * * 注: 这是一个 JSON 序列化字符串 * @locale * * @locale en * The request parameters for joining the room in NIM G2-RTC that are transparently transmitted. * * Note: This is a serialized JSON string * @locale */ nertcJoinRoomQueryParamMap?: string; } export interface NIMESignalingJoinAndAcceptOptions { /** * @Multi_Lang_Tag * @locale cn * 频道 id * @locale * * @locale en * Channel ID * @locale */ channelId: string; /** * @Multi_Lang_Tag * @locale cn * 邀请者的账号 account id * @locale * * @locale en * The account of an invited user * @locale */ fromAccid: string; /** * @Multi_Lang_Tag * @locale cn * 邀请者邀请的请求id,需要邀请者填写,之后取消邀请、拒绝、接受需要复用该 requestId * @locale * * @locale en * The request ID for the invitation specified by the inviter. This request ID will be reused for cancelling, rejecting or accepting the invitation later. * @locale */ requestId: string; /** * @Multi_Lang_Tag * @locale cn * 该操作的附加信息,透传给其他人 * * 接收者通过 {@link NIMESignalingEventInterface.signalingAccept | signalingAccept} 事件回调的 `metaData.ext` 属性读取其它用户设置的该属性 * @locale * * @locale en * additional message, delivered to others without processing * @locale */ attachExt?: string; /** * @Multi_Lang_Tag * @locale cn * 是否存入离线消息。默认 false * * 若设置为 true,则离线用户上线时,会收到对应消息通知。 * @locale * * @locale en * Whether messages are stored for offline users. The default value is false. * @locale */ needOffline?: boolean; /** * @Multi_Lang_Tag * @locale cn * 接受邀请后,自己在频道中对应的uid。大于零有效,无效时服务器会分配随机唯一的uid * @locale * * @locale en * The UID of the current user in the channel after accepting the invitation. It is valid if greater than zero. If invalid, the server will assign a random and unique UID * @locale */ uid?: number; /** * @Multi_Lang_Tag * @locale cn * 插件数据设置 * @locale * * @locale en * plugin setting * @locale */ pluginSetting: { /** * @Multi_Lang_Tag * @locale cn * G2-RTC 音视频属性 * @locale * * @locale en * G2-RTC audio and video information * @locale */ nertcInfo?: NIMESignalingCallNertcInfo; }; } /** * @Multi_Lang_Tag * @locale cn * 创建频道的入参 * @locale * * @locale en * The parameter used to create a channel * @locale */ export interface NIMESignalingCreateOptions { /** * @Multi_Lang_Tag * @locale cn * 频道类型 * * number 类型: * - 1: 音频频道 * - 2: 视频频道 * - 3: 自定义频道 * @locale * * @locale en * Channel type * @locale */ type: NIMEEnumSignalingType; /** * @Multi_Lang_Tag * @locale cn * 频道名称 * * 注: 不填写会随机生成一个 name * @locale * * @locale en * Channel name * * note: a random name is generated if unspecified * @locale */ name?: string; /** * @Multi_Lang_Tag * @locale cn * 扩展字段。该字段会等于 `channelInfo.ext` 属性 * @locale * * @locale en * extension field * @locale */ ext?: string; } /** * @Multi_Lang_Tag * @locale cn * 关闭频道的入参 * @locale * * @locale en * The parameter of closing a channel * @locale */ export interface NIMESignalingCloseOptions { /** * @Multi_Lang_Tag * @locale cn * 频道 id * @locale * * @locale en * Channel ID * @locale */ channelId: string; /** * @Multi_Lang_Tag * @locale cn * 该操作的附加信息,透传给其他人 * * 接收者通过 {@link NIMESignalingEventInterface.signalingClose | signalingClose} 事件回调的 `metaData.ext` 属性读取其它用户设置的该属性 * @locale * * @locale en * additional message, delivered to others without processing * @locale */ attachExt?: string; /** * @Multi_Lang_Tag * @locale cn * 是否存入离线消息。默认 false * * 若设置为 true,则离线用户上线时,会收到对应消息通知。 * @locale * * @locale en * Whether messages are stored for offline users. The default value is false. * @locale */ needOffline?: boolean; } /** * @Multi_Lang_Tag * @locale cn * 查询频道信息的入参 * @locale * * @locale en * Parameter for querying the channel information * @locale */ export interface NIMESignalingQueryInfoOptions { /** * @Multi_Lang_Tag * @locale cn * 频道名 * @locale * * @locale en * Channel name * @locale */ name: string; } /** * @Multi_Lang_Tag * @locale cn * 加入频道的入参 * @locale * * @locale en * Parameter for joining a channel * @locale */ export interface NIMESignalingJoinOptions { /** * @Multi_Lang_Tag * @locale cn * 频道 id * @locale * * @locale en * Channel ID * @locale */ channelId: string; /** * @Multi_Lang_Tag * @locale cn * 该操作的附加信息,透传给其他人。 * * 接收者通过 {@link NIMESignalingEventInterface.signalingJoin | signalingJoin} 事件回调的 `metaData.ext` 属性读取其它用户设置的该属性 * @locale * * @locale en * additional message, delivered to others without processing * @locale */ attachExt?: string; /** * @Multi_Lang_Tag * @locale cn * 自己在频道中对应的uid,大于零有效,无效时服务器会分配随机唯一的uid。不能有多个用户用同一个 uid 进入房间 * @locale * * @locale en * The UID of the current user in the channel, valid if the value is greater than zero. If it is invalid, the server will assign a random unique UID. * @locale */ uid?: number; /** * @Multi_Lang_Tag * @locale cn * 是否存入离线消息。默认 false。 * * 若设置为 true,则离线用户上线时,会收到对应消息通知。 * @locale * * @locale en * Whether messages are stored for offline users. The default value is false. * @locale */ needOffline?: boolean; /** * @Multi_Lang_Tag * @locale cn * 扩展的设置数据. 诸如 nertc 参数等 * @locale * * @locale en * Extension data, such as nertc parameters * @locale */ pluginSetting?: { /** * @Multi_Lang_Tag * @locale cn * G2 音视频频道的信息. * * 注: 若是使用呼叫接口 signalingCall 且传入了 nertcInfo 的参数的,则会存在 * @locale * * @locale en * * @locale */ nertcInfo?: NIMESignalingChannelNertcInfo; }; } /** * @Multi_Lang_Tag * @locale cn * 离开频道的入参 * @locale * * @locale en * Parameter for leaving a channel * @locale */ export interface NIMESignalingLeaveOptions { /** * @Multi_Lang_Tag * @locale cn * 频道 id * @locale * * @locale en * Channel ID * @locale */ channelId: string; /** * @Multi_Lang_Tag * @locale cn * 该操作的附加信息,透传给其他人 * * 接收者通过 {@link NIMESignalingEventInterface.signalingLeave | signalingLeave} 事件回调的 `metaData.ext` 属性读取其它用户设置的该属性 * @locale * * @locale en * additional message, delivered to others without processing * @locale */ attachExt?: string; /** * @Multi_Lang_Tag * @locale cn * 是否存入离线消息。默认 false * * 若设置为 true,则离线用户上线时,会收到对应消息通知。 * @locale * * @locale en * Whether messages are stored for offline users. The default value is false. * @locale */ needOffline?: boolean; } /** * @Multi_Lang_Tag * @locale cn * 邀请加入频道的入参 * @locale * * @locale en * Parameter for joining a channel * @locale */ export interface NIMESignalingInviteOptions { /** * @Multi_Lang_Tag * @locale cn * 频道 id * @locale * * @locale en * Channel ID * @locale */ channelId: string; /** * @Multi_Lang_Tag * @locale cn * 受邀请者的账号 account id * @locale * * @locale en * The account of an invited user * @locale */ toAccid: string; /** * @Multi_Lang_Tag * @locale cn * 邀请者邀请的请求id,需要邀请者填写,之后取消邀请、拒绝、接受需要复用该 requestId * @locale * * @locale en * The request ID for the invitation specified by the inviter. This request ID will be reused for cancelling, rejecting or accepting the invitation later. * @locale */ requestId: string; /** * @Multi_Lang_Tag * @locale cn * 该操作的附加信息,透传给受邀请者 * * 接收者通过 {@link NIMESignalingEventInterface.signalingInvite | signalingInvite} 事件回调的 `metaData.ext` 属性读取其它用户设置的该属性 * @locale * * @locale en * additional message, delivered to others without processing * @locale */ attachExt?: string; /** * @Multi_Lang_Tag * @locale cn * 是否存入离线消息。默认 false * * 若设置为 true,则离线用户上线时,会收到对应消息通知。 * @locale * * @locale en * Whether messages are stored for offline users. The default value is false * @locale */ needOffline?: boolean; /** * @Multi_Lang_Tag * @locale cn * 推送属性。若不填写,则默认不推送通知 * @locale * * @locale en * Properties of push notifications * @locale */ pushInfo?: NIMESignalingPushInfo; } export interface NIMESignalingPushInfo { /** * @Multi_Lang_Tag * @locale cn * 是否需要推送,默认false * @locale * * @locale en * Whether a push notification is required for a message. The default value is false. * @locale */ needPush?: boolean; /** * @Multi_Lang_Tag * @locale cn * 推送标题 * @locale * * @locale en * The title of a push notification * @locale */ pushTitle?: string; /** * @Multi_Lang_Tag * @locale cn * 推送内容 * @locale * * @locale en * The body of a push notification * @locale */ pushContent: string; /** * @Multi_Lang_Tag * @locale cn * 推送自定义字段 * @locale * * @locale en * The custom field of a push notification * @locale */ pushPayload?: string; /** * @Multi_Lang_Tag * @locale cn * 是否计入未读计数, 默认为 true * @locale * * @locale en * Whether a push notification is counted as unread. The default value is true. * @locale */ needPushBadge?: boolean; } export interface NIMESignalingCancelInviteOptions { /** * @Multi_Lang_Tag * @locale cn * 频道 id * @locale * * @locale en * Channel ID * @locale */ channelId: string; /** * @Multi_Lang_Tag * @locale cn * 受邀请者的账号 account id * @locale * * @locale en * The account of an invited user * @locale */ toAccid: string; /** * @Multi_Lang_Tag * @locale cn * 邀请者邀请的请求id,需要邀请者填写,之后取消邀请、拒绝、接受需要复用该 requestId * @locale * * @locale en * The request ID for the invitation specified by the inviter. This request ID will be reused for cancelling, rejecting or accepting the invitation later. * @locale */ requestId: string; /** * @Multi_Lang_Tag * @locale cn * 该操作的附加信息,透传给受邀请者 * * 接收者通过 {@link NIMESignalingEventInterface.signalingCancelInvite | signalingCancelInvite} 事件回调的 `metaData.ext` 属性读取其它用户设置的该属性 * @locale * * @locale en * additional message, delivered to others without processing * @locale */ attachExt?: string; /** * @Multi_Lang_Tag * @locale cn * 是否存入离线消息。默认 false * * 若设置为 true,则离线用户上线时,会收到对应消息通知。 * @locale * * @locale en * Whether messages are stored for offline users. The default value is false. * @locale */ needOffline?: boolean; } export interface NIMESignalingRejectOptions { /** * @Multi_Lang_Tag * @locale cn * 频道 id * @locale * * @locale en * Channel ID * @locale */ channelId: string; /** * @Multi_Lang_Tag * @locale cn * 邀请者的账号 account id * @locale * * @locale en * The account of an invited user * @locale */ fromAccid: string; /** * @Multi_Lang_Tag * @locale cn * 邀请者邀请的请求id,需要邀请者填写,之后取消邀请、拒绝、接受需要复用该 requestId * @locale * * @locale en * The request ID for the invitation specified by the inviter. This request ID will be reused for cancelling, rejecting or accepting the invitation later. * @locale */ requestId: string; /** * @Multi_Lang_Tag * @locale cn * 该操作的附加信息,透传给其他人 * * 接收者通过 {@link NIMESignalingEventInterface.signalingReject | signalingReject} 事件回调的 `metaData.ext` 属性读取其它用户设置的该属性 * @locale * * @locale en * additional message, delivered to others without processing * @locale */ attachExt?: string; /** * @Multi_Lang_Tag * @locale cn * 是否存入离线消息。默认 false * * 若设置为 true,则离线用户上线时,会收到对应消息通知。 * @locale * * @locale en * Whether messages are stored for offline users. The default value is false. * @locale */ needOffline?: boolean; } export interface NIMESignalingAcceptOptions { /** * @Multi_Lang_Tag * @locale cn * 频道 id * @locale * * @locale en * Channel ID * @locale */ channelId: string; /** * @Multi_Lang_Tag * @locale cn * 邀请者的账号 account id * @locale * * @locale en * The account of an invited user * @locale */ fromAccid: string; /** * @Multi_Lang_Tag * @locale cn * 邀请者邀请的请求id,需要邀请者填写,之后取消邀请、拒绝、接受需要复用该 requestId * @locale * * @locale en * The request ID for the invitation specified by the inviter. This request ID will be reused for cancelling, rejecting or accepting the invitation later. * @locale */ requestId: string; /** * @Multi_Lang_Tag * @locale cn * 该操作的附加信息,透传给其他人 * * 接收者通过 {@link NIMESignalingEventInterface.signalingAccept | signalingAccept} 事件回调的 `metaData.ext` 属性读取其它用户设置的该属性 * @locale * * @locale en * additional message, delivered to others without processing * @locale */ attachExt?: string; /** * @Multi_Lang_Tag * @locale cn * 是否存入离线消息。默认 false * * 若设置为 true,则离线用户上线时,会收到对应消息通知。 * @locale * * @locale en * Whether messages are stored for offline users. The default value is false. * @locale */ needOffline?: boolean; /** * @Multi_Lang_Tag * @locale cn * 接受邀请后,是否直接加入频道。默认为 false * @locale * * @locale en * Whether to directly join the channel after accepting the invitation. The default is false * @locale */ autoJoin?: boolean; /** * @Multi_Lang_Tag * @locale cn * 接受邀请后,自己在频道中对应的uid。大于零有效,无效时服务器会分配随机唯一的uid * @locale * * @locale en * The UID of the current user in the channel after accepting the invitation. It is valid if greater than zero. If invalid, the server will assign a random and unique UID * @locale */ uid?: number; /** * @Multi_Lang_Tag * @locale cn * 接受邀请后,加入频道的操作附加信息,将在加入频道通知中带给其他频道成员 * @locale * * @locale en * Additional information for joining the channel after accepting the invitation. The notification are sent to other channel members when joining the channel. * @locale */ joinAttachExt?: string; } export interface NIMESignalingSendCustomCommandOptions { /** * @Multi_Lang_Tag * @locale cn * 频道 id * @locale * * @locale en * Channel ID * @locale */ channelId: string; /** * @Multi_Lang_Tag * @locale cn * 要通知的目标账号(account id)。如果不传则通知所有人 * @locale * * @locale en * The target account of a notification, send all members if unspecified * @locale */ toAccid?: string; /** * @Multi_Lang_Tag * @locale cn * 该操作的附加信息,透传给其他人 * * 接收者通过 {@link NIMESignalingEventInterface.signalingCustomCommand | signalingCustomCommand} 事件回调的 `metaData.ext` 属性读取其它用户设置的该属性 * @locale * * @locale en * additional message, delivered to others without processing * @locale */ attachExt?: string; } /** * @Multi_Lang_Tag * @locale cn * 频道的事件类型,包含在线,同步,离线等 * @locale * * @locale en * The event type, including online, synchronization, offline * @locale */ export declare const enum NIMEEnumSignalingEventType { /** * @Multi_Lang_Tag * @locale cn * 1 频道关闭 * @locale * * @locale en * 1 Close a channel * @locale */ kClose = 1, /** * @Multi_Lang_Tag * @locale cn * 2 加入频道 * @locale * * @locale en * 2 Join a channel * @locale */ kJoin = 2, /** * @Multi_Lang_Tag * @locale cn * 3 邀请加入频道 * @locale * * @locale en * 3 invite a user to join a channel * @locale */ kInvite = 3, /** * @Multi_Lang_Tag * @locale cn * 4 取消邀请加入频道 * @locale * * @locale en * 4 cancel an invitation to join a channel * @locale */ kCancelInvite = 4, /** * @Multi_Lang_Tag * @locale cn * 5 拒绝加入频道 * @locale * * @locale en * 5 reject to join a channel * @locale */ kReject = 5, /** * @Multi_Lang_Tag * @locale cn * 6 接受加入频道邀请 * @locale * * @locale en * 6 accept an invitation to join a channel * @locale */ kAccept = 6, /** * @Multi_Lang_Tag * @locale cn * 7 离开 * @locale * * @locale en * 7 leave a channel * @locale */ kLeave = 7, /** * @Multi_Lang_Tag * @locale cn * 8 自定义 * @locale * * @locale en * 8 custom event * @locale */ kCustom = 8 } /** * @Multi_Lang_Tag * @locale cn * 信令通知的特征值定义 * @locale * * @locale en * @locale */ export declare const enum NIMEEnumSignalingNotificationFeature { /** * @Multi_Lang_Tag * @locale cn * 0 在线 * @locale * * @locale en * 0 online * @locale */ kDefault = 0, /** * @Multi_Lang_Tag * @locale cn * 1 离线 * @locale * * @locale en * 1 offline * @locale */ kLeave = 1, /** * @Multi_Lang_Tag * @locale cn * 3 多端同步 * @locale * * @locale en * 3 synchronization * @locale */ kSelfSync = 3 } /** * @Multi_Lang_Tag * @locale cn * 信令通知消息元数据定义 * @locale * * @locale en * @locale */ export interface NIMESignalingNotifyMeta { /** * @Multi_Lang_Tag * @locale cn * 通知类型 * @locale * * @locale en * Notification type * @locale */ eventType: NIMEEnumSignalingEventType; /** * @Multi_Lang_Tag * @locale cn * 频道的信息 * @locale * * @locale en * Channel information * @locale */ channelInfo: NIMESignalingChannelInfo; /** * @Multi_Lang_Tag * @locale cn * 该通知的特征值 * @locale * * @locale en * Notification feature * @locale */ feature: NIMEEnumSignalingNotificationFeature; /** * @Multi_Lang_Tag * @locale cn * 该操作的扩展字段 * @locale * * @locale en * The extension field * @locale */ ext?: string; /** * @Multi_Lang_Tag * @locale cn * 该操作的时间戳 * @locale * * @locale en * the timestamp of the operation * @locale */ time: number; /** * @Multi_Lang_Tag * @locale cn * 该通知的消息 id * @locale * * @locale en * Message ID * @locale */ msgId: string; } /** * @Multi_Lang_Tag * @locale cn * 频道关闭的通知数据 * @locale * * @locale en * The notification of closing a channel * @locale */ export interface NIMESignalingCloseNotify { /** * @Multi_Lang_Tag * @locale cn * 操作人的账号 (account id) * @locale * * @locale en * The account of an operator * @locale */ fromAccid: string; /** * @Multi_Lang_Tag * @locale cn * 通知的元数据 * @locale * * @locale en * The metadata of a notification * @locale */ metaData: NIMESignalingNotifyMeta; } /** * @Multi_Lang_Tag * @locale cn * 加入频道的通知数据 * @locale * * @locale en * Notification of joining a channel * @locale */ export interface NIMESignalingJoinNotify { /** * @Multi_Lang_Tag * @locale cn * 加入成员的账号名 * @locale * * @locale en * The member information used to get the UID. * @locale */ fromAccid: string; /** * 成员在房间里的基本信息 */ member: NIMESignalingChannelMemberInfo; /** * @Multi_Lang_Tag * @locale cn * 通知的元数据 * @locale * * @locale en * The metadata of a notification * @locale */ metaData: NIMESignalingNotifyMeta; } /** * @Multi_Lang_Tag * @locale cn * 邀请加入频道的通知数据 * @locale * * @locale en * The metadata of an notification sent for an invitation * @locale */ export interface NIMESignalingInviteNotify { /** * @Multi_Lang_Tag * @locale cn * 操作者的账号 * @locale * * @locale en * The account of an operator * @locale */ fromAccid: string; /** * @Multi_Lang_Tag * @locale cn * 被邀请者的账号 * @locale * * @locale en * The account of an invited user * @locale */ toAccid: string; /** * @Multi_Lang_Tag * @locale cn * 邀请者邀请的请求 id,用于被邀请者回传 requestId 作对应的回应操作 * @locale * * @locale en * The request ID for an invitation is used by the invitee to respond to the invitation with the corresponding operation * @locale */ requestId: string; /** * @Multi_Lang_Tag * @locale cn * 邀请信息对应的推送属性 * @locale * * @locale en * Information about a push notification * @locale */ pushInfo: NIMESignalingPushInfo; /** * @Multi_Lang_Tag * @locale cn * 通知的元数据 * @locale * * @locale en * The metadata of a notification * @locale */ metaData: NIMESignalingNotifyMeta; } /** * @Multi_Lang_Tag * @locale cn * 取消邀请事件的通知数据 * @locale * * @locale en * The notification of canceling an invitation * @locale */ export interface NIMESignalingCancelInviteNotify { /** * @Multi_Lang_Tag * @locale cn * 操作者的账号 * @locale * * @locale en * The account of an operator * @locale */ fromAccid: string; /** * @Multi_Lang_Tag * @locale cn * 被邀请者的账号 * @locale * * @locale en * The account of an invited user * @locale */ toAccid: string; /** * @Multi_Lang_Tag * @locale cn * 邀请者邀请的请求 id,用于被邀请者回传 requestId 作对应的回应操作 * @locale * * @locale en * The request ID for an invitation is used by the invitee to respond to the invitation with the corresponding operation * @locale */ requestId: string; /** * @Multi_Lang_Tag * @locale cn * 通知的元数据 * @locale * * @locale en * The metadata of a notification * @locale */ metaData: NIMESignalingNotifyMeta; } /** * @Multi_Lang_Tag * @locale cn * 拒绝邀请事件通知信息 * @locale * * @locale en * Notification of rejecting an invitation * @locale */ export interface NIMESignalingRejectNotify { /** * @Multi_Lang_Tag * @locale cn * 操作者的账号 ID * @locale * * @locale en * Operator's account ID * @locale */ fromAccid: string; /** * @Multi_Lang_Tag * @locale cn * 邀请者的账号 * @locale * * @locale en * The account of an inviter * @locale */ toAccid: string; /** * @Multi_Lang_Tag * @locale cn * 邀请者邀请的请求 id,用于被邀请者回传 requestId 作对应的回应操作 * @locale * * @locale en * The request ID for an invitation is used by the invitee to respond to the invitation with the corresponding operation * @locale */ requestId: string; /** * @Multi_Lang_Tag * @locale cn * 通知的元数据 * @locale * * @locale en * The metadata of a notification * @locale */ metaData: NIMESignalingNotifyMeta; } /** * @Multi_Lang_Tag * @locale cn * 同意邀请事件通知信息 * @locale * * @locale en * Notification of accepting an invitation * @locale */ export interface NIMESignalingAcceptNotify { /** * @Multi_Lang_Tag * @locale cn * 操作者的账号 ID * @locale * * @locale en * Operator's account ID * @locale */ fromAccid: string; /** * @Multi_Lang_Tag * @locale cn * 邀请者的账号 * @locale * * @locale en * The account of an inviter * @locale */ toAccid: string; /** * @Multi_Lang_Tag * @locale cn * 邀请者邀请的请求 id,用于被邀请者回传 requestId 作对应的回应操作 * @locale * * @locale en * The request ID for an invitation is used by the invitee to respond to the invitation with the corresponding operation * @locale */ requestId: string; /** * @Multi_Lang_Tag * @locale cn * 通知的元数据 * @locale * * @locale en * The metadata of a notification * @locale */ metaData: NIMESignalingNotifyMeta; } /** * @Multi_Lang_Tag * @locale cn * 退出频道事件通知信息 * @locale * * @locale en * Notification of leaving a channel * @locale */ export interface NIMESignalingLeaveNotify { /** * @Multi_Lang_Tag * @locale cn * 操作者账号 * @locale * * @locale en * The account of an operator * @locale */ fromAccid: string; /** * @Multi_Lang_Tag * @locale cn * 通知的元数据 * @locale * * @locale en * The metadata of a notification * @locale */ metaData: NIMESignalingNotifyMeta; } /** * @Multi_Lang_Tag * @locale cn * 自定义的控制事件通知信息 * @locale * * @locale en * Notification of Custom command events * @locale */ export interface NIMESignalingCustomCommandNotify { /** * @Multi_Lang_Tag * @locale cn * 操作者账号 * @locale * * @locale en * The account of an operator * @locale */ fromAccid: string; /** * @Multi_Lang_Tag * @locale cn * 通知的元数据 * @locale * * @locale en * The metadata of a notification * @locale */ metaData: NIMESignalingNotifyMeta; }