RICOH Live Streaming Client SDK エラー仕様

SDKエラーは例外及びエラーイベントで取得できる。

SDKエラーはErrorDetail型で表現される。

type ErrorType = "ParameterError" | "NetworkError" | "UnexpectedError";
interface ErrorDetail {
  code: Number;
  type: ErrorType;
  error: string;
}
type 概要 code 説明
ParameterError パラメータエラー 40000番台 メソッド呼び出し引数やToken内の値に誤りがある
NetworkError ネットワークエラー 50000番台 通信経路の問題でありリトライで再接続できる可能性がある
初回発生時は接続先設定誤りの可能性等もある
UnexpectedError 予期しないエラー 60000番台 SDK開発者に問い合わせが必要なエラー

Exception

関数呼び出し時のエラーはErrorクラスの派生クラスであるSDKErrorクラスで取得できる。

エラー詳細はSDKErrorクラスのdetailメンバに含まれる。

SDK開発者への問い合わせの際にtoReportString()メソッドで取得した文字列が使用できる。
※ SDK開発者への問い合わせ以外の目的で当メソッドを利用することはサポートしない

SDKErrorクラス

class SDKError extends Error {
    public detail: ErrorDetail;
    public toReportString(): string;
}

利用例

try {
  client.connect();
} catch (e: SDKError) {
  console.log(e.detail.code);
  console.log(e.detail.type);
  console.log(e.detail.error);
}

エラーイベント

その他のエラーはerrorイベントをlistenすることで取得できる。
イベントハンドラにはSDKErrorEventクラスが通知される。

エラー詳細はSDKErrorEventクラスのdetailメンバに含まれる。

SDK開発者への問い合わせの際にtoReportString()メソッドで取得した文字列が使用できる。
※ SDK開発者への問い合わせ以外の目的で当メソッドを利用することはサポートしない

SDKErrorEventクラス

class SDKErrorEvent extends CustomEvent<any> {
  public detail: ErrorDetail;
  public toReportString(): string;
}

利用例

client.addEventListener("error", (e: SDKErrorEvent) => {
  console.log(e.detail.code);
  console.log(e.detail.type);
  console.log(e.detail.error);
});

エラー一覧

ParameterError

code error 説明
43201 InvalidClientID 無効なclient_id
43204 TooManyMeta meta の数が規定数以上
43209 InvalidMetaName meta の name 形式違反
43213 TooLongMetaValue meta の value の長さが規定以上
43223 InvalidVideoCodecOnConnect sending.video.codec 形式違反
43224 InvalidVideoPriorityOnConnect sending.video.priority 形式違反
43225 InvalidVideoMaxBitrateKBPSOnConnect sending.video.max_bitrate_kbps 形式違反
43400 InvalidAccessTokenNotJWT Token が JWT でない
43401 InvalidAccessTokenBadAlg Tokenの alg が HS256 でない
43402 InvalidAccessTokenBadSignature Tokenの署名が有効でない
43403 InvalidAccessTokenNoNbf Tokenにnbf がない
43404 InvalidAccessTokenBadNbf Tokenのnbf 形式違反
43405 InvalidAccessTokenBadNbfTime Tokenのnbfの時刻違反
43406 InvalidAccessTokenNoExp Tokonにexp がない
43407 InvalidAccessTokenBadExp Tokenのexp 形式違反
43408 InvalidAccessTokenBatExpTime Tokenのexpの 時刻違反
43409 InvalidAccessTokenNoConnectionID Tokenにconnection_id がない
43410 InvalidAccessTokenBadConnectionID Tokenのconnection_id 形式違反
43411 InvalidAccessTokenNoRoomID Tokenにroom_id がない
43412 InvalidAccessTokenBadRoomID Tokenのroom_id 形式違反
43413 InvalidAccessTokenBadVersion Tokenのversion 形式違反
43418 InvalidAccessTokenNoRoomSpec Tokenにroom_spec がない
43419 InvalidAccessTokenBadRoomSpec Tokenのroom_spec 形式違反
43420 InvalidAccessTokenNoRoomSpecType Tokenにroom_spec.type がない
43421 InvalidAccessTokenBadRoomSpecType Tokenのroom_spec.type 形式違反
43422 InvalidAccessTokenBadRoomSpecMaxConnections Tokenのroom_spec.max_connections 形式違反
43423 InvalidAccessTokenBadRoomSpecClassificationLabel Tokenのroom_spec.classification_label 形式違反
43424 InvalidAccessTokenBadRoomSpecMediaControl Tokenのroom_spec.media_control 形式違反
43425 InvalidAccessTokenBadRoomSpecMediaControlBitrateReservationMBPS Tokenのroom_spec.media_control.
bitrate_reservation_mbps 形式違反
43426 InvalidAccessTokenExceedTimeLimitation Tokenのnbfからexpまでの時間が規定以上
43599 InvalidAccessToken その他のToken形式違反
43600 RoomSpecMissMatchOnConnect room_spec が room_instance 作成時の
room_spec と一致しない
(connect()呼び出し時)
43602 DuplicateConnectionIDOnConnect 既に join 済みの connection_id で joinした
(connect()呼び出し時)
45000 BadStateOnConnect メソッドを呼べないstate
(connect()呼び出し時)
45001 TrackNotFoundOnUpdateTrackMeta meta変更対象のTrackが存在しない
(updateTrackMeta()呼び出し時)
45002 UnsupportedRoomSpecTypeOnUpdateTrackMeta updateTrackMeta() を呼び出せない
room_spec.type
(updateTrackMeta()呼び出し時)
45003 UnsupportedRoomSpecTypeOnUpdateMeta updateMeta() を呼び出せない
room_spec.type
(updateMeta()呼び出し時)
45004 NeedLocalTracksOnConnect meta変更対象のTrackが存在しない
(connect()呼び出し時)
45005 BadStateOnChangeMute メソッドを呼べないstate
(changeMute()呼び出し時)
45007 ChangeMuteTypeIsNotSupported 変更できないmuteType
(changeMute()呼び出し時)
45008 TrackNotFoundOnChangeMute 変更対象のTrackが存在しない
(changeMute()呼び出し時)
45009 TrackNotFoundOnReplaceMediaStreamTrack 変更対象のTrackが存在しない
(replaceMediaStream()呼び出し時)
45104 InvalidMetaNameOnUpdateConnection meta の name 形式違反
(updateConnection()呼び出し時)
45108 TooLongMetaNameOnUpdateConnection meta の value の長さが規定以上
(updateConnection()呼び出し時)
45109 NotFoundMetaOnUpdateConnection update対象のmeta が存在していない
(updateConnection()呼び出し時)
45207 TooManyMetaOnConnect meta の数が規定数以上
(connect()呼び出し時)
45216 TooLongMetaValueOnConnect meta の長さが規定以上
(connect()呼び出し時)
45511 TooLongMetaValueOnUpdateTrackMeta meta の長さが規定文字以上
(updateTrackMeta()呼び出し時)
45512 NotFoundMetaOnUpdateTrackMeta 変更対象のmetaが存在しない
(updateTrackMeta()呼び出し時)

NetworkError

code error 説明
50001 WebSocketError websocketがエラーとなった
51001-
52999
WebSocketBadCloseXXXX websocketがエラークローズした
53601 ConnectionLimitExceeded サーバの接続数上限を超過した
53719 ConnectionCreateTimeout 規定時間内にサーバ接続確立しなかった
54000 OnTrackTimeout 規定時間内にTrackが接続確立しなかった

UnexpectedError

code error 説明
60000-
69999
InternalErrorXXXX 内部エラー