TrtcCode.js 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612
  1. import { NAME, errorCodeUrl } from './constants';
  2. /**
  3. * @namespace ErrorCode
  4. *
  5. * @description 错误码、警告码和事件列表
  6. */
  7. /////////////////////////////////////////////////////////////////////////////////
  8. //
  9. // (一)错误码(严重)
  10. //
  11. /////////////////////////////////////////////////////////////////////////////////
  12. /**
  13. * @memberof ErrorCode
  14. * @typedef 错误码(严重)
  15. * @description SDK 错误码(严重)对照表
  16. * | 符号 | 值 | 含义 |
  17. * |---|---|---|
  18. * |ERR_NULL|0|无错误|
  19. * |ERR_ROOM_ENTER_FAIL|-3301|进入房间失败|
  20. * |ERR_ENTER_ROOM_PARAM_NULL|-3316|进房参数为空,请检查 enterRoom:appScene: 接口调用是否传入有效的 param|
  21. * |ERR_SDK_APPID_INVALID|-3317|进房参数 sdkAppId 错误|
  22. * |ERR_ROOM_ID_INVALID|-3318|进房参数 roomId 错误|
  23. * |ERR_USER_ID_INVALID|-3319|进房参数 userID 不正确|
  24. * |ERR_USER_SIG_INVALID|-3320|进房参数 userSig 不正确|
  25. * |ERR_ROOM_REQUEST_ENTER_ROOM_TIMEOUT|-3308|请求进房超时,请检查网络|
  26. * |ERR_SERVER_INFO_SERVICE_SUSPENDED|-100013|服务不可用。请检查:套餐包剩余分钟数是否大于0,腾讯云账号是否欠费|
  27. * |ERR_ROOM_REQUEST_QUIT_ROOM_TIMEOUT|-3325|请求退房超时|
  28. * |ERR_CAMERA_START_FAIL|-1301|打开摄像头失败,例如在 Windows 或 Mac 设备,摄像头的配置程序(驱动程序)异常,禁用后重新启用设备,或者重启机器,或者更新配置程序|
  29. * |ERR_CAMERA_NOT_AUTHORIZED|-1314|摄像头设备未授权,通常在移动设备出现,可能是权限被用户拒绝了|
  30. * |ERR_CAMERA_SET_PARAM_FAIL|-1315|摄像头参数设置出错(参数不支持或其它)|
  31. * |ERR_CAMERA_OCCUPY|-1316|摄像头正在被占用中,可尝试打开其他摄像头|
  32. * |ERR_MIC_START_FAIL|-1302|打开麦克风失败,例如在 Windows 或 Mac 设备,麦克风的配置程序(驱动程序)异常,禁用后重新启用设备,或者重启机器,或者更新配置程序|
  33. * |ERR_MIC_NOT_AUTHORIZED|-1317|麦克风设备未授权,通常在移动设备出现,可能是权限被用户拒绝了|
  34. * |ERR_MIC_SET_PARAM_FAIL|-1318|麦克风设置参数失败|
  35. * |ERR_MIC_OCCUPY|-1319|麦克风正在被占用中,例如移动设备正在通话时,打开麦克风会失败|
  36. * |ERR_MIC_STOP_FAIL|-1320|停止麦克风失败|
  37. * |ERR_SPEAKER_START_FAIL|-1321|打开扬声器失败,例如在 Windows 或 Mac 设备,扬声器的配置程序(驱动程序)异常,禁用后重新启用设备,或者重启机器,或者更新配置程序|
  38. * |ERR_SPEAKER_SET_PARAM_FAIL|-1322|扬声器设置参数失败|
  39. * |ERR_SPEAKER_STOP_FAIL|-1323|停止扬声器失败|
  40. * |ERR_SCREEN_CAPTURE_START_FAIL|-1308|开始录屏失败,如果在移动设备出现,可能是权限被用户拒绝了,如果在 Windows 或 Mac 系统的设备出现,请检查录屏接口的参数是否符合要求|
  41. * |ERR_SCREEN_CAPTURE_UNSURPORT|-1309|录屏失败,在 Android 平台,需要5.0以上的系统|
  42. * |ERR_SERVER_CENTER_NO_PRIVILEDGE_PUSH_SUB_VIDEO|-102015|没有权限上行辅路|
  43. * |ERR_SERVER_CENTER_ANOTHER_USER_PUSH_SUB_VIDEO|-102016|其他用户正在上行辅路|
  44. * |ERR_VIDEO_ENCODE_FAIL|-1303|视频帧编码失败,例如 iOS 设备切换到其他应用时,硬编码器可能被系统释放,再切换回来时,硬编码器重启前,可能会抛出|
  45. * |ERR_UNSUPPORTED_RESOLUTION|-1305|不支持的视频分辨率|
  46. * |ERR_AUDIO_ENCODE_FAIL|-1304|音频帧编码失败,例如传入自定义音频数据,SDK 无法处理|
  47. * |ERR_UNSUPPORTED_SAMPLERATE|-1306|不支持的音频采样率|
  48. * |ERR_PIXEL_FORMAT_UNSUPPORTED|-1327|设置的 pixel format 不支持|
  49. * |ERR_BUFFER_TYPE_UNSUPPORTED|-1328|设置的 buffer type 不支持|
  50. * |ERR_PUBLISH_CDN_STREAM_REQUEST_TIME_OUT|-3321|旁路转推请求超时|
  51. * |ERR_CLOUD_MIX_TRANSCODING_REQUEST_TIME_OUT|-3322|云端混流请求超时|
  52. * |ERR_PUBLISH_CDN_STREAM_SERVER_FAILED|-3323|旁路转推回包异常|
  53. * |ERR_CLOUD_MIX_TRANSCODING_SERVER_FAILED|-3324|云端混流回包异常|
  54. * |ERR_ROOM_REQUEST_START_PUBLISHING_TIMEOUT|-3333|开始向腾讯云的直播 CDN 推流信令超时|
  55. * |ERR_ROOM_REQUEST_START_PUBLISHING_ERROR|-3334|开始向腾讯云的直播 CDN 推流信令异常|
  56. * |ERR_ROOM_REQUEST_STOP_PUBLISHING_TIMEOUT|-3335|停止向腾讯云的直播 CDN 推流信令超时|
  57. * |ERR_ROOM_REQUEST_STOP_PUBLISHING_ERROR|-3336|停止向腾讯云的直播 CDN 推流信令异常|
  58. * |ERR_ROOM_REQUEST_CONN_ROOM_TIMEOUT|-3326|请求连麦超时|
  59. * |ERR_ROOM_REQUEST_DISCONN_ROOM_TIMEOUT|-3327|请求退出连麦超时|
  60. * |ERR_ROOM_REQUEST_CONN_ROOM_INVALID_PARAM|-3328|无效参数|
  61. * |ERR_CONNECT_OTHER_ROOM_AS_AUDIENCE|-3330|当前是观众角色,不能请求或断开跨房连麦,需要先 switchRole() 到主播|
  62. * |ERR_SERVER_CENTER_CONN_ROOM_NOT_SUPPORT|-102031|不支持跨房间连麦|
  63. * |ERR_SERVER_CENTER_CONN_ROOM_REACH_MAX_NUM|-102032|达到跨房间连麦上限|
  64. * |ERR_SERVER_CENTER_CONN_ROOM_REACH_MAX_RETRY_TIMES|-102033|跨房间连麦重试次数耗尽|
  65. * |ERR_SERVER_CENTER_CONN_ROOM_REQ_TIMEOUT|-102034|跨房间连麦请求超时|
  66. * |ERR_SERVER_CENTER_CONN_ROOM_REQ|-102035|跨房间连麦请求格式错误|
  67. * |ERR_SERVER_CENTER_CONN_ROOM_NO_SIG|-102036|跨房间连麦无签名|
  68. * |ERR_SERVER_CENTER_CONN_ROOM_DECRYPT_SIG|-102037|跨房间连麦签名解密失败|
  69. * |ERR_SERVER_CENTER_CONN_ROOM_NO_KEY|-102038|未找到跨房间连麦签名解密密钥|
  70. * |ERR_SERVER_CENTER_CONN_ROOM_PARSE_SIG|-102039|跨房间连麦签名解析错误|
  71. * |ERR_SERVER_CENTER_CONN_ROOM_INVALID_SIG_TIME|-102040|跨房间连麦签名时间戳错误|
  72. * |ERR_SERVER_CENTER_CONN_ROOM_SIG_GROUPID|-102041|跨房间连麦签名不匹配|
  73. * |ERR_SERVER_CENTER_CONN_ROOM_NOT_CONNED|-102042|本房间无连麦|
  74. * |ERR_SERVER_CENTER_CONN_ROOM_USER_NOT_CONNED|-102043|本用户未发起连麦|
  75. * |ERR_SERVER_CENTER_CONN_ROOM_FAILED|-102044|跨房间连麦失败|
  76. * |ERR_SERVER_CENTER_CONN_ROOM_CANCEL_FAILED|-102045|取消跨房间连麦失败|
  77. * |ERR_SERVER_CENTER_CONN_ROOM_CONNED_ROOM_NOT_EXIST|-102046|被连麦房间不存在|
  78. * |ERR_SERVER_CENTER_CONN_ROOM_CONNED_REACH_MAX_ROOM|-102047|被连麦房间达到连麦上限|
  79. * |ERR_SERVER_CENTER_CONN_ROOM_CONNED_USER_NOT_EXIST|-102048|被连麦用户不存在|
  80. * |ERR_SERVER_CENTER_CONN_ROOM_CONNED_USER_DELETED|-102049|被连麦用户已被删除|
  81. * |ERR_SERVER_CENTER_CONN_ROOM_CONNED_USER_FULL|-102050|被连麦用户达到资源上限|
  82. * |ERR_SERVER_CENTER_CONN_ROOM_INVALID_SEQ|-102051|连麦请求序号错乱|
  83. */
  84. export const TXLiteAVError = {
  85. /** 无错误 */
  86. ERR_NULL: 0,
  87. /** 进入房间失败 */
  88. ERR_ROOM_ENTER_FAIL: -3301,
  89. /** 进房参数为空,请检查 enterRoom:appScene: 接口调用是否传入有效的 param */
  90. ERR_ENTER_ROOM_PARAM_NULL: -3316,
  91. /** 进房参数 sdkAppId 错误 */
  92. ERR_SDK_APPID_INVALID: -3317,
  93. /** 进房参数 roomId 错误 */
  94. ERR_ROOM_ID_INVALID: -3318,
  95. /** 进房参数 userID 不正确 */
  96. ERR_USER_ID_INVALID: -3319,
  97. /** 进房参数 userSig 不正确 */
  98. ERR_USER_SIG_INVALID: -3320,
  99. /** 请求进房超时,请检查网络 */
  100. ERR_ROOM_REQUEST_ENTER_ROOM_TIMEOUT: -3308,
  101. /** 服务不可用。请检查:套餐包剩余分钟数是否大于0,腾讯云账号是否欠费 */
  102. ERR_SERVER_INFO_SERVICE_SUSPENDED: -100013,
  103. /** 请求退房超时 */
  104. ERR_ROOM_REQUEST_QUIT_ROOM_TIMEOUT: -3325,
  105. /** 打开摄像头失败,例如在 Windows 或 Mac 设备,摄像头的配置程序(驱动程序)异常,禁用后重新启用设备,或者重启机器,或者更新配置程序 */
  106. ERR_CAMERA_START_FAIL: -1301,
  107. /** 摄像头设备未授权,通常在移动设备出现,可能是权限被用户拒绝了 */
  108. ERR_CAMERA_NOT_AUTHORIZED: -1314,
  109. /** 摄像头参数设置出错(参数不支持或其它) */
  110. ERR_CAMERA_SET_PARAM_FAIL: -1315,
  111. /** 摄像头正在被占用中,可尝试打开其他摄像头 */
  112. ERR_CAMERA_OCCUPY: -1316,
  113. /** 打开麦克风失败,例如在 Windows 或 Mac 设备,麦克风的配置程序(驱动程序)异常,禁用后重新启用设备,或者重启机器,或者更新配置程序 */
  114. ERR_MIC_START_FAIL: -1302,
  115. /** 麦克风设备未授权,通常在移动设备出现,可能是权限被用户拒绝了 */
  116. ERR_MIC_NOT_AUTHORIZED: -1317,
  117. /** 麦克风设置参数失败 */
  118. ERR_MIC_SET_PARAM_FAIL: -1318,
  119. /** 麦克风正在被占用中,例如移动设备正在通话时,打开麦克风会失败 */
  120. ERR_MIC_OCCUPY: -1319,
  121. /** 停止麦克风失败 */
  122. ERR_MIC_STOP_FAIL: -1320,
  123. /** 打开扬声器失败,例如在 Windows 或 Mac 设备,扬声器的配置程序(驱动程序)异常,禁用后重新启用设备,或者重启机器,或者更新配置程序 */
  124. ERR_SPEAKER_START_FAIL: -1321,
  125. /** 扬声器设置参数失败 */
  126. ERR_SPEAKER_SET_PARAM_FAIL: -1322,
  127. /** 停止扬声器失败 */
  128. ERR_SPEAKER_STOP_FAIL: -1323,
  129. /** 开始录屏失败,如果在移动设备出现,可能是权限被用户拒绝了,如果在 Windows 或 Mac 系统的设备出现,请检查录屏接口的参数是否符合要求 */
  130. ERR_SCREEN_CAPTURE_START_FAIL: -1308,
  131. /** 录屏失败,在 Android 平台,需要5.0以上的系统 */
  132. ERR_SCREEN_CAPTURE_UNSURPORT: -1309,
  133. /** 没有权限上行辅路 */
  134. ERR_SERVER_CENTER_NO_PRIVILEDGE_PUSH_SUB_VIDEO: -102015,
  135. /** 其他用户正在上行辅路 */
  136. ERR_SERVER_CENTER_ANOTHER_USER_PUSH_SUB_VIDEO: -102016,
  137. /** 视频帧编码失败,例如 iOS 设备切换到其他应用时,硬编码器可能被系统释放,再切换回来时,硬编码器重启前,可能会抛出 */
  138. ERR_VIDEO_ENCODE_FAIL: -1303,
  139. /** 音频帧编码失败,例如传入自定义音频数据,SDK 无法处理 */
  140. ERR_AUDIO_ENCODE_FAIL: -1304,
  141. /** 不支持的视频分辨率 */
  142. ERR_UNSUPPORTED_RESOLUTION: -1305,
  143. /** 不支持的音频采样率 */
  144. ERR_UNSUPPORTED_SAMPLERATE: -1306,
  145. /** 设置的 pixel format 不支持 */
  146. ERR_PIXEL_FORMAT_UNSUPPORTED: -1327,
  147. /** 设置的 buffer type 不支持 */
  148. ERR_BUFFER_TYPE_UNSUPPORTED: -1328,
  149. /** 旁路转推请求超时 */
  150. ERR_PUBLISH_CDN_STREAM_REQUEST_TIME_OUT: -3321,
  151. /** 云端混流请求超时 */
  152. ERR_CLOUD_MIX_TRANSCODING_REQUEST_TIME_OUT: -3322,
  153. /** 旁路转推回包异常 */
  154. ERR_PUBLISH_CDN_STREAM_SERVER_FAILED: -3323,
  155. /** 云端混流回包异常 */
  156. ERR_CLOUD_MIX_TRANSCODING_SERVER_FAILED: -3324,
  157. /** 开始向腾讯云的直播 CDN 推流信令超时 */
  158. ERR_ROOM_REQUEST_START_PUBLISHING_TIMEOUT: -3333,
  159. /** 开始向腾讯云的直播 CDN 推流信令异常 */
  160. ERR_ROOM_REQUEST_START_PUBLISHING_ERROR: -3334,
  161. /** 停止向腾讯云的直播 CDN 推流信令超时 */
  162. ERR_ROOM_REQUEST_STOP_PUBLISHING_TIMEOUT: -3335,
  163. /** 停止向腾讯云的直播 CDN 推流信令异常 */
  164. ERR_ROOM_REQUEST_STOP_PUBLISHING_ERROR: -3336,
  165. /** 请求连麦超时 */
  166. ERR_ROOM_REQUEST_CONN_ROOM_TIMEOUT: -3326,
  167. /** 请求退出连麦超时 */
  168. ERR_ROOM_REQUEST_DISCONN_ROOM_TIMEOUT: -3327,
  169. /** 无效参数 */
  170. ERR_ROOM_REQUEST_CONN_ROOM_INVALID_PARAM: -3328,
  171. /** 当前是观众角色,不能请求或断开跨房连麦,需要先 switchRole() 到主播 */
  172. ERR_CONNECT_OTHER_ROOM_AS_AUDIENCE: -3330,
  173. /** 不支持跨房间连麦 */
  174. ERR_SERVER_CENTER_CONN_ROOM_NOT_SUPPORT: -102031,
  175. /** 达到跨房间连麦上限 */
  176. ERR_SERVER_CENTER_CONN_ROOM_REACH_MAX_NUM: -102032,
  177. /** 跨房间连麦重试次数耗尽 */
  178. ERR_SERVER_CENTER_CONN_ROOM_REACH_MAX_RETRY_TIMES: -102033,
  179. /** 跨房间连麦请求超时 */
  180. ERR_SERVER_CENTER_CONN_ROOM_REQ_TIMEOUT: -102034,
  181. /** 跨房间连麦请求格式错误 */
  182. ERR_SERVER_CENTER_CONN_ROOM_REQ: -102035,
  183. /** 跨房间连麦无签名 */
  184. ERR_SERVER_CENTER_CONN_ROOM_NO_SIG: -102036,
  185. /** 跨房间连麦签名解密失败 */
  186. ERR_SERVER_CENTER_CONN_ROOM_DECRYPT_SIG: -102037,
  187. /** 未找到跨房间连麦签名解密密钥 */
  188. ERR_SERVER_CENTER_CONN_ROOM_NO_KEY: -102038,
  189. /** 跨房间连麦签名解析错误 */
  190. ERR_SERVER_CENTER_CONN_ROOM_PARSE_SIG: -102039,
  191. /** 跨房间连麦签名时间戳错误 */
  192. ERR_SERVER_CENTER_CONN_ROOM_INVALID_SIG_TIME: -102040,
  193. /** 跨房间连麦签名不匹配 */
  194. ERR_SERVER_CENTER_CONN_ROOM_SIG_GROUPID: -102041,
  195. /** 本房间无连麦 */
  196. ERR_SERVER_CENTER_CONN_ROOM_NOT_CONNED: -102042,
  197. /** 本用户未发起连麦 */
  198. ERR_SERVER_CENTER_CONN_ROOM_USER_NOT_CONNED: -102043,
  199. /** 跨房间连麦失败 */
  200. ERR_SERVER_CENTER_CONN_ROOM_FAILED: -102044,
  201. /** 取消跨房间连麦失败 */
  202. ERR_SERVER_CENTER_CONN_ROOM_CANCEL_FAILED: -102045,
  203. /** 被连麦房间不存在 */
  204. ERR_SERVER_CENTER_CONN_ROOM_CONNED_ROOM_NOT_EXIST: -102046,
  205. /** 被连麦房间达到连麦上限 */
  206. ERR_SERVER_CENTER_CONN_ROOM_CONNED_REACH_MAX_ROOM: -102047,
  207. /** 被连麦用户不存在 */
  208. ERR_SERVER_CENTER_CONN_ROOM_CONNED_USER_NOT_EXIST: -102048,
  209. /** 被连麦用户已被删除 */
  210. ERR_SERVER_CENTER_CONN_ROOM_CONNED_USER_DELETED: -102049,
  211. /** 被连麦用户达到资源上限 */
  212. ERR_SERVER_CENTER_CONN_ROOM_CONNED_USER_FULL: -102050,
  213. /** 连麦请求序号错乱 */
  214. ERR_SERVER_CENTER_CONN_ROOM_INVALID_SEQ: -102051,
  215. /** 直播,推流出现网络断开,且经过多次重试无法恢复 */
  216. ERR_RTMP_PUSH_NET_DISCONNECT: -1307,
  217. /** 直播,推流地址非法,例如不是 RTMP 协议的地址 */
  218. ERR_RTMP_PUSH_INVALID_ADDRESS: -1313,
  219. /** 直播,连接推流服务器失败(若支持智能选路,IP 全部失败) */
  220. ERR_RTMP_PUSH_NET_ALLADDRESS_FAIL: -1324,
  221. /** 直播,网络不可用,请确认 WiFi、移动数据或者有线网络是否正常 */
  222. ERR_RTMP_PUSH_NO_NETWORK: -1325,
  223. /** 直播,服务器拒绝连接请求,可能是该推流地址已经被占用,或者 TXSecret 校验失败,或者是过期了,或者是欠费了 */
  224. ERR_RTMP_PUSH_SERVER_REFUSE: -1326,
  225. /** 直播,网络断连,且经多次重连抢救无效,可以放弃治疗,更多重试请自行重启播放 */
  226. ERR_PLAY_LIVE_STREAM_NET_DISCONNECT: -2301,
  227. /** 直播,获取加速拉流的地址失败 */
  228. ERR_GET_RTMP_ACC_URL_FAIL: -2302,
  229. /** 播放的文件不存在 */
  230. ERR_FILE_NOT_FOUND: -2303,
  231. /** H265 解码失败 */
  232. ERR_HEVC_DECODE_FAIL: -2304,
  233. /** 点播,音视频流解密失败 */
  234. ERR_VOD_DECRYPT_FAIL: -2305,
  235. /** 点播,获取点播文件信息失败 */
  236. ERR_GET_VODFILE_MEDIAINFO_FAIL: -2306,
  237. /** 直播,切流失败(切流可以播放不同画面大小的视频) */
  238. ERR_PLAY_LIVE_STREAM_SWITCH_FAIL: -2307,
  239. /** 直播,服务器拒绝连接请求 */
  240. ERR_PLAY_LIVE_STREAM_SERVER_REFUSE: -2308,
  241. /** 直播,RTMPACC 低延时拉流失败,且经过多次重试无法恢复 */
  242. ERR_RTMP_ACC_FETCH_STREAM_FAIL: -2309,
  243. /** 心跳失败,客户端定时向服务器发送数据包,告诉服务器自己活着,这个错误通常是发包超时 */
  244. ERR_ROOM_HEARTBEAT_FAIL: -3302,
  245. /** 拉取接口机服务器地址失败 */
  246. ERR_ROOM_REQUEST_IP_FAIL: -3303,
  247. /** 连接接口机服务器失败 */
  248. ERR_ROOM_CONNECT_FAIL: -3304,
  249. /** 请求视频位失败 */
  250. ERR_ROOM_REQUEST_AVSEAT_FAIL: -3305,
  251. /** 请求 token https 超时,请检查网络是否正常,或网络防火墙是否放行 https 访问 official.opensso.tencent-cloud.com:443 */
  252. ERR_ROOM_REQUEST_TOKEN_HTTPS_TIMEOUT: -3306,
  253. /** 请求 IP 和 sig 超时,请检查网络是否正常,或网络防火墙是否放行 UDP 访问下列 IP 和域名 query.tencent-cloud.com:8000 162.14.23.140:8000 162.14.7.49:8000 */
  254. ERR_ROOM_REQUEST_IP_TIMEOUT: -3307,
  255. /** 请求视频位超时 */
  256. ERR_ROOM_REQUEST_VIDEO_FLAG_TIMEOUT: -3309,
  257. /** 请求视频数据超时 */
  258. ERR_ROOM_REQUEST_VIDEO_DATA_ROOM_TIMEOUT: -3310,
  259. /** 请求修改视频能力项超时 */
  260. ERR_ROOM_REQUEST_CHANGE_ABILITY_TIMEOUT: -3311,
  261. /** 请求状态上报超时 */
  262. ERR_ROOM_REQUEST_STATUS_REPORT_TIMEOUT: -3312,
  263. /** 请求关闭视频超时 */
  264. ERR_ROOM_REQUEST_CLOSE_VIDEO_TIMEOUT: -3313,
  265. /** 请求接收视频项超时 */
  266. ERR_ROOM_REQUEST_SET_RECEIVE_TIMEOUT: -3314,
  267. /** 请求 token 无效参数,请检查 TRTCParams.userSig 是否填写正确 */
  268. ERR_ROOM_REQUEST_TOKEN_INVALID_PARAMETER: -3315,
  269. /** 请求 AES TOKEN 时,server 返回的内容是空的 */
  270. ERR_ROOM_REQUEST_AES_TOKEN_RETURN_ERROR: -3329,
  271. /** 请求接口机 IP 返回的列表为空的 */
  272. ERR_ACCIP_LIST_EMPTY: -3331,
  273. /** 请求发送 Json 信令超时 */
  274. ERR_ROOM_REQUEST_SEND_JSON_CMD_TIMEOUT: -3332,
  275. // Info 服务器(查询接口机 IP), 服务器错误码,数值范围[-100000, -110000]
  276. /** server 解包错误,可能请求数据被篡改 */
  277. ERR_SERVER_INFO_UNPACKING_ERROR: -100000,
  278. /** TOKEN 错误 */
  279. ERR_SERVER_INFO_TOKEN_ERROR: -100001,
  280. /** 分配接口机错误 */
  281. ERR_SERVER_INFO_ALLOCATE_ACCESS_FAILED: -100002,
  282. /** 生成签名错误 */
  283. ERR_SERVER_INFO_GENERATE_SIGN_FAILED: -100003,
  284. /** https token 超时 */
  285. ERR_SERVER_INFO_TOKEN_TIMEOUT: -100004,
  286. /** 无效的命令字 */
  287. ERR_SERVER_INFO_INVALID_COMMAND: -100005,
  288. /** 权限位校验失败 */
  289. ERR_SERVER_INFO_PRIVILEGE_FLAG_ERROR: -100006,
  290. /** https 请求时,生成加密 key 错误 */
  291. ERR_SERVER_INFO_GENERATE_KEN_ERROR: -100007,
  292. /** https 请求时,生成 token 错误 */
  293. ERR_SERVER_INFO_GENERATE_TOKEN_ERROR: -100008,
  294. /** 数据库查询失败(房间相关存储信息) */
  295. ERR_SERVER_INFO_DATABASE: -100009,
  296. /** 房间号错误 */
  297. ERR_SERVER_INFO_BAD_ROOMID: -100010,
  298. /** 场景或角色错误 */
  299. ERR_SERVER_INFO_BAD_SCENE_OR_ROLE: -100011,
  300. /** 房间号转换出错 */
  301. ERR_SERVER_INFO_ROOMID_EXCHANGE_FAILED: -100012,
  302. /** 房间号非法 */
  303. ERR_SERVER_INFO_STRGROUP_HAS_INVALID_CHARS: -100014,
  304. /** 非法SDKAppid */
  305. ERR_SERVER_INFO_LACK_SDKAPPID: -100015,
  306. /** 无效请求, 旧版 0x1 要求带 Token; ECDH 要求带 ECDH Publich Key; 两个都没有就按报错 */
  307. ERR_SERVER_INFO_INVALID: -100016,
  308. /** 生成公钥失败 */
  309. ERR_SERVER_INFO_ECDH_GET_KEY: -100017,
  310. /** 获取tinyid失败 */
  311. ERR_SERVER_INFO_ECDH_GET_TINYID: -100018,
  312. // Access 接口机
  313. /** token 过期 */
  314. ERR_SERVER_ACC_TOKEN_TIMEOUT: -101000,
  315. /** 签名错误 */
  316. ERR_SERVER_ACC_SIGN_ERROR: -101001,
  317. /** 签名超时 */
  318. ERR_SERVER_ACC_SIGN_TIMEOUT: -101002,
  319. /** 房间不存在 */
  320. ERR_SERVER_ACC_ROOM_NOT_EXIST: -101003,
  321. /** 后台房间标识 roomId 错误 */
  322. ERR_SERVER_ACC_ROOMID: -101004,
  323. /** 后台用户位置标识 locationId 错误 */
  324. ERR_SERVER_ACC_LOCATIONID: -101005,
  325. // center 服务器(信令和流控处理等任务)
  326. /** 后台错误 */
  327. ERR_SERVER_CENTER_SYSTEM_ERROR: -102000,
  328. /** 无效的房间 Id */
  329. ERR_SERVER_CENTER_INVALID_ROOMID: -102001,
  330. /** 创建房间失败 */
  331. ERR_SERVER_CENTER_CREATE_ROOM_FAILED: -102002,
  332. /** 签名错误 */
  333. ERR_SERVER_CENTER_SIGN_ERROR: -102003,
  334. /** 签名过期 */
  335. ERR_SERVER_CENTER_SIGN_TIMEOUT: -102004,
  336. /** 房间不存在 */
  337. ERR_SERVER_CENTER_ROOM_NOT_EXIST: -102005,
  338. /** 房间添加用户失败 */
  339. ERR_SERVER_CENTER_ADD_USER_FAILED: -102006,
  340. /** 查找用户失败 */
  341. ERR_SERVER_CENTER_FIND_USER_FAILED: -102007,
  342. /** 频繁切换终端 */
  343. ERR_SERVER_CENTER_SWITCH_TERMINATION_FREQUENTLY: -102008,
  344. /** locationid 错误 */
  345. ERR_SERVER_CENTER_LOCATION_NOT_EXIST: -102009,
  346. /** 没有权限创建房间 */
  347. ERR_SERVER_CENTER_NO_PRIVILEDGE_CREATE_ROOM: -102010,
  348. /** 没有权限进入房间 */
  349. ERR_SERVER_CENTER_NO_PRIVILEDGE_ENTER_ROOM: -102011,
  350. /** 辅路抢视频位、申请辅路请求类型参数错误 */
  351. ERR_SERVER_CENTER_INVALID_PARAMETER_SUB_VIDEO: -102012,
  352. /** 没有权限上视频 */
  353. ERR_SERVER_CENTER_NO_PRIVILEDGE_PUSH_VIDEO: -102013,
  354. /** 没有空闲路由表 */
  355. ERR_SERVER_CENTER_ROUTE_TABLE_ERROR: -102014,
  356. /** 当前用户没有上行辅路 */
  357. ERR_SERVER_CENTER_NOT_PUSH_SUB_VIDEO: -102017,
  358. /** 用户被删除状态 */
  359. ERR_SERVER_CENTER_USER_WAS_DELETED: -102018,
  360. /** 没有权限请求视频 */
  361. ERR_SERVER_CENTER_NO_PRIVILEDGE_REQUEST_VIDEO: -102019,
  362. /** 进房参数 bussInfo 错误 */
  363. ERR_SERVER_CENTER_INVALID_PARAMETER: -102023,
  364. /** 请求 I 帧未知 opType */
  365. ERR_SERVER_CENTER_I_FRAME_UNKNOW_TYPE: -102024,
  366. /** 请求 I 帧包格式错误 */
  367. ERR_SERVER_CENTER_I_FRAME_INVALID_PACKET: -102025,
  368. /** 请求 I 帧目标用户不存在 */
  369. ERR_SERVER_CENTER_I_FRAME_DEST_USER_NOT_EXIST: -102026,
  370. /** 请求 I 帧房间用户太多 */
  371. ERR_SERVER_CENTER_I_FRAME_ROOM_TOO_BIG: -102027,
  372. /** 请求 I 帧参数错误 */
  373. ERR_SERVER_CENTER_I_FRAME_RPS_INVALID_PARAMETER: -102028,
  374. /** 房间号非法 */
  375. ERR_SERVER_CENTER_INVALID_ROOM_ID: -102029,
  376. /** 房间号超过限制 */
  377. ERR_SERVER_CENTER_ROOM_ID_TOO_LONG: -102030,
  378. /** 房间满员 */
  379. ERR_SERVER_CENTER_ROOM_FULL: -102052,
  380. /** json串解析失败 */
  381. ERR_SERVER_CENTER_DECODE_JSON_FAIL: -102053,
  382. /** 未定义命令字 */
  383. ERR_SERVER_CENTER_UNKNOWN_SUB_CMD: -102054,
  384. /** 未定义角色 */
  385. ERR_SERVER_CENTER_INVALID_ROLE: -102055,
  386. /** 代理机超出限制 */
  387. ERR_SERVER_CENTER_REACH_PROXY_MAX: -102056,
  388. //add by sunlitwang begin
  389. /** 无法保存用户自定义recordId */
  390. ERR_SERVER_CENTER_RECORDID_STORE: -102057,
  391. /** Protobuf序列化错误 */
  392. ERR_SERVER_CENTER_PB_SERIALIZE: -102058,
  393. // https://cloud.tencent.com/document/product/269/1671#.E5.B8.90.E5.8F.B7.E7.B3.BB.E7.BB.9F , 帐号系统, 主要是70000 - 79999之间.
  394. // 在请求 token 过程中,出现账号错误,SSO 返回的错误码,原为正数,现将其转换为负数。
  395. /** sig 过期,请尝试重新生成。如果是刚生成,就过期,请检查有效期填写的是否过小,或者填的 0 */
  396. ERR_SERVER_SSO_SIG_EXPIRED: -70001,
  397. /** sig 校验失败,请确认下 sig 内容是否被截断,如缓冲区长度不够导致的内容截断 */
  398. ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_1: -70003,
  399. /** sig 校验失败,请确认下 sig 内容是否被截断,如缓冲区长度不够导致的内容截断 */
  400. ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_2: -70004,
  401. /** sig 校验失败,可用工具自行验证生成的 sig 是否正确 */
  402. ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_3: -70005,
  403. /** sig 校验失败,可用工具自行验证生成的 sig 是否正确 */
  404. ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_4: -70006,
  405. /** sig 校验失败,可用工具自行验证生成的 sig 是否正确 */
  406. ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_5: -70007,
  407. /** sig 校验失败,可用工具自行验证生成的 sig 是否正确 */
  408. ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_6: -70008,
  409. /** 用业务公钥验证 sig 失败,请确认生成的 usersig 使用的私钥和 sdkAppId 是否对应 */
  410. ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_7: -70009,
  411. /** sig 校验失败,可用工具自行验证生成的 sig 是否正确 */
  412. ERR_SERVER_SSO_SIG_VERIFICATION_FAILED_8: -70010,
  413. /** sig 中 identifier 与请求时的 identifier 不匹配,请检查登录时填写的 identifier 与 sig 中的是否一致 */
  414. ERR_SERVER_SSO_SIG_VERIFICATION_ID_NOT_MATCH: -70013,
  415. /** sig 中 sdkAppId 与请求时的 sdkAppId 不匹配,请检查登录时填写的 sdkAppId 与 sig 中的是否一致 */
  416. ERR_SERVER_SSO_APPID_NOT_MATCH: -70014,
  417. /** 内部第三方票据验证超时,请重试,如多次重试不成功,请@TLS 帐号支持,QQ 3268519604 */
  418. ERR_SERVER_SSO_VERIFICATION_EXPIRED: -70017,
  419. /** 内部第三方票据验证超时,请重试,如多次重试不成功,请@TLS 帐号支持,QQ 3268519604 */
  420. ERR_SERVER_SSO_VERIFICATION_FAILED: -70018,
  421. /** sdkAppId 未找到,请确认是否已经在腾讯云上配置 */
  422. ERR_SERVER_SSO_APPID_NOT_FOUND: -70020,
  423. /** 帐号已被拉入黑名单,请联系 TLS 帐号支持 QQ 3268519604 */
  424. ERR_SERVER_SSO_ACCOUNT_IN_BLACKLIST: -70051,
  425. /** usersig 已经失效,请重新生成,再次尝试 */
  426. ERR_SERVER_SSO_SIG_INVALID: -70052,
  427. /** 安全原因被限制 */
  428. ERR_SERVER_SSO_LIMITED_BY_SECURITY: -70114,
  429. /** 登录状态无效,请使用 usersig 重新鉴权 */
  430. ERR_SERVER_SSO_INVALID_LOGIN_STATUS: -70221,
  431. /** sdkAppId 填写错误 */
  432. ERR_SERVER_SSO_APPID_ERROR: -70252,
  433. /** 票据校验失败,请检查各项参数是否正确 */
  434. ERR_SERVER_SSO_TICKET_VERIFICATION_FAILED: -70346,
  435. /** 票据因过期原因校验失败 */
  436. ERR_SERVER_SSO_TICKET_EXPIRED: -70347,
  437. /** 创建账号数量超过已购买预付费数量限制 */
  438. ERR_SERVER_SSO_ACCOUNT_EXCEED_PURCHASES: -70398,
  439. /** 服务器内部错误,请重试 */
  440. ERR_SERVER_SSO_INTERNAL_ERROR: -70500,
  441. };
  442. /////////////////////////////////////////////////////////////////////////////////
  443. //
  444. // (二)错误码(警告)
  445. //
  446. /////////////////////////////////////////////////////////////////////////////////
  447. /**
  448. * @memberof ErrorCode
  449. * @typedef 错误码(警告)
  450. * @description SDK 错误码(警告)对照表
  451. * | 符号 | 值 | 含义 |
  452. * |---|---|---|
  453. * |WARNING_HW_ENCODER_START_FAIL|1103|硬编码启动出现问题,自动切换到软编码|
  454. * |WARNING_VIDEO_ENCODER_SW_TO_HW|1107|当前 CPU 使用率太高,无法满足软件编码需求,自动切换到硬件编码|
  455. * |WARNING_INSUFFICIENT_CAPTURE_FPS|1108|摄像头采集帧率不足,部分自带美颜算法的 Android 手机上会出现|
  456. * |WARNING_SW_ENCODER_START_FAIL|1109|软编码启动失败|
  457. * |WARNING_REDUCE_CAPTURE_RESOLUTION|1110|摄像头采集分辨率被降低,以满足当前帧率和性能最优解。|
  458. * |WARNING_VIDEO_FRAME_DECODE_FAIL|2101|当前视频帧解码失败|
  459. * |WARNING_AUDIO_FRAME_DECODE_FAIL|2102|当前音频帧解码失败|
  460. * |WARNING_VIDEO_PLAY_LAG|2105|当前视频播放出现卡顿|
  461. * |WARNING_HW_DECODER_START_FAIL|2106|硬解启动失败,采用软解码|
  462. * |WARNING_VIDEO_DECODER_HW_TO_SW|2108|当前流硬解第一个 I 帧失败,SDK 自动切软解|
  463. * |WARNING_SW_DECODER_START_FAIL|2109|软解码器启动失败|
  464. * |WARNING_VIDEO_RENDER_FAIL|2110|视频渲染失败|
  465. * |WARNING_AUDIO_RECORDING_WRITE_FAIL|7001|音频录制写入文件失败|
  466. * |WARNING_ROOM_DISCONNECT|5101|网络断开连接|
  467. * |WARNING_IGNORE_UPSTREAM_FOR_AUDIENCE|6001|当前是观众角色,忽略上行音视频数据|
  468. */
  469. export const TXLiteAVWarning = {
  470. /** 硬编码启动出现问题,自动切换到软编码 */
  471. WARNING_HW_ENCODER_START_FAIL: 1103,
  472. /** 当前 CPU 使用率太高,无法满足软件编码需求,自动切换到硬件编码 */
  473. WARNING_VIDEO_ENCODER_SW_TO_HW: 1107,
  474. /** 摄像头采集帧率不足,部分自带美颜算法的 Android 手机上会出现 */
  475. WARNING_INSUFFICIENT_CAPTURE_FPS: 1108,
  476. /** 软编码启动失败 */
  477. WARNING_SW_ENCODER_START_FAIL: 1109,
  478. /** 摄像头采集分辨率被降低,以满足当前帧率和性能最优解。 */
  479. WARNING_REDUCE_CAPTURE_RESOLUTION: 1110,
  480. /** 当前视频帧解码失败 */
  481. WARNING_VIDEO_FRAME_DECODE_FAIL: 2101,
  482. /** 当前音频帧解码失败 */
  483. WARNING_AUDIO_FRAME_DECODE_FAIL: 2102,
  484. /** 当前视频播放出现卡顿 */
  485. WARNING_VIDEO_PLAY_LAG: 2105,
  486. /** 硬解启动失败,采用软解码 */
  487. WARNING_HW_DECODER_START_FAIL: 2106,
  488. /** 当前流硬解第一个 I 帧失败,SDK 自动切软解 */
  489. WARNING_VIDEO_DECODER_HW_TO_SW: 2108,
  490. /** 软解码器启动失败 */
  491. WARNING_SW_DECODER_START_FAIL: 2109,
  492. /** 视频渲染失败 */
  493. WARNING_VIDEO_RENDER_FAIL: 2110,
  494. /** 音频录制写入文件失败 */
  495. WARNING_AUDIO_RECORDING_WRITE_FAIL: 7001,
  496. /** 网络断开连接 */
  497. WARNING_ROOM_DISCONNECT: 5101,
  498. /** 当前是观众角色,忽略上行音视频数据 */
  499. WARNING_IGNORE_UPSTREAM_FOR_AUDIENCE: 6001,
  500. /** 网络状况不佳:上行带宽太小,上传数据受阻 */
  501. WARNING_NET_BUSY: 1101,
  502. /** 直播,网络断连, 已启动自动重连(自动重连连续失败超过三次会放弃) */
  503. WARNING_RTMP_SERVER_RECONNECT: 1102,
  504. /** 直播,网络断连, 已启动自动重连(自动重连连续失败超过三次会放弃) */
  505. WARNING_LIVE_STREAM_SERVER_RECONNECT: 2103,
  506. /** 网络来包不稳:可能是下行带宽不足,或由于主播端出流不均匀 */
  507. WARNING_RECV_DATA_LAG: 2104,
  508. /** 直播,DNS 解析失败 */
  509. WARNING_RTMP_DNS_FAIL: 3001,
  510. /** 直播,服务器连接失败 */
  511. WARNING_RTMP_SEVER_CONN_FAIL: 3002,
  512. /** 直播,与 RTMP 服务器握手失败 */
  513. WARNING_RTMP_SHAKE_FAIL: 3003,
  514. /** 直播,服务器主动断开 */
  515. WARNING_RTMP_SERVER_BREAK_CONNECT: 3004,
  516. /** 直播,RTMP 读/写失败,将会断开连接 */
  517. WARNING_RTMP_READ_WRITE_FAIL: 3005,
  518. /** 直播,RTMP 写失败(SDK 内部错误码,不会对外抛出) */
  519. WARNING_RTMP_WRITE_FAIL: 3006,
  520. /** 直播,RTMP 读失败(SDK 内部错误码,不会对外抛出) */
  521. WARNING_RTMP_READ_FAIL: 3007,
  522. /** 直播,超过30s 没有数据发送,主动断开连接 */
  523. WARNING_RTMP_NO_DATA: 3008,
  524. /** 直播,connect 服务器调用失败(SDK 内部错误码,不会对外抛出) */
  525. WARNING_PLAY_LIVE_STREAM_INFO_CONNECT_FAIL: 3009,
  526. /** 直播,连接失败,该流地址无视频(SDK 内部错误码,不会对外抛出) */
  527. WARNING_NO_STEAM_SOURCE_FAIL: 3010,
  528. /** 网络断连,已启动自动重连 */
  529. WARNING_ROOM_RECONNECT: 5102,
  530. /** 网络状况不佳:上行带宽太小,上传数据受阻 */
  531. WARNING_ROOM_NET_BUSY: 5103,
  532. };
  533. /////////////////////////////////////////////////////////////////////////////////
  534. //
  535. // (三)JS 封装层抛出的异常(严重)
  536. //
  537. /////////////////////////////////////////////////////////////////////////////////
  538. /**
  539. * @namespace ErrorCode
  540. * @description 错误码
  541. */
  542. export const TXLiteJSError = {
  543. /**
  544. * 未知错误
  545. * @default 0xFFFF
  546. * @memberof module:ErrorCode
  547. */
  548. UNKNOWN: 0xffff,
  549. /**
  550. * 无效参数
  551. *
  552. * @default 0x1000
  553. * @memberof module:ErrorCode
  554. */
  555. INVALID_PARAMETER: 0x1000,
  556. /**
  557. * 非法操作
  558. *
  559. * @default 0x1001
  560. * @memberof module:ErrorCode
  561. */
  562. INVALID_OPERATION: 0x1001,
  563. };
  564. const getErrorName = function (code) {
  565. for (let key in TXLiteJSError) {
  566. if (TXLiteJSError[key] === code) {
  567. return key;
  568. }
  569. }
  570. return 'UNKNOWN';
  571. };
  572. /**
  573. * TrtcError 错误对象<br>
  574. * @extends Error
  575. * @namespace ErrorCode
  576. */
  577. class TrtcError extends Error {
  578. constructor({ code = TXLiteJSError.UNKNOWN, message, extraInfo }) {
  579. if (extraInfo) {
  580. const tempError = {
  581. errCode: code,
  582. errMsg: message,
  583. extraInfo: Object.assign(Object.assign({}, extraInfo), { errCodeUrl: errorCodeUrl }),
  584. };
  585. super(JSON.stringify(tempError));
  586. }
  587. else {
  588. super(message +
  589. ` <${getErrorName(code)} 0x${code.toString(16)}>. Refer to: ${errorCodeUrl}`);
  590. }
  591. this.errCode = code;
  592. this.errMsg = message;
  593. this.extraInfo = Object.assign(Object.assign({}, extraInfo), { errCodeUrl: errorCodeUrl });
  594. }
  595. /**
  596. * 获取错误码<br>
  597. * 详细错误码列表参见 {@link module:ErrorCode ErrorCode}
  598. * @memberof TrtcError
  599. */
  600. getCode() {
  601. return this.errCode;
  602. }
  603. }
  604. export default TrtcError;
  605. export function generateError_(error, code = TXLiteJSError.UNKNOWN, extraInfo) {
  606. return new TrtcError({
  607. code: error.code || code,
  608. message: `${NAME.LOG_PREFIX}${error.message}`,
  609. extraInfo,
  610. });
  611. }
  612. ;