Options
All
  • Public
  • Public/Protected
  • All
Menu

Hierarchy

  • SignalingInterface

Implemented by

Index

Methods

  • signalingAccept(options: { account: string; attachExt?: string; autoJoin?: boolean; channelId: string; joinAttachExt?: string; offlineEnabled?: boolean; requestId: string; uid?: number }): Promise<void>
  • 接受进入频道的邀请

    示例

    nim.signalingAccept({
    channelId: 'channel-123',
    account: 'inviter1',
    requestId: 'req-123',
    autoJoin: true
    }).then(function() {
    console.log('接受邀请成功')
    }).catch(function(err) {
    console.log('接受邀请失败', err)
    })

    Parameters

    • options: { account: string; attachExt?: string; autoJoin?: boolean; channelId: string; joinAttachExt?: string; offlineEnabled?: boolean; requestId: string; uid?: number }
      • account: string

        邀请者的账号 account id

      • Optional attachExt?: string

        该操作的附加信息,透传给其他人

      • Optional autoJoin?: boolean

        接受邀请后,是否直接加入频道。默认为 true

      • channelId: string

        频道 id

      • Optional joinAttachExt?: string

        接受邀请后,加入频道的操作附加信息,将在加入频道通知中带给其他频道成员

      • Optional offlineEnabled?: boolean

        是否存入离线消息。默认 false

      • requestId: string

        邀请者邀请的请求id,需要邀请者填写,之后取消邀请、拒绝、接受需要复用该 requestId

      • Optional uid?: number

        接受邀请后,自己在频道中对应的uid。大于零有效,无效时服务器会分配随机唯一的uid

    Returns Promise<void>

  • signalingCall(options: { account: string; attachExt?: string; channelName: string; ext?: string; offlineEnabled?: boolean; pushInfo?: NIMSignalingPushInfo; requestId: string; type: number; uid?: string }): Promise<NIMSignalingChannel>
  • 呼叫: 创建一个频道, 己方加入,并邀请对方加入频道

    注: 组合接口, 相当于调用 signalingCreateAndJoin 后, 调用 signalingInvite.

    示例

    nim.signalingCall({
    type: 1,
    channelName: 'audio-call-' + Date.now(),
    account: 'user1',
    requestId: 'req-' + Date.now(),
    pushInfo: {
    needPush: true,
    pushTitle: '语音通话',
    pushContent: '您有一个语音通话邀请'
    }
    }).then(function(channel) {
    console.log('呼叫成功', channel)
    }).catch(function(err) {
    console.log('呼叫失败', err)
    })

    Parameters

    • options: { account: string; attachExt?: string; channelName: string; ext?: string; offlineEnabled?: boolean; pushInfo?: NIMSignalingPushInfo; requestId: string; type: number; uid?: string }
      • account: string

        受邀请者的账号 account id

      • Optional attachExt?: string

        该操作的附加信息,透传给受邀请者

      • channelName: string

        频道名称

      • Optional ext?: string

        扩展字段

      • Optional offlineEnabled?: boolean

        是否存入离线消息。默认 false

      • Optional pushInfo?: NIMSignalingPushInfo

        推送属性

      • requestId: string

        邀请者邀请的请求id,需要邀请者填写,之后取消邀请、拒绝、接受需要复用该 requestId

      • type: number

        频道类型, 通话类型 1: 音频; 2: 视频; 3: 其他

      • Optional uid?: string

        自己在频道中对应的uid,大于零有效,无效时服务器会分配随机唯一的uid

    Returns Promise<NIMSignalingChannel>

  • signalingCallEx(options: { account: string; attachExt?: string; channelName: string; ext?: string; nertcChannelName?: string; nertcJoinRoomQueryParamMap?: string; nertcTokenTtl?: string; offlineEnabled?: boolean; pushInfo?: NIMSignalingPushInfo; requestId: string; type: number; uid?: string }): Promise<NIMSignalingChannel>
  • 呼叫加入音视频频道: 创建一个频道, 己方加入,并邀请对方加入音视频的频道

    注: 组合接口, 比 signalingCall 多了云信 G2 音视频相关的参数

    示例

    nim.signalingCallEx({
    type: 2,
    channelName: 'video-call-' + Date.now(),
    account: 'user1',
    requestId: 'req-' + Date.now(),
    nertcChannelName: 'rtc-room-123',
    pushInfo: {
    needPush: true,
    pushTitle: '视频通话',
    pushContent: '您有一个视频通话邀请'
    }
    }).then(function(channel) {
    console.log('呼叫成功', channel)
    }).catch(function(err) {
    console.log('呼叫失败', err)
    })

    Parameters

    • options: { account: string; attachExt?: string; channelName: string; ext?: string; nertcChannelName?: string; nertcJoinRoomQueryParamMap?: string; nertcTokenTtl?: string; offlineEnabled?: boolean; pushInfo?: NIMSignalingPushInfo; requestId: string; type: number; uid?: string }
      • account: string

        受邀请者的账号 account id

      • Optional attachExt?: string

        该操作的附加信息,透传给受邀请者

      • channelName: string

        频道名称

      • Optional ext?: string

        扩展字段

      • Optional nertcChannelName?: string

        云信 G2-RTC 的房间名,加入频道时 sdk 会携带这个参数, 再返回对应的 token

      • Optional nertcJoinRoomQueryParamMap?: string

        云信G2-RTC加入房间的请求参数,推荐传入 JSON 序列化字符串

      • Optional nertcTokenTtl?: string

        云信 G2-RTC 的 token 的有效期,表示 token 的过期时间,单位秒,选填,默认10分钟

      • Optional offlineEnabled?: boolean

        是否存入离线消息。默认 false

      • Optional pushInfo?: NIMSignalingPushInfo

        推送属性

      • requestId: string

        邀请者邀请的请求id,需要邀请者填写,之后取消邀请、拒绝、接受需要复用该 requestId

      • type: number

        频道类型, 通话类型 1: 音频; 2: 视频; 3: 其他

      • Optional uid?: string

        自己在频道中对应的uid,大于零有效,无效时服务器会分配随机唯一的uid

    Returns Promise<NIMSignalingChannel>

  • signalingCancel(options: { account: string; attachExt?: string; channelId: string; offlineEnabled?: boolean; requestId: string }): Promise<void>
  • 取消邀请

    示例

    nim.signalingCancel({
    channelId: 'channel-123',
    account: 'user1',
    requestId: 'req-123'
    }).then(function() {
    console.log('取消邀请成功')
    }).catch(function(err) {
    console.log('取消邀请失败', err)
    })

    Parameters

    • options: { account: string; attachExt?: string; channelId: string; offlineEnabled?: boolean; requestId: string }
      • account: string

        受邀请者的账号 account id

      • Optional attachExt?: string

        该操作的附加信息,透传给受邀请者

      • channelId: string

        频道 id

      • Optional offlineEnabled?: boolean

        是否存入离线消息。默认 false

      • requestId: string

        邀请者邀请的请求id,需要邀请者填写,之后取消邀请、拒绝、接受需要复用该 requestId

    Returns Promise<void>

  • signalingClose(options: { attachExt?: string; channelId: string; offlineEnabled?: boolean }): Promise<void>
  • 关闭频道

    示例

    nim.signalingClose({
    channelId: 'channel-123',
    offlineEnabled: true
    }).then(function() {
    console.log('关闭频道成功')
    }).catch(function(err) {
    console.log('关闭频道失败', err)
    })

    Parameters

    • options: { attachExt?: string; channelId: string; offlineEnabled?: boolean }
      • Optional attachExt?: string

        该操作的附加信息,透传给其他人

      • channelId: string

        频道 id

      • Optional offlineEnabled?: boolean

        是否存入离线消息。默认 false

    Returns Promise<void>

  • signalingControl(options: { account?: string; attachExt?: string; channelId: string }): Promise<void>
  • 发送自定义信令

    示例

    nim.signalingControl({
    channelId: 'channel-123',
    attachExt: JSON.stringify({ action: 'mute-video' })
    }).then(function() {
    console.log('发送自定义信令成功')
    }).catch(function(err) {
    console.log('发送自定义信令失败', err)
    })

    Parameters

    • options: { account?: string; attachExt?: string; channelId: string }
      • Optional account?: string

        要通知的目标账号(account id)。如果不传则通知所有人

      • Optional attachExt?: string

        该操作的附加信息,透传给其他人

      • channelId: string

        频道 id

    Returns Promise<void>

  • signalingCreate(options: { channelName: string; ext?: string; type: number }): Promise<NIMSignalingChannel>
  • 创建频道

    示例

    nim.signalingCreate({
    type: 2,
    channelName: 'my-channel-' + Date.now(),
    ext: JSON.stringify({ roomType: 'meeting' })
    }).then(function(channel) {
    console.log('创建频道成功', channel)
    }).catch(function(err) {
    console.log('创建频道失败', err)
    })

    Parameters

    • options: { channelName: string; ext?: string; type: number }
      • channelName: string

        频道名称

      • Optional ext?: string

        扩展字段

      • type: number

        频道类型, 通话类型 1: 音频; 2: 视频; 3: 其他

    Returns Promise<NIMSignalingChannel>

  • signalingCreateAndJoin(options: { attachExt?: string; channelName: string; ext?: string; offlineEnabled?: boolean; type: number; uid?: string }): Promise<NIMSignalingChannel>
  • 如果不存在房间, 则创建一个频道,并且己方加入. 如果已存在频道,则己方直接加入

    注: 组合接口, 相当于调用 signalingCreate 后, 调用 signalingJoin.

    示例

    nim.signalingCreateAndJoin({
    type: 2,
    channelName: 'room-' + Date.now()
    }).then(function(channel) {
    console.log('创建并加入频道成功', channel)
    }).catch(function(err) {
    console.log('创建并加入频道失败', err)
    })

    Parameters

    • options: { attachExt?: string; channelName: string; ext?: string; offlineEnabled?: boolean; type: number; uid?: string }
      • Optional attachExt?: string

        该操作的附加信息,透传给受邀请者

      • channelName: string

        频道名称

      • Optional ext?: string

        扩展字段

      • Optional offlineEnabled?: boolean

        是否存入离线消息。默认 false

      • type: number

        频道类型, 通话类型 1: 音频; 2: 视频; 3: 其他

      • Optional uid?: string

        自己在频道中对应的uid,大于零有效,无效时服务器会分配随机唯一的uid

    Returns Promise<NIMSignalingChannel>

  • 延长频道的有效期

    示例

    nim.signalingDelay({
    channelId: 'channel-123'
    }).then(function(channel) {
    console.log('延长频道有效期成功', channel)
    }).catch(function(err) {
    console.log('延长频道有效期失败', err)
    })

    Parameters

    • options: { channelId: string }
      • channelId: string

        频道id,唯一标识

    Returns Promise<NIMSignalingChannel>

  • 查询频道信息. 根据 channelName 查询房间信息

    示例

    nim.signalingGetChannelInfo({
    channelName: 'my-channel-123'
    }).then(function(channel) {
    console.log('查询频道信息成功', channel)
    console.log('频道成员', channel.members)
    }).catch(function(err) {
    console.log('查询频道信息失败', err)
    })

    Parameters

    • options: { channelName: string }
      • channelName: string

        频道名

    Returns Promise<NIMSignalingChannel>

  • signalingInvite(options: { account: string; attachExt?: string; channelId: string; offlineEnabled?: boolean; pushInfo?: NIMSignalingPushInfo; requestId: string }): Promise<void>
  • 邀请某人进入频道

    示例

    nim.signalingInvite({
    channelId: 'channel-123',
    account: 'user1',
    requestId: 'req-' + Date.now(),
    pushInfo: {
    needPush: true,
    pushContent: '邀请您加入通话'
    }
    }).then(function() {
    console.log('邀请成功')
    }).catch(function(err) {
    console.log('邀请失败', err)
    })

    Parameters

    • options: { account: string; attachExt?: string; channelId: string; offlineEnabled?: boolean; pushInfo?: NIMSignalingPushInfo; requestId: string }
      • account: string

        受邀请者的账号 account id

      • Optional attachExt?: string

        该操作的附加信息,透传给受邀请者

      • channelId: string

        频道 id

      • Optional offlineEnabled?: boolean

        是否存入离线消息。默认 false

      • Optional pushInfo?: NIMSignalingPushInfo

        推送属性

      • requestId: string

        邀请者邀请的请求id,需要邀请者填写,之后取消邀请、拒绝、接受需要复用该 requestId

    Returns Promise<void>

  • signalingJoin(options: { attachExt?: string; channelId: string; offlineEnabled?: boolean; uid?: number }): Promise<NIMSignalingChannel>
  • 加入频道

    示例

    nim.signalingJoin({
    channelId: 'channel-123'
    }).then(function(channel) {
    console.log('加入频道成功', channel)
    }).catch(function(err) {
    console.log('加入频道失败', err)
    })

    Parameters

    • options: { attachExt?: string; channelId: string; offlineEnabled?: boolean; uid?: number }
      • Optional attachExt?: string

        该操作的附加信息,透传给其他人

      • channelId: string

        频道 id

      • Optional offlineEnabled?: boolean

        是否存入离线消息。默认 false

      • Optional uid?: number

        自己在频道中对应的uid,大于零有效,无效时服务器会分配随机唯一的uid

    Returns Promise<NIMSignalingChannel>

  • signalingJoinAndAccept(_options: { account: string; attachExt?: string; channelId: string; nertcChannelName?: string; nertcJoinRoomQueryParamMap?: string; nertcTokenTtl?: number; offlineEnabled?: boolean; requestId: string; uid?: number }): Promise<void>
  • 加入频道并接受邀请。该接口实际为组合接口,等同于先调用加入频道,成功后再调用接受邀请接口。

    示例

    nim.signalingJoinAndAccept({
    channelId: 'channel-123',
    account: 'inviter1',
    requestId: 'req-123',
    nertcChannelName: 'rtc-room-123'
    }).then(function() {
    console.log('加入频道并接受邀请成功')
    }).catch(function(err) {
    console.log('加入频道并接受邀请失败', err)
    })

    Parameters

    • _options: { account: string; attachExt?: string; channelId: string; nertcChannelName?: string; nertcJoinRoomQueryParamMap?: string; nertcTokenTtl?: number; offlineEnabled?: boolean; requestId: string; uid?: number }
      • account: string

        对方accid,必须

      • Optional attachExt?: string

        该操作的附加信息,透传给其他人

      • channelId: string

        频道 id

      • Optional nertcChannelName?: string

        云信G2-RTC的房间名,加入频道请求时携带,则会返回token

      • Optional nertcJoinRoomQueryParamMap?: string

        云信G2-RTC加入房间的请求参数,推荐传入 JSON 序列化字符串

      • Optional nertcTokenTtl?: number

        云信G2-RTC的token的有效期,表示token的过期时间,单位秒,选填,默认10分钟

      • Optional offlineEnabled?: boolean

        是否存离线通知,默认false

      • requestId: string

        必须,邀请者邀请的请求id,需要邀请者填写,之后取消邀请、拒绝、接受需要复用该requestId

      • Optional uid?: number

        自己在频道中对应的uid,大于零有效,无效时服务器会分配随机唯一的uid

    Returns Promise<void>

  • signalingLeave(options: { attachExt?: string; channelId: string; offlineEnabled?: boolean }): Promise<void>
  • 离开频道

    示例

    nim.signalingLeave({
    channelId: 'channel-123'
    }).then(function() {
    console.log('离开频道成功')
    }).catch(function(err) {
    console.log('离开频道失败', err)
    })

    Parameters

    • options: { attachExt?: string; channelId: string; offlineEnabled?: boolean }
      • Optional attachExt?: string

        该操作的附加信息,透传给其他人

      • channelId: string

        频道 id

      • Optional offlineEnabled?: boolean

        是否存入离线消息。默认 false

    Returns Promise<void>

  • signalingMarkMsgRead(options: { msgid: string[] | number[] }): Promise<void>
  • 标记信令消息已收到, 下次不会在离线同步中收到此消息

    示例

    nim.signalingMarkMsgRead({
    msgid: ['msg-1', 'msg-2']
    }).then(function() {
    console.log('标记信令消息已读成功')
    }).catch(function(err) {
    console.log('标记信令消息已读失败', err)
    })

    Parameters

    • options: { msgid: string[] | number[] }
      • msgid: string[] | number[]

        需要标记的已读的信令消息 id

    Returns Promise<void>

  • signalingReject(options: { account: string; attachExt?: string; channelId: string; offlineEnabled?: boolean; requestId: string }): Promise<void>
  • 拒绝进入频道的邀请

    示例

    nim.signalingReject({
    channelId: 'channel-123',
    account: 'inviter1',
    requestId: 'req-123',
    attachExt: JSON.stringify({ reason: '忙碌中' })
    }).then(function() {
    console.log('拒绝邀请成功')
    }).catch(function(err) {
    console.log('拒绝邀请失败', err)
    })

    Parameters

    • options: { account: string; attachExt?: string; channelId: string; offlineEnabled?: boolean; requestId: string }
      • account: string

        邀请者的账号 account id

      • Optional attachExt?: string

        该操作的附加信息,透传给其他人

      • channelId: string

        频道 id

      • Optional offlineEnabled?: boolean

        是否存入离线消息。默认 false

      • requestId: string

        邀请者邀请的请求id,需要邀请者填写,之后取消邀请、拒绝、接受需要复用该 requestId

    Returns Promise<void>