TRTCCallingDelegate.dart 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. /// TRTCCallingDelegate回调事件
  2. enum TRTCCallingDelegate {
  3. /// 错误回调,表示 SDK 不可恢复的错误,一定要监听并分情况给用户适当的界面提示
  4. ///
  5. /// 参数param:
  6. ///
  7. /// errCode 错误码
  8. ///
  9. /// errMsg 错误信息
  10. ///
  11. /// extraInfo 扩展信息字段,个别错误码可能会带额外的信息帮助定位问题
  12. onError,
  13. /// 警告回调,用于告知您一些非严重性问题,例如出现卡顿或者可恢复的解码失败。
  14. ///
  15. /// 参数param:
  16. ///
  17. /// warningCode 错误码
  18. ///
  19. /// warningMsg 警告信息
  20. ///
  21. /// extraInfo 扩展信息字段,个别警告码可能会带额外的信息帮助定位问题
  22. onWarning,
  23. ///本地进房
  24. ///
  25. /// 如果加入成功,result 会是一个正数(result > 0),代表加入房间的时间消耗,单位是毫秒(ms)。
  26. ///
  27. /// 如果加入失败,result 会是一个负数(result < 0),代表进房失败的错误码。
  28. ///
  29. /// 参数param:
  30. ///
  31. /// result > 0 时为进房耗时(ms),result < 0 时为进房错误码
  32. onEnterRoom,
  33. /// 有用户加入当前房间。
  34. ///
  35. /// 参数param:
  36. ///
  37. /// userId 用户标识
  38. onUserEnter,
  39. /// 有用户离开当前房间。
  40. ///
  41. /// 参数param:
  42. ///
  43. /// userId 用户标识
  44. ///
  45. /// reason 离开原因,0表示用户主动退出房间,1表示用户超时退出,2表示被踢出房间。
  46. onUserLeave,
  47. /*
  48. * 正在IM群组通话时,如果其他与会者邀请他人,会收到此回调
  49. * 例如 A-B-C 正在IM群组中,A邀请[D、E]进入通话,B、C会收到[D、E]的回调
  50. * 如果此时 A 再邀请 F 进入群聊,那么B、C会收到[D、E、F]的回调
  51. * @param userIdList 邀请群组
  52. */
  53. onGroupCallInviteeListUpdate,
  54. /*
  55. * 被邀请通话回调
  56. * @param sponsor 邀请者
  57. * @param userIdList 同时还被邀请的人
  58. * @param isFromGroup 是否IM群组邀请
  59. * @param callType 邀请类型 1-语音通话,2-视频通话
  60. */
  61. onInvited,
  62. /*
  63. * 1. 在C2C通话中,只有发起方会收到拒绝回调
  64. * 例如 A 邀请 B、C 进入通话,B拒绝,A可以收到该回调,但C不行
  65. *
  66. * 2. 在IM群组通话中,所有被邀请人均能收到该回调
  67. * 例如 A 邀请 B、C 进入通话,B拒绝,A、C均能收到该回调
  68. * @param userId 拒绝通话的用户
  69. */
  70. onReject,
  71. /*
  72. * 1. 在C2C通话中,只有发起方会收到无人应答的回调
  73. * 例如 A 邀请 B、C 进入通话,B不应答,A可以收到该回调,但C不行
  74. *
  75. * 2. 在IM群组通话中,所有被邀请人均能收到该回调
  76. * 例如 A 邀请 B、C 进入通话,B不应答,A、C均能收到该回调
  77. * @param userId
  78. */
  79. onNoResp,
  80. /*
  81. * 邀请方忙线
  82. * @param userId 忙线用户
  83. */
  84. onLineBusy,
  85. /*
  86. * 作为被邀请方会收到,收到该回调说明本次通话被取消了
  87. */
  88. onCallingCancel,
  89. /*
  90. * 作为被邀请方会收到,收到该回调说明本次通话超时未应答
  91. */
  92. onCallingTimeout,
  93. /*
  94. * 收到该回调说明本次通话结束了
  95. */
  96. onCallEnd,
  97. /// 远端用户是否存在可播放的主路画面(一般用于摄像头)
  98. ///
  99. /// 当您收到 onUserVideoAvailable(userId, true) 通知时,表示该路画面已经有可用的视频数据帧到达。 此时,您需要调用 startRemoteView(userid) 接口加载该用户的远程画面。 然后,您会收到名为 onFirstVideoFrame(userid) 的首帧画面渲染回调。
  100. ///
  101. /// 当您收到 onUserVideoAvailable(userId, false) 通知时,表示该路远程画面已经被关闭,可能由于该用户调用了 muteLocalVideo() 或 stopLocalPreview()。
  102. ///
  103. /// 参数param:
  104. ///
  105. /// userId 用户标识
  106. ///
  107. /// available 画面是否开启
  108. onUserVideoAvailable,
  109. /// 远端用户是否存在可播放的主路画面(一般用于摄像头)
  110. ///
  111. /// 当您收到 onUserVideoAvailable(userId, true) 通知时,表示该路画面已经有可用的视频数据帧到达。 此时,您需要调用 startRemoteView(userid) 接口加载该用户的远程画面。 然后,您会收到名为 onFirstVideoFrame(userid) 的首帧画面渲染回调。
  112. ///
  113. /// 当您收到 onUserVideoAvailable(userId, false) 通知时,表示该路远程画面已经被关闭,可能由于该用户调用了 muteLocalVideo() 或 stopLocalPreview()。
  114. ///
  115. /// 参数param:
  116. ///
  117. /// userId 用户标识
  118. ///
  119. /// available 画面是否开启
  120. onUserAudioAvailable,
  121. /// 用于提示音量大小的回调,包括每个 userId 的音量和远端总音量。
  122. ///
  123. /// 您可以通过调用 TRTCCloud 中的 enableAudioVolumeEvaluation 接口来开关这个回调或者设置它的触发间隔。 需要注意的是,调用 enableAudioVolumeEvaluation 开启音量回调后,无论频道内是否有人说话,都会按设置的时间间隔调用这个回调; 如果没有人说话,则 userVolumes 为空,totalVolume 为0。
  124. ///
  125. /// 注意:userId 为本地用户 ID 时表示自己的音量,userVolumes 内仅包含正在说话(音量不为0)的用户音量信息。
  126. ///
  127. /// 参数param:
  128. ///
  129. /// userVolumes 所有正在说话的房间成员的音量,取值范围0 - 100。
  130. ///
  131. /// totalVolume 所有远端成员的总音量, 取值范围0 - 100。
  132. onUserVoiceVolume,
  133. //其他用户登录了同一账号,被踢下线
  134. onKickedOffline
  135. }