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

codeerror説明
40001InvalidProxyOptionOnConnect無効な ProxyOption
40002ProxyAuthenticationFailedProxy 認証失敗
43201InvalidClientID無効な ClientID
43204TooManyMetameta の数が規定数以上
43209InvalidMetaNamemeta の name 形式違反
43213TooLongMetaValuemeta の value の長さが規定以上
43223InvalidVideoCodecOnConnectsending.video.codec 形式違反
43224InvalidVideoPriorityOnConnectsending.video.priority 形式違反
43225InvalidVideoMaxBitrateKbpsOnConnectsending.video.max_bitrate_kbps 形式違反
43229InvalidConnectingTurnProtocolsiceServersProtocol 形式違反
43232InvalidSendingReceivingEnabledsending.enabled と receiving.enabled が共に false
43233TooManySendingClientssending.enabled を設定された Client が規定数以上
43400InvalidAccessTokenNotJWTToken が JWT でない
43401InvalidAccessTokenBadAlgToken の alg が HS256 でない
43402InvalidAccessTokenBadSignatureToken の署名が有効でない
43403InvalidAccessTokenNoNbfToken に nbf がない
43404InvalidAccessTokenBadNbfToken の nbf 形式違反
43405InvalidAccessTokenBadNbfTimeToken の nbf の時刻違反
43406InvalidAccessTokenNoExpTokon に exp がない
43407InvalidAccessTokenBadExpToken の exp 形式違反
43408InvalidAccessTokenBatExpTimeToken の exp の 時刻違反
43409InvalidAccessTokenNoConnectionIDToken に connection_id がない
43410InvalidAccessTokenBadConnectionIDToken の connection_id 形式違反
43411InvalidAccessTokenNoRoomIDToken に room_id がない
43412InvalidAccessTokenBadRoomIDToken の room_id 形式違反
43413InvalidAccessTokenBadVersionToken の version 形式違反
43418InvalidAccessTokenNoRoomSpecToken に room_spec がない
43419InvalidAccessTokenBadRoomSpecToken の room_spec 形式違反
43420InvalidAccessTokenNoRoomSpecTypeToken に room_spec.type がない
43421InvalidAccessTokenBadRoomSpecTypeToken の room_spec.type 形式違反
43422InvalidAccessTokenBadRoomSpecMaxConnectionsToken の room_spec.max_connections 形式違反
43423InvalidAccessTokenBadRoomSpecClassificationLabelToken の room_spec.classification_label 形式違反
43424InvalidAccessTokenBadRoomSpecMediaControlToken の room_spec.media_control 形式違反
43425InvalidAccessTokenBadRoomSpecMediaControl
BitrateReservationMbps
Token の room_spec.media_control.
bitrate_reservation_mbps 形式違反
43426InvalidAccessTokenExceedTimeLimitationToken の nbf から exp までの時間が規定以上
43599InvalidAccessTokenその他の Token 形式違反
43600RoomSpecMissMatchOnConnectroom_spec が room_instance 作成時の room_spec と一致しない(connect()呼び出し時)
43603SameConnectionIDJoinedroom に同一 connection_id の接続が行われたため切断された
45000BadStateOnConnectメソッドを呼べない state
(connect()呼び出し時)
45001TrackNotFoundOnUpdateTrackMetameta 変更対象の Track が存在しない
(updateTrackMeta()呼び出し時)
45002UnsupportedRoomSpecTypeOnUpdateTrackMetaupdateTrackMeta() を呼び出せない
room_spec.type
(updateTrackMeta()呼び出し時)
45004NeedLocalTracksOnConnectLocalTrack が存在しない
(connect()呼び出し時)
45005BadStateOnChangeMuteメソッドを呼べない state
(changeMute()呼び出し時)
45007BadStateOnUpdateTrackMetaメソッドを呼べない state
(updateTrackMeta()呼び出し時)
45008TrackNotFoundOnChangeMute変更対象の Track が存在しない
(changeMute()呼び出し時)
45009TrackNotFoundOnReplaceMediaStreamTrack変更対象の Track が存在しない
(replaceMediaStream()呼び出し時)
45010BadStateOnChangeMediaRequirementsメソッドを呼べない state
(ChangeMediaRequirements()呼び出し時)
45011UnsupportedRoomSpecTypeOnChangeMediaRequirementsChangeMediaRequirements() を呼び出せない room_spec.type
(ChangeMediaRequirements()呼び出し時)
45012ConnectionNotFoundOnChangeMediaRequirements変更対象の Connection が存在しない
(ChangeMediaRequirements()呼び出し時)
45013InvalidReceivingOptionOnChangeMediaRequirementsChangeMediaRequirements() を呼び出せない option.receiving
(ChangeMediaRequirements()呼び出し時)
45014InvalidLocalTracksOnConnectsending.enabled が false にも関わらず LocalTrack が指定されている
(connect()呼び出し時)
45015BadStateOnChangeVideoSendBitrateメソッドを呼べない state
もしくは AdaptiveSendingMode が NONE 以外(ChangeVideoSendBitrate()呼び出し時)
45016BadStateOnChangeVideoSendFramerateメソッドを呼べない state
(ChangeVideoSendFramerate()呼び出し時)
45017OutOfRangeMaxFramerateOnChangeVideoSendFrameratemaxFramerate が規定範囲外
(ChangeVideoSendFramerate()呼び出し時)
45018UnsupportedRoomSpecTypeOnChangeVideoSendBitrateメソッドを呼べない room_spec.type
(ChangeVideoSendBitrate()呼び出し時)
45019InvalidMaxBitrateKbpsOnChangeVideoSendBitratemaxBitrateKbps 形式違反
(ChangeVideoSendBitrate()呼び出し時)
45020InvalidMediaStreamTrackOnReplaceMediaStreamTrackmediaStreamTrack 形式違反
(ReplaceMediaStreamTrack()呼び出し時)
45021InvalidNextMuteTypeOnChangeMutenextMuteType 形式違反
(ChangeMute()呼び出し時)
45022OutOfRangeMaxTotalFileSizeOnSetLibWebrtcLogOptionmaxTotalFileSize が規定範囲外
(setLibWebrtcLogOption()呼び出し時)
45023BadStateOnSetAdaptiveSendingCapturerメソッドを呼べない state
(SetAdaptiveSendingCapturer()呼び出し時)
45024BadStateOnChangeAdaptiveSendingModeメソッドを呼べない state
(ChangeAdaptiveSendingMode()呼び出し時)
45025NeedCapturerOnChangeAdaptiveSendingModecapturer 未設定
(ChangeAdaptiveSendingMode()呼び出し時)
45104InvalidMetaNameOnUpdateConnectionmeta の name 形式違反
(updateConnection()呼び出し時)
45108TooLongMetaNameOnUpdateConnectionmeta の value の長さが規定以上
(updateConnection()呼び出し時)
45109NotFoundMetaOnUpdateConnectionupdate 対象の meta が存在していない
(updateConnection()呼び出し時)
45511TooLongMetaValueOnUpdateTrackMetameta の長さが規定文字以上
(updateTrackMeta()呼び出し時)
45512NotFoundMetaOnUpdateTrackMeta変更対象の meta が存在しない
(updateTrackMeta()呼び出し時)
45605TooManyMetaOnConnectmeta の数が規定数以上
(connect()呼び出し時)
45614TooLongMetaValueOnConnectmeta の長さが規定以上
(connect()呼び出し時)
45708OutOfRangeMaxBitrateKbpsOnChangeVideoSendBitratemaxBitrateKbps が規定範囲外
(ChangeVideoSendBitrate()呼び出し時)

