@sendbird/calls-react-native
Version:
Sendbird Calls SDK for React Native: Empower React Native apps with seamless audio, video, and group calling. Build interactive communication easily.
118 lines (103 loc) • 3.81 kB
text/typescript
/**
* SendbirdError, platform-specific errors are marked as @platform
*
* @class SendbirdError
* @since 1.0.0
*/
export class SendbirdError extends Error {
static readonly ErrorCode = {
// Call
DIAL_CANCELED: 1800100,
MY_USER_ID_NOT_ALLOWED: 1800101,
// Client
ERR_REQUEST_FAILED: 1800200,
ERR_WEBSOCKET_CONNECTION_NOT_OPENED: 1800201,
ERR_WEBSOCKET_CONNECTION_FAILED: 1800202,
ERR_NO_RESPONSE_DUE_TO_TIMEOUT: 1800203,
ERR_REQUEST_FAILED_DUE_TO_WEBSOCKET_CONNECTION_LOST: 1800204,
ERR_WRONG_RESPONSE: 1800205,
ERR_QUERY_IN_PROGRESS: 1800206,
INTERNAL_SERVER_ERROR: 1800207,
ERR_MALFORMED_DATA: 1800208,
// Room
ERR_PARTICIPANT_ALREADY_IN_ROOM: 1800700,
ERR_ENTERING_ROOM_STILL_IN_PROGRESS: 1800701,
ERR_PARTICIPANT_NOT_IN_ROOM: 1800702,
ERR_EXITING_ROOM_STILL_IN_PROGRESS: 1800703,
ERR_FAILED_TO_ESTABLISH_CONNECTION_TO_SEND_STREAM: 1800704,
ERR_FAILED_TO_ESTABLISH_CONNECTION_TO_RECEIVE_STREAM: 1800705,
ERR_LOCAL_PARTICIPANT_LOST_CONNECTION: 1800706,
// General
INVALID_PARAMETER_VALUE: 1800300,
INVALID_PARAMETER_TYPE: 1800301,
INSTANCE_NOT_INITIALIZED: 1800302,
USER_NOT_AUTHENTICATED: 1800303,
// Device
CAMERA_ALREADY_SWITCHING: 1800400,
ERR_CAMERA_SWITCH: 1800401,
ERR_CHANGING_AUDIO_DEVICE: 1800402,
// Take SnapShot Error
ERR_CAPTURE_NOT_ALLOWED_ON_AUDIO_CALL: 1800600,
ERR_VIDEO_VIEW_NOT_READY: 1800601,
ERR_VIDEO_CALL_NOT_CONNECTED_YET: 1800602,
ERR_FAILED_TO_GET_IMAGE_FROM_VIDEO_STREAM: 1800603,
// Server
ERR_SERVER_INTERNAL_ERROR: 1400999,
ERR_INVALID_CALL_STATUS: 1400101,
ERR_CALL_DOES_NOT_EXIST: 1400102,
ERR_CALLEE_DOES_NOT_EXIST: 1400103,
ERR_DIAL_MYSELF: 1400104,
ERR_NO_PERMISSION: 1400105,
ERR_CALLEE_NEVER_AUTHENTICATE: 1400106,
ERR_ROOM_MAX_PARTICIPANTS: 1400120,
ERR_INVALID_ROOM_PARTICIPANT: 1400121,
ERR_CLIENT_ALREADY_ENTERED: 1400122,
ERR_SEND_ENDPOINT_CANNOT_ATTACH: 1400123,
ERR_PARTICIPANT_ALREADY_HAS_SEND_ENDPOINT: 1400124,
ERR_ROOM_DELETED: 1400126,
// Recording
ERR_CALL_NOT_CONNECTED_YET: 1800610,
ERR_WRONG_RECORDING_TYPE_FOR_AUDIO_CALL: 1800611,
ERR_RECORDING_ALREADY_IN_PROGRESS: 1800612,
ERR_FAILED_TO_OPEN_FILE: 1800613,
ERR_FAILED_TO_START_RECORDING: 1800614,
ERR_FAILED_TO_STOP_RECORDING: 1800615,
/** @platform Web **/
ERR_NOT_SUPPORTED_BROWSER_FOR_RECORDING: 1800616,
ERR_INVALID_RECORDING_TYPE: 1800617,
/** @platform Android **/
ERR_NOT_SUPPORTED_OS_VERSION_FOR_RECORDING: 1800618,
// screen share
ERR_SCREEN_SHARE_RESTRICTED_FROM_AUDIO_CALL: 1800620,
ERR_SCREEN_SHARE_REQUEST_BEFORE_CALL_IS_CONNECTED: 1800621,
ERR_SCREEN_SHARE_ALREADY_IN_PROGRESS: 1800622,
ERR_NO_SCREEN_SHARE_EXISTS: 1800623,
/** @platform Android **/
ERR_NOT_SUPPORTED_OS_VERSION_FOR_SCREEN_SHARE: 1800624,
/** @platform Web **/
ERR_NOT_SUPPORTED_BROWSER_FOR_SCREEN_SHARE: 1800625,
ERR_SCREEN_SHARE_FAILED_DUE_TO_UNKNOWN_REASON: 1800626,
ERR_NOT_SUPPORTED_APP_STATE_FOR_SCREEN_SHARE: 1800627,
ERR_PERMISSION_DENIED_FOR_SCREEN_SHARE: 1800628,
ERR_SELECTED_CONTENT_NOT_EXIST: 1800629,
ERR_SELECTED_CONTENT_INACCESSIBLE: 1800630,
ERR_MEDIA_STREAM_NOT_ALLOWED_ON_HOLD: 1800631,
// hold and resume
ERR_CALL_ALREADY_ON_HOLD: 1800801,
ERR_ACTIVE_CALL_IN_PROGRESS: 1800802,
ERR_ANOTHER_CALL_IN_PROGRESS: 1800803,
} as const;
public readonly name = 'SendbirdError';
private readonly _code: number;
constructor(message: string, code: number | string) {
super(message);
if (typeof code === 'string') {
this._code = parseInt(code, 10);
} else {
this._code = code;
}
}
public get code() {
return this._code;
}
}