Skip to content

Commit 6ddcf0f

Browse files
authored
更新onError错误处理
1 parent b1949b2 commit 6ddcf0f

File tree

1 file changed

+87
-2
lines changed

1 file changed

+87
-2
lines changed

iOS/TRTCDemo/TRTC/TRTCMainViewController.m

Lines changed: 87 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -864,14 +864,99 @@ - (void)onWarning:(TXLiteAVWarning)warningCode warningMsg:(NSString *)warningMsg
864864
*/
865865
- (void)onError:(TXLiteAVError)errCode errMsg:(NSString *)errMsg extInfo:(nullable NSDictionary *)extInfo {
866866

867+
if(errCode == ERR_ROOM_REQUEST_TOKEN_HTTPS_TIMEOUT ||
868+
errCode == ERR_ROOM_REQUEST_IP_TIMEOUT ||
869+
errCode == ERR_ROOM_REQUEST_ENTER_ROOM_TIMEOUT) {
870+
[self toastTip:[NSString stringWithFormat:@"进房超时,请检查网络或稍后重试:%d[%@]", errCode, errMsg]];
871+
[self exitRoom];
872+
return;
873+
}
874+
875+
if(errCode == ERR_ROOM_REQUEST_TOKEN_INVALID_PARAMETER ||
876+
errCode == ERR_ENTER_ROOM_PARAM_NULL ||
877+
errCode == ERR_SDK_APPID_INVALID ||
878+
errCode == ERR_ROOM_ID_INVALID ||
879+
errCode == ERR_USER_ID_INVALID ||
880+
errCode == ERR_USER_SIG_INVALID) {
881+
[self toastTip:[NSString stringWithFormat:@"进房参数错误:%d[%@]", errCode, errMsg]];
882+
[self exitRoom];
883+
return;
884+
}
885+
886+
if(errCode == ERR_ACCIP_LIST_EMPTY ||
887+
errCode == ERR_SERVER_INFO_UNPACKING_ERROR ||
888+
errCode == ERR_SERVER_INFO_TOKEN_ERROR ||
889+
errCode == ERR_SERVER_INFO_ALLOCATE_ACCESS_FAILED ||
890+
errCode == ERR_SERVER_INFO_GENERATE_SIGN_FAILED ||
891+
errCode == ERR_SERVER_INFO_TOKEN_TIMEOUT ||
892+
errCode == ERR_SERVER_INFO_INVALID_COMMAND ||
893+
errCode == ERR_SERVER_INFO_GENERATE_KEN_ERROR ||
894+
errCode == ERR_SERVER_INFO_GENERATE_TOKEN_ERROR ||
895+
errCode == ERR_SERVER_INFO_DATABASE ||
896+
errCode == ERR_SERVER_INFO_BAD_ROOMID ||
897+
errCode == ERR_SERVER_INFO_BAD_SCENE_OR_ROLE ||
898+
errCode == ERR_SERVER_INFO_ROOMID_EXCHANGE_FAILED ||
899+
errCode == ERR_SERVER_INFO_STRGROUP_HAS_INVALID_CHARS ||
900+
errCode == ERR_SERVER_ACC_TOKEN_TIMEOUT ||
901+
errCode == ERR_SERVER_ACC_SIGN_ERROR ||
902+
errCode == ERR_SERVER_ACC_SIGN_TIMEOUT ||
903+
errCode == ERR_SERVER_CENTER_INVALID_ROOMID ||
904+
errCode == ERR_SERVER_CENTER_CREATE_ROOM_FAILED ||
905+
errCode == ERR_SERVER_CENTER_SIGN_ERROR ||
906+
errCode == ERR_SERVER_CENTER_SIGN_TIMEOUT ||
907+
errCode == ERR_SERVER_CENTER_ADD_USER_FAILED ||
908+
errCode == ERR_SERVER_CENTER_FIND_USER_FAILED ||
909+
errCode == ERR_SERVER_CENTER_SWITCH_TERMINATION_FREQUENTLY ||
910+
errCode == ERR_SERVER_CENTER_LOCATION_NOT_EXIST ||
911+
errCode == ERR_SERVER_CENTER_ROUTE_TABLE_ERROR ||
912+
errCode == ERR_SERVER_CENTER_INVALID_PARAMETER) {
913+
[self toastTip:[NSString stringWithFormat:@"进房失败,请稍后重试:%d[%@]", errCode, errMsg]];
914+
[self exitRoom];
915+
return;
916+
}
917+
918+
if(errCode == ERR_SERVER_CENTER_ROOM_FULL ||
919+
errCode == ERR_SERVER_CENTER_REACH_PROXY_MAX) {
920+
[self toastTip:[NSString stringWithFormat:@"进房失败,房间满了,请稍后重试:%d[%@]", errCode, errMsg]];
921+
[self exitRoom];
922+
return;
923+
}
867924

868-
if (errCode == ERR_ROOM_ENTER_FAIL) {
869-
[self toastTip:[NSString stringWithFormat:@"无法进入音视频房间[%@]", errMsg]];
925+
if(errCode == ERR_SERVER_CENTER_ROOM_ID_TOO_LONG) {
926+
[self toastTip:[NSString stringWithFormat:@"进房失败,roomID超出有效范围:%d[%@]", errCode, errMsg]];
870927
[self exitRoom];
871928
return;
872929
}
873930

931+
if(errCode == ERR_SERVER_ACC_ROOM_NOT_EXIST ||
932+
errCode == ERR_SERVER_CENTER_ROOM_NOT_EXIST) {
933+
[self toastTip:[NSString stringWithFormat:@"进房失败,请确认房间号正确:%d[%@]", errCode, errMsg]];
934+
[self exitRoom];
935+
return;
936+
}
937+
938+
if(errCode == ERR_SERVER_INFO_SERVICE_SUSPENDED) {
939+
[self toastTip:[NSString stringWithFormat:@"进房失败,请确认腾讯云实时音视频账号状态是否欠费:%d[%@]", errCode, errMsg]];
940+
[self exitRoom];
941+
return;
942+
}
874943

944+
if(errCode == ERR_SERVER_INFO_PRIVILEGE_FLAG_ERROR ||
945+
errCode == ERR_SERVER_CENTER_NO_PRIVILEDGE_CREATE_ROOM ||
946+
errCode == ERR_SERVER_CENTER_NO_PRIVILEDGE_ENTER_ROOM) {
947+
[self toastTip:[NSString stringWithFormat:@"进房失败,无权限进入房间:%d[%@]", errCode, errMsg]];
948+
[self exitRoom];
949+
return;
950+
}
951+
952+
if(errCode <= ERR_SERVER_SSO_SIG_EXPIRED &&
953+
errCode >= ERR_SERVER_SSO_INTERNAL_ERROR) {
954+
// 错误参考 https://cloud.tencent.com/document/product/269/1671#.E5.B8.90.E5.8F.B7.E7.B3.BB.E7.BB.9F
955+
[self toastTip:[NSString stringWithFormat:@"进房失败,userSig错误:%d[%@]", errCode, errMsg]];
956+
[self exitRoom];
957+
return;
958+
}
959+
875960
NSString *msg = [NSString stringWithFormat:@"didOccurError: %@[%d]", errMsg, errCode];
876961
[self toastTip:msg];
877962
}

0 commit comments

Comments
 (0)