NetworkError

codeerror説明原因
50001WebSocketErrorwebsocket がエラーとなった-
51001-
52999
WebSocketBadCloseXXXXwebsocket がエラークローズした-
53002ConnectionClosedByApplicationアプリケーションによって切断された-
53003MaxRoomPeriodExceededルーム接続時間の上限を超過した-
53004ConnectionClosedByServerSFU サーバから WebRTC 接続が切断された-
53601ConnectionLimitExceededRoom に max_connections の数の Connection が既に接続していた-
53719ConnectionCreateTimeout規定時間内にサーバ接続確立しなかったネットワーク環境の問題
サーバ混雑
53806ServerUnavailable利用可能なサーバが見つからなかったサーバ混雑
54001IceConnectionTimeout規定時間内に IceConnection が接続確立しなかったネットワーク環境の問題
54002SignalingTimeout規定時間内に Signaling メッセージが到達しなかったネットワーク環境の問題

※ NetworkError に関して原因が記載されているものに関しては、エラー発生後に connect()を再度行うこと(リトライ)で接続可能な場合があります。ただし、リトライで接続できるケースは、ネットワーク混雑等に起因する場合のみですので、ネットワーク環境のルーターやファイアウォールの設定に問題がある場合は、設定を修正してください。

UnexpectedError

codeerror説明
60000-
69999
InternalErrorXXXX内部エラー

この情報は役に立ちましたか?