Flutter API 参考

更新时间: 2025/01/22 14:16:05

网易云信即时通讯 SDK(NetEase IM SDK,简称 NIM SDK)提供信令服务,支持呼叫邀请、频道管理、用户管理、离线消息同步、多端同步和自定义控制信令。

本文介绍信令服务 Flutter 相关 API。

API 概览

信令监听

API 说明 起始版本
listen 注册信令相关监听器 V10.4.0
cancel 取消注册信令相关监听器 V10.4.0

信令操作

API 说明 起始版本
call 直接呼叫对方加入房间 V10.4.0
callSetup 呼叫建立,包括加入信令频道房间,同时接受对方呼叫 V10.4.0
createRoom 创建信令频道房间 V10.4.0
closeRoom 关闭信令频道房间 V10.4.0
joinRoom 加入信令频道房间 V10.4.0
leaveRoom 离开信令频道房间 V10.4.0
invite 邀请成员加入信令频道房间 V10.4.0
cancelInvite 取消邀请 V10.4.0
rejectInvite 拒绝邀请 V10.4.0
acceptInvite 接受邀请 V10.4.0
sendControl 发送自定义控制信令 V10.4.0
getRoomInfoByChannelName 根据频道名称查询频道房间信息 V10.4.0

接口

SignallingService 类提供信令服务相关接口。

listen

接口描述

注册信令服务相关监听。

注册成功后,当事件发生时,SDK 会触发相关回调通知。

  • 建议在初始化后调用该方法。
  • 全局只需注册一次。
  • 该方法为同步。

回调事件

  • onOnlineEvent:在线状态事件回调,返回在线事件对象,包括关闭房间、加入房间、离开房间、邀请加入房间、取消邀请加入房间、拒绝加入邀请、接受加入邀请、控制事件。当本地端或多端同步在线事件成功时会触发该回调。
  • onOfflineEvent:离线状态事件回调,返回离线事件对象,包括关闭房间、加入房间、离开房间、邀请加入房间、取消邀请加入房间、拒绝加入邀请、接受加入邀请。当本地端或多端同步离线事件成功时会触发该回调。
  • onMultiClientEvent:多端事件操作回调,返回多端操作的事件对象,包括拒绝加入邀请、接受加入邀请。当多端操作事件成功时会触发该回调。
  • onSyncRoomInfoList:登录后同步信令频道房间列表回调。返回当前未退出的信令频道房间列表。

示例代码

DartNimCore.instance.signallingService.onOnlineEvent.listen((event) {
  //todo something
});

NimCore.instance.signallingService.onOfflineEvent.listen((event) {
  //todo something
});

NimCore.instance.signallingService.onMultiClientEvent.listen((event) {
  //todo something
});

NimCore.instance.signallingService.onMultiClientEvent.listen((event) {
  //todo something
});  

返回值

cancel

接口描述

取消注册信令服务相关监听。

该方法为同步。

示例代码

Dartvar listener = NimCore.instance.signallingService.onOnlineEvent.listen((event) {
      //todo something
    });
    
    listener.cancel();

返回值

call

接口描述

直接呼叫对方加入信令频道房间。

建立呼叫的正常流程如下:


flowchart LR
  classDef default fill:#337EFF,stroke:#337EFF,stroke-width:0px,color:#FFFFFF;

  A("创建信令频道房间(createRoom)") --> B("自己加入房间(joinRoom)") --> C("邀请对方加入房间(invite)")
  click A "#createRoom"
  click B "#joinRoom"
  click C "#invite"

为了加速呼叫流程,网易云信信令通过将几个接口进行组合封装。本接口即组合上述三个接口,直接呼叫对方加入信令频道房间。如果您需要精确控制每一步,请通过调用单个接口实现。

参数说明

DartFuture<NIMResult<NIMSignallingCallResult>> call(
    NIMSignallingCallParams params) {
  throw UnimplementedError('call() is not implemented');
}
参数名称 类型 是否必填 默认值 说明
params NIMSignallingCallParams - 呼叫配置参数。

示例代码

DartNimCore.instance.signallingService.call(params).then((result){
      if (result.isSuccess) {
        //todo success
      }else{
        //todo error
      }
    });

返回值

NIMResult<NIMSignallingCallResult>:呼叫回包,调用呼叫接口成功的返回结果

callSetup

接口描述

接通呼叫。

接通呼叫的正常流程如下:


flowchart LR
  classDef default fill:#337EFF,stroke:#337EFF,stroke-width:0px,color:#FFFFFF;

  A("加入信令频道房间(joinRoom)") --> B("接受对方的呼叫(acceptInvite)")
  click A "#joinRoom"
  click B "#acceptInvite"

本接口组合上述两个接口,直接接通呼叫。如果您需要精确控制每一步,请通过调用单个接口实现。

参数说明

DartFuture<NIMResult<NIMSignallingCallSetupResult>> callSetup(
    NIMSignallingCallSetupParams params) {
  throw UnimplementedError('callSetup() is not implemented');
}
参数名称 类型 是否必填 默认值 说明
params NIMSignallingCallSetupParams - 接通呼叫的配置参数。

示例代码

DartNimCore.instance.signallingService.callSetup(params).then((result){
      if (result.isSuccess) {
        //todo success
      }else{
        //todo error
      }
    });

返回值

NIMResult<NIMSignallingCallSetupResult>:接受呼叫请求的回包,即调用建立呼叫接口成功的返回结果

createRoom

接口描述

创建信令频道房间。

  • 频道与房间一一对应,可直接视为同一含义。
  • 在服务器中,频道名称存在唯一性,即相同的频道名,在服务器同时只能存在一个。
  • 频道房间创建后,默认的有效时间为 2 小时。
  • 频道房间中的人数默认上限为 100。

参数说明

DartFuture<NIMResult<NIMSignallingChannelInfo>> createRoom(
    NIMSignallingChannelType channelType,
    String? channelName,
    String? channelExtension) {
  throw UnimplementedError('createRoom() is not implemented');
}
参数名称 类型 是否必填 默认值 说明
channelType NIMSignallingChannelType - 频道类型。可选择音频、视频或自定义频道。
房间创建后与频道类型绑定。
channelName String - 频道名称。
建议使用与业务有相关场景的名称,便于页面显示。
channelExtension String - 频道相关扩展字段,JSON 格式,长度最大为 4096 字符。

示例代码

DartNimCore.instance.signallingService.createRoom(type,'name',null).then((result){
      if (result.isSuccess) {
        //todo success
      }else{
        //todo error
      }
    });

返回值

NIMResult<NIMSignallingChannelInfo>:信令频道信息

closeRoom

接口描述

关闭信令频道房间。

房间内的所有人都可以关闭信令频道房间。关闭后,房间内的所有人都会收到房间被关闭的通知。

如果房间内的用户都没有主动关闭信令频道房间,那么服务器默认在会 2 小时后销毁该信令频道房间(2 小时内没有新用户加入房间,如有,从加入后再开始计算)。

参数说明

DartFuture<NIMResult<void>> closeRoom(
    String channelId, bool? offlineEnabled, String? serverExtension) {
  throw UnimplementedError('closeRoom() is not implemented');
}
参数名称 类型 是否必填 默认值 说明
channelId String - 频道 ID,房间的唯一标识。
offlineEnabled bool false 是否需要存离线消息。默认为 false,即不存。如果设置为 true,存离线,则用户离线状态下再次上线会收到通知消息。
serverExtension String - 服务端扩展字段,JSON 格式,长度最大为 4096 字符。

示例代码

DartNimCore.instance.signallingService.closeRoom(roomId,true,null).then((result){
      if (result.isSuccess) {
        //todo success
      }else{
        //todo error
      }
    });

返回值

NIMResult<void>

joinRoom

接口描述

加入信令频道房间。加入房间后,房间内的所有人都会收到通知。

参数说明

DartFuture<NIMResult<NIMSignallingRoomInfo>> joinRoom(
    NIMSignallingJoinParams params) {
  throw UnimplementedError('joinRoom() is not implemented');
}
参数名称 类型 是否必填 默认值 说明
params NIMSignallingJoinParams - 加入频道房间的配置参数。

示例代码

DartNimCore.instance.signallingService.joinRoom(params).then((result){
      if (result.isSuccess) {
        //todo success
      }else{
        //todo error
      }
    });

返回值

NIMResult<NIMSignallingRoomInfo>:信令频道房间成员信息

leaveRoom

接口描述

离开信令频道房间。离开房间后,房间内的所有人都会收到通知。

参数说明

DartFuture<NIMResult<void>> leaveRoom(
    String channelId, bool? offlineEnabled, String? serverExtension) {
  throw UnimplementedError('leaveRoom() is not implemented');
}
参数名称 类型 是否必填 默认值 说明
channelId String - 频道 ID,房间的唯一标识。
offlineEnabled bool false 是否需要存离线消息。默认为 false,即不存。如果设置为 true,存离线,则用户离线状态下再次上线会收到通知消息。
serverExtension String - 服务端扩展字段,JSON 格式,长度最大为 4096 字符。

示例代码

DartNimCore.instance.signallingService.leaveRoom('channelId',true,null).then((result){
      if (result.isSuccess) {
        //todo success
      }else{
        //todo error
      }
    });

返回值

NIMResult<void>

invite

接口描述

邀请成员加入信令频道房间。房间内的所有人都能邀请他人进入房间。

发出邀请后,被邀请者会收到通知。

邀请方在邀请时可以配置是否向被邀请方发送推送消息,默认不推送。如果选择推送,但未配置推送相关信息,则服务器将默认发送以下信息:

  • 房间频道类型为音频:xx 邀请您进行语音通话
  • 房间频道类型为视频:xx 邀请您进行视频通话
  • 房间频道类型为自定义:xx 邀请您进行音视频通话

参数说明

DartFuture<NIMResult<void>> invite(NIMSignallingInviteParams params) {
  throw UnimplementedError('invite() is not implemented');
}
参数名称 类型 是否必填 默认值 说明
params NIMSignallingInviteParams - 邀请入房的配置参数。

示例代码

DartNimCore.instance.signallingService.invite(params).then((result){
      if (result.isSuccess) {
        //todo success
      }else{
        //todo error
      }
    });

返回值

NIMResult<void>

cancelInvite

接口描述

取消已发出的进房邀请。

房间内的用户邀请他人进入信令频道房间后,可以取消已发出的进房邀请。取消后,被邀请的用户会收到取消邀请的通知。

只能取消自己发出的邀请,无法影响房间内其他用户发出的邀请。

参数说明

DartFuture<NIMResult<void>> cancelInvite(NIMSignallingCancelInviteParams params) {
  throw UnimplementedError('cancelInvite() is not implemented');
}
参数名称 类型 是否必填 默认值 说明
params NIMSignallingCancelInviteParams - 取消邀请的配置参数。

示例代码

DartNimCore.instance.signallingService.cancelInvite(params).then((result){
      if (result.isSuccess) {
        //todo success
      }else{
        //todo error
      }
    });

返回值

NIMResult<void>

rejectInvite

接口描述

拒绝他人邀请入房的请求,即拒绝加入信令频道房间。拒绝后,邀请人会收到被拒绝的通知。

参数说明

DartFuture<NIMResult<void>> rejectInvite(NIMSignallingRejectInviteParams params) {
  throw UnimplementedError('rejectInvite() is not implemented');
}
参数名称 类型 是否必填 默认值 说明
params NIMSignallingRejectInviteParams - 拒绝邀请的配置参数。

示例代码

DartNimCore.instance.signallingService.rejectInvite(params).then((result){
      if (result.isSuccess) {
        //todo success
      }else{
        //todo error
      }
    });

返回值

NIMResult<void>

acceptInvite

接口描述

接受他人邀请入房的请求,即加入信令频道房间。接受后,邀请人会收到接受邀请的通知。

参数说明

DartFuture<NIMResult<void>> acceptInvite(NIMSignallingAcceptInviteParams params) {
  throw UnimplementedError('acceptInvite() is not implemented');
}
参数名称 类型 是否必填 默认值 说明
params NIMSignallingAcceptInviteParams - 接受邀请的配置参数。

示例代码

DartNimCore.instance.signallingService.acceptInvite(params).then((result){
      if (result.isSuccess) {
        //todo success
      }else{
        //todo error
      }
    });

返回值

NIMResult<void>

sendControl

接口描述

发送自定义控制信令,用于实现自定义相关的业务逻辑。

发送时可以指定接收用户,如果不指定,则默认发送给频道房间内的所有人。发送成功后,服务器会给在线的接收者发送一个控制通知。

非房间内的用户也可以调用该接口,但是接收者必须在频道房间内,或者接收者是频道房间创建者。

参数说明

DartFuture<NIMResult<void>> sendControl(
    String channelId, String receiverAccountId, String? serverExtension) {
  throw UnimplementedError('sendControl() is not implemented');
}
参数名称 类型 是否必填 默认值 说明
channelId String - 频道 ID,房间的唯一标识。
receiverAccountId String 默认发送给房间内的所有人 接收者账号 ID。
serverExtension String - 服务端扩展字段,可通过该字段自定义控制数据,JSON 格式,长度最大为 4096 字符。

示例代码

DartNimCore.instance.signallingService.sendControl('channelId', 'receiverAccountId', 'serverExtension').then((result){
      if (result.isSuccess) {
        //todo success
      }else{
        //todo error
      }
    });

返回值

NIMResult<void>

getRoomInfoByChannelName

接口描述

根据频道名称查询频道房间信息。

参数说明

DartFuture<NIMResult<NIMSignallingRoomInfo>> getRoomInfoByChannelName(
    String channelName) {
  throw UnimplementedError('getRoomInfoByChannelName() is not implemented');
}
参数名称 类型 是否必填 默认值 说明
channelName String - 频道名称,在服务器中具有唯一性。

示例代码

Dart NimCore.instance.signallingService.getRoomInfoByChannelName('channelName').then((result){
      if (result.isSuccess) {
        //todo success
      }else{
        //todo error
      }
    });

返回值

NIMResult<NIMSignallingRoomInfo>:信令频道房间成员信息

类/枚举

以下介绍信令相关的类和枚举信息。

NIMSignallingCallParams

直接呼叫的配置参数。

DartNIMSignallingCallParams({
required String calleeAccountId,
required String requestId,
required NIMSignallingChannelType channelType,
String? channelName,
String? channelExtension,
String? serverExtension,
NIMSignallingConfig? signallingConfig,
NIMSignallingPushConfig? pushConfig,
NIMSignallingRtcConfig? rtcConfig,
})
名称 类型 是否必填 默认值 说明
calleeAccountId String - 被呼叫者的用户账号 ID,为空或为空字符串则返回参数错误。
requestId String - 请求 ID,请求的唯一标识,即相同的 RequestId 表示同一个请求。随机数,最大长度 128 位字符,可通过 UUID 实现。
  • 请求 ID 主要为了便于业务实现请求响应绑定。
  • 传入为空或为空字符串则返回参数错误。
  • channelType NIMSignallingChannelType - 频道类型。可选择音频、视频或自定义频道。
    房间创建后与频道类型绑定。
    channelName String - 频道名称。
    建议使用与业务有相关场景的名称,便于页面显示。
    channelExtension String - 频道相关扩展字段,JSON 格式,长度最大为 4096 字符。
    serverExtension String - 服务端扩展字段,JSON 格式,长度最大为 4096 字符。
    signallingConfig NIMSignallingConfig - 信令相关配置项。
    pushConfig NIMSignallingPushConfig - 推送相关配置项。
    rtcConfig NIMSignallingRtcConfig - 音视频相关配置项。

    NIMSignallingConfig

    信令相关配置参数。

    DartNIMSignallingConfig({
    bool offlineEnabled = true,
    bool unreadEnabled = true,
    int? selfUid,
    })
    
    名称 类型 是否必填 默认值 说明
    offlineEnabled bool true 是否需要存离线消息。默认为 true,即存离线,当用户离线状态下再次上线会收到通知消息。
    unreadEnabled bool true 是否需要计未读数。默认为 true,需要。
    selfUid int - 用户 uid(音视频的用户账号 ID)。

    NIMSignallingPushConfig

    推送相关配置参数。

    DartNIMSignallingPushConfig({
    bool? pushEnabled,
    String? pushTitle,
    String? pushContent,
    String? pushPayload,
    })
    
    名称 类型 是否必填 默认值 说明
    pushEnabled bool true 是否需要推送。默认为 true,需要。
    pushTitle String - 推送标题。pushEnabled 为 true 时,该字段必填。
    pushContent String - 推送文案。pushEnabled 为 true 时,该字段必填。
    pushPayload String - 推送数据。pushEnabled 为 true 时,该字段必填。

    NIMSignallingRtcConfig

    音视频相关配置参数。

    DartNIMSignallingRtcConfig({
    String? rtcChannelName,
    int? rtcTokenTtl,
    String? rtcParams,
    })
    
    名称 类型 是否必填 默认值 说明
    rtcChannelName String - 网易云信音视频房间频道的名称。与信令的房间频道名称是两个不同的概念。
    rtcTokenTtl int 10*60(十分钟) 音视频房间 token 的过期时间,单位为 s(秒)。
    rtcParams String - 音视频 SDK 相关参数,JSON 格式。。IM 信令仅透传相关参数。

    NIMSignallingCallResult

    呼叫回包,即调用呼叫接口成功的返回结果。

    DartNIMSignallingCallResult({
    NIMSignallingRoomInfo? roomInfo,
    NIMSignallingRtcInfo? rtcInfo,
    required int callStatus,
    })
    
    名称 类型 是否必返回 是否只读 说明
    roomInfo NIMSignallingRoomInfo 频道房间的相关信息。
    rtcInfo NIMSignallingRtcInfo 音视频房间的相关信息。
    callStatus int 呼叫状态。
  • 200:呼叫成功。
  • 118308:信令成员不在线,但推送可达。
  • 118309:信令成员不在线,且推送不可达。
  • NIMSignallingChannelInfo

    信令频道信息。

    DartNIMSignallingChannelInfo({
    String? channelName,
    required String channelId,
    required NIMSignallingChannelType channelType,
    String? channelExtension,
    int? createTime,
    int? expireTime,
    required String creatorAccountId,
    })
    
    名称 类型 是否必返回 是否只读 说明
    channelName String 信令频道名称。
    如果请求时未传入,则该字段为空。
    channelId String 信令频道 ID,频道房间的唯一标识。
    channelType NIMSignallingChannelType 频道类型,房间创建后与频道类型绑定。
    channelExtension String - 频道相关扩展字段,JSON 格式,长度最大为 4096 字符。
    creatorAccountId String - 创建者的用户账号 ID。
    createTime int - 频道房间的创建时间。
    expireTime int - 频道房间的过期时间。

    NIMSignallingRtcInfo

    音视频相关信息。

    • 如果请求时传入了音视频房间频道信息(NIMSignallingRtcConfig.rtcChannelName),则服务器会同时返回进入音视频房间的 Token 信息。
    • 如果未传入,则不返回。
    DartNIMSignallingRtcInfo({
    required String rtcToken,
    int? rtcTokenTtl,
    String? rtcParams,
    })
    
    名称 类型 是否必返回 说明
    rtcToken String 进入音视频房间对应的 Token。
    rtcTokenTtl int 音视频房间 Token 的过期时间。
    rtcParams String 频道类型,房间创建后与频道类型绑定。

    NIMSignallingCallSetupParams

    呼叫建立的配置参数。包含接收方接入的信令频道房间信息和音视频房间相关信息。

    DartNIMSignallingCallSetupParams({
    required String channelId,
    required String callerAccountId,
    required String requestId,
    String? serverExtension,
    NIMSignallingConfig? signallingConfig,
    NIMSignallingRtcConfig? rtcConfig,
    })
    
    名称 类型 是否必填 默认值 说明
    channelId String - 信令频道 ID。
    callerAccountId String - 接受呼叫的用户账号 ID,为空或为空字符串则返回参数错误。
    requestId String - 请求 ID,请求的唯一标识,即相同的 RequestId 表示同一个请求。随机数,最大长度 128 位字符,可通过 UUID 实现。
  • 请求 ID 主要为了便于业务实现请求响应绑定。
  • 传入为空或为空字符串则返回参数错误。
  • serverExtension String - 服务端扩展字段,JSON 格式,长度最大为 4096 字符。
    signallingConfig NIMSignallingConfig - 信令相关配置项(未读配置字段 unreadEnabled 在接受场景无效)。
    rtcConfig NIMSignallingRtcConfig - 音视频相关配置项。

    NIMSignallingCallSetupResult

    接受呼叫请求的回包,即调用建立呼叫接口成功的返回结果。

    DartNIMSignallingCallSetupResult({
    NIMSignallingRoomInfo? roomInfo,
    NIMSignallingRtcInfo? rtcInfo,
    required int callStatus,
    })
    
    名称 类型 是否必返回 是否只读 说明
    roomInfo NIMSignallingRoomInfo 频道房间的相关信息。
    rtcInfo NIMSignallingRtcInfo 音视频房间的相关信息。
    callStatus int 呼叫状态。
  • 200:呼叫成功。
  • 118308:信令成员不在线,但推送可达。
  • 118309:信令成员不在线,且推送不可达。
  • NIMSignallingMember

    信令频道房间成员信息。

    DartNIMSignallingMember({
    required String accountId,
    required int uid,
    int? joinTime,
    int? expireTime,
    required String deviceId,
    })
    
    名称 类型 是否必返回 是否只读 说明
    accountId String 成员账号 ID。
    uid int 成员 UID。业务参数,一般映射为音视频房间 ID。
    joinTime int 用户加入信令频道房间的时间。
    expireTime int 用户信令频道房间的过期时间。
    deviceId String 成员操作的设备 ID。

    NIMSignallingRoomInfo

    信令频道房间成员信息。

    DartNIMSignallingRoomInfo({
    NIMSignallingChannelInfo? channelInfo,
    List<NIMSignallingMember>? members,
    })
    
    名称 类型 是否必返回 是否只读 说明
    channelInfo NIMSignallingChannelInfo 信令频道房间的相关信息(其中频道房间的国企时间会根据时间进行更新调整)。
    members List<NIMSignallingMember> 成员列表信息。

    NIMSignallingJoinParams

    加入信令频道房间的配置参数。

    DartNIMSignallingJoinParams({
    required String channelId,
    String? serverExtension,
    NIMSignallingConfig? signallingConfig,
    NIMSignallingRtcConfig? rtcConfig,
    })
    
    名称 类型 是否必填 默认值 说明
    channelId String - 信令频道 ID。
    serverExtension String - 服务端扩展字段,JSON 格式,长度最大为 4096 字符。
    signallingConfig NIMSignallingConfig - 信令相关配置项。
    rtcConfig NIMSignallingRtcConfig - 音视频相关配置项。

    NIMSignallingInviteParams

    邀请成员加入信令频道房间的配置参数。

    DartNIMSignallingInviteParams({
    required String channelId,
    required String inviteeAccountId,
    required String requestId,
    String? serverExtension,
    NIMSignallingConfig? signallingConfig,
    NIMSignallingPushConfig? pushConfig,
    })
    
    名称 类型 是否必填 默认值 说明
    channelId String - 信令频道 ID。
    inviteeAccountId String - 被邀请者的用户账号 ID,为空或为空字符串则返回参数错误。
    requestId String - 请求 ID,请求的唯一标识,即相同的 RequestId 表示同一个请求。随机数,最大长度 128 位字符,可通过 UUID 实现。
  • 请求 ID 主要为了便于业务实现请求响应绑定。
  • 传入为空或为空字符串则返回参数错误。
  • serverExtension String - 服务端扩展字段,JSON 格式,长度最大为 4096 字符。
    signallingConfig NIMSignallingConfig - 信令相关配置项(其中 selfUid 字段在此场景中无效)。
    pushConfig NIMSignallingPushConfig - 推送相关配置项。

    NIMSignallingCancelInviteParams

    取消邀请成员加入信令频道房间请求的配置参数。

    DartNIMSignallingCancelInviteParams({
    required String channelId,
    required String inviteeAccountId,
    required String requestId,
    String? serverExtension,
    bool offlineEnabled = true,
    })
    
    名称 类型 是否必填 默认值 说明
    channelId String - 信令频道 ID。
    inviteeAccountId String - 被邀请者的用户账号 ID,为空或为空字符串则返回参数错误。
    requestId String - 请求 ID,请求的唯一标识,即相同的 RequestId 表示同一个请求。随机数,最大长度 128 位字符,可通过 UUID 实现。
  • 请求 ID 主要为了便于业务实现请求响应绑定。
  • 传入为空或为空字符串则返回参数错误。
  • serverExtension String - 服务端扩展字段,JSON 格式,长度最大为 4096 字符。
    offlineEnabled bool true 是否需要存离线消息。默认为 true,即存离线,当用户离线状态下再次上线会收到通知消息。

    NIMSignallingRejectInviteParams

    拒绝加入频道房间邀请的配置参数。

    DartNIMSignallingRejectInviteParams({
    required String channelId,
    required String inviterAccountId,
    required String requestId,
    String? serverExtension,
    bool offlineEnabled = true,
    })
    
    名称 类型 是否必填 默认值 说明
    channelId String - 信令频道 ID。
    inviterAccountId String - 邀请者的用户账号 ID,为空或为空字符串则返回参数错误。
    requestId String - 请求 ID,请求的唯一标识,即相同的 RequestId 表示同一个请求。随机数,最大长度 128 位字符,可通过 UUID 实现。
  • 请求 ID 主要为了便于业务实现请求响应绑定。
  • 传入为空或为空字符串则返回参数错误。
  • serverExtension String - 服务端扩展字段,JSON 格式,长度最大为 4096 字符。
    offlineEnabled bool true 是否需要存离线消息。默认为 true,即存离线,当用户离线状态下再次上线会收到通知消息。

    NIMSignallingAcceptInviteParams

    接受加入频道房间邀请的配置参数。

    DartNIMSignallingAcceptInviteParams({
    required String channelId,
    required String inviterAccountId,
    required String requestId,
    String? serverExtension,
    bool offlineEnabled = true,
    })
    
    名称 类型 是否必填 默认值 说明
    channelId String - 信令频道 ID。
    inviterAccountId String - 邀请者的用户账号 ID,为空或为空字符串则返回参数错误。
    requestId String - 请求 ID,请求的唯一标识,即相同的 RequestId 表示同一个请求。随机数,最大长度 128 位字符,可通过 UUID 实现。
  • 请求 ID 主要为了便于业务实现请求响应绑定。
  • 传入为空或为空字符串则返回参数错误。
  • serverExtension String - 服务端扩展字段,JSON 格式,长度最大为 4096 字符。
    offlineEnabled bool true 是否需要存离线消息。默认为 true,即存离线,当用户离线状态下再次上线会收到通知消息。

    NIMSignallingEvent

    信令事件信息。

    DartNIMSignallingEvent({
    required NIMSignallingEventType eventType,
    required NIMSignallingChannelInfo? channelInfo,
    required String operatorAccountId,
    String? serverExtension,
    required int time,
    String? inviteeAccountId,
    String? inviterAccountId,
    String? requestId,
    NIMSignallingPushConfig? pushConfig,
    bool? unreadEnabled,
    NIMSignallingMember? member,
    })
    
    名称 类型 是否必返回 是否只读 说明
    eventType NIMSignallingEventType 信令频道事件类型。
    channelInfo NIMSignallingChannelInfo 信令频道房间信息。
    operatorAccountId String 操作者用户账号 ID。
    serverExtension String 服务端扩展字段,JSON 格式,长度最大为 4096 字符。
    time int 是否需要存离线消息。默认为 true,即存离线,当用户离线状态下再次上线会收到通知消息。
    inviteeAccountId String 被邀请者的用户账号 ID。当邀请或取消邀请他人加入信令频道房间的事件包含该字段。
    inviterAccountId String 邀请者的用户账号 ID。当对方接受或者拒绝邀请的事件包含该字段。
    requestId String 本次请求发起产生的请求 ID, 以下事件包含该字段:
  • 邀请加入信令频道房间
  • 拒绝邀请
  • 接受邀请
  • 取消邀请
  • pushConfig NIMSignallingPushConfig 推送相关配置,邀请加入信令频道房间的事件包含该字段,可能为空(依赖于发起方)。
    unreadEnabled bool 是否需要计未读数。默认为 true,需要。
    member NIMSignallingMember 频道房间成员信息,成员加入房间事件包含该字段。

    NIMSignallingChannelType

    信令频道类型。

    枚举类型 枚举值 说明
    nimSignallingChannelTypeAudio 1 音频频道
    nimSignallingChannelTypeVideo 2 视频频道
    nimSignallingChannelTypeCustom 3 自定义频道

    NIMSignallingEventType

    信令频道事件类型。

    枚举类型 枚举值 说明
    NIMSignallingEventTypeUnknown 0 未知
    NIMSignallingEventTypeClose 1 关闭信令频道房间
    NIMSignallingEventTypeJoin 2 加入信令频道房间
    NIMSignallingEventTypeInvite 3 邀请加入信令频道房间
    NIMSignallingEventTypeCancelInvite 4 取消邀请加入信令频道房间
    NIMSignallingEventTypeReject 5 拒绝入房的邀请
    NIMSignallingEventTypeAccept 6 接受入房的邀请
    NIMSignallingEventTypeLeave 7 离开信令频道房间
    NIMSignallingEventTypeControl 8 自定义控制命令
    此文档是否对你有帮助?
    有帮助
    去反馈
    • API 概览
    • 信令监听
    • 信令操作
    • 接口
    • listen
    • cancel
    • call
    • callSetup
    • createRoom
    • closeRoom
    • joinRoom
    • leaveRoom
    • invite
    • cancelInvite
    • rejectInvite
    • acceptInvite
    • sendControl
    • getRoomInfoByChannelName
    • 类/枚举
    • NIMSignallingCallParams
    • NIMSignallingConfig
    • NIMSignallingPushConfig
    • NIMSignallingRtcConfig
    • NIMSignallingCallResult
    • NIMSignallingChannelInfo
    • NIMSignallingRtcInfo
    • NIMSignallingCallSetupParams
    • NIMSignallingCallSetupResult
    • NIMSignallingMember
    • NIMSignallingRoomInfo
    • NIMSignallingJoinParams
    • NIMSignallingInviteParams
    • NIMSignallingCancelInviteParams
    • NIMSignallingRejectInviteParams
    • NIMSignallingAcceptInviteParams
    • NIMSignallingEvent
    • NIMSignallingChannelType
    • NIMSignallingEventType