本文書では、Live Streaming Conference のエラー仕様について記載します。
LSConfSDK からは 2 種類のエラーをアプリケーションに返します。
エラーは例外及びエラーイベントで取得でき、エラーの詳細はErrorDetail
型で表現されます。
interface ErrorDetail {
code: Number;
type: string;
error: string;
}
エラーコードが 4桁
のエラーは LSConf で発生したエラーです。
type | 発生箇所 | code | 概要 | 説明 |
---|---|---|---|---|
RequestError | LSConfSDK | 4000 番台 | リクエストエラー | リクエストの結果がエラーになった |
InternalError | LSConfSDK | 5000 番台 | 予期しないエラー | LSConf 開発者に問い合わせが必要なエラー |
エラーコードが 5桁
のエラーは LSConf 内で利用する LSClientSDK で発生したエラーです。
LSClientSDK のエラー仕様については RICOH Live Streaming Client SDK エラー仕様 を参照ください。
関数呼び出し時のエラーは Error
クラスの派生クラスの LSConfError
クラスで取得できます。
利用例
try {
await frame.join(...);
} catch (error) {
if (error instanceof LSConfError) {
console.log(error.detail.code);
console.log(error.detail.type);
console.log(error.detail.error);
console.log(error.toReportString());
}
}
LSClientSDK で発生したエラーについては、問い合わせ時に toReportString()
の情報が必要となります。
toReportString()
はエラー内容によっては数十 KB になる場合があるため、エラー出力などを行う場合は注意してくださいtoReportString()
を問い合わせ以外の目的で利用することはサポートしませんその他のエラーは error
イベントを listen することで取得できます。
イベントハンドラには LSConfErrorEvent
クラスが通知されます。
エラー詳細は LSConfErrorEvent
クラスの error.detail
メンバに含まれる。
LSClientSDK で発生したエラーについては、問い合わせ時に toReportString()
の情報が必要となります。
toReportString()
はエラー内容によっては数十 KB になる場合があるため、エラー出力などを行う場合は注意してくださいtoReportString()
を 問い合わせ以外の目的で利用することはサポートしません利用例
frame.addEventListener('error', (event: LSConfErrorEvent) => {
console.log(event.error.detail.code);
console.log(event.error.detail.type);
console.log(event.error.detail.error);
console.log(event.error.toReportString());
if (event.error.data) {
// エラーデータが含まれるエラー時のみ
console.log(event.error.data);
}
});
以下のエラーイベントはエラーデータを取得することが可能です。
指定したメディアソースにエラーが発生した
{
type: 'error',
error: {
detail: ErrorDetail,
data: {
connectionId: IDString
}
}
}
Name | Type | 説明 |
---|---|---|
connectionId | IDString | エラーが発生した connection_id |
code | type | error | 説明 |
---|---|---|---|
4010 | RequestError | CreateArgsInvalid | create の引数に誤りがある |
4020 | RequestError | JoinArgsInvalid | join の引数に誤りがある |
4030 | RequestError | SetArgsInvalid | set の引数に誤りがある |
4040 | RequestError | CreateFailed | LSConf への postMessage に失敗した |
4041 | RequestError | CreateTimeout | LSConf の iframe の onload のタイムアウトが発生した |
4050 | RequestError | JoinFailed | LSConf への postMessage に失敗した |
4051 | RequestError | JoinFailedTimeout | LSConf への join のレスポンスがタイムアウト(10 秒)した |
4060 | RequestError | CloseFailed | LSConf への postMessage に失敗した |
4070 | RequestError | CameraMuteFailed | LSConf への postMessage に失敗した |
4080 | RequestError | MicMuteFailed | LSConf への postMessage に失敗した |
4090 | RequestError | ShareRequestFailed | LSConf への postMessage に失敗した |
4100 | RequestError | GetReportFailed | LSConf への postMessage に失敗した |
4101 | RequestError | GetReportError | 対象のクライアントが存在しない (VideoAudio/ScreenShare) |
4110 | RequestError | ChangeLayoutFailed | LSConf への postMessage に失敗した |
4120 | RequestError | GetDeviceFailed | 接続時のカメラやマイクのデバイス取得に失敗した |
4130 | RequestError | GetSubViewsFailed | LSConf への postMessage に失敗した |
4131 | RequestError | GetSubViewsError | getSubViews の実行時にエラーが発生した |
4140 | RequestError | GetPoVFailed | LSConf への postMessage に失敗した |
4141 | RequestError | GetPoVError | 対象の SubView が存在しない |
4150 | RequestError | GetPoVArgsInvalid | getPoV の引数に誤りがある 360 映像でない SubView に対してリクエストをした |
4160 | RequestError | SetPoVFailed | LSConf への postMessage に失敗した |
4161 | RequestError | SetPoVError | 対象の SubView が存在しない |
4170 | RequestError | SetPoVArgsInvalid | setPoV の引数に誤りがある 360 映像でない SubView に対してリクエストをした |
4180 | RequestError | ShareRequestArgsInvalid | onShareRequested 時の返り値のパラメータに誤りがある |
4190 | RequestError | HighlightArgsInvalid | highlight の引数に誤りがある |
4200 | RequestError | HighlightFailed | LSConf への postMessage に失敗した |
4210 | RequestError | HighlightError | 対象の SubView が存在しない |
4220 | RequestError | AddRecordingMemberArgsInvalid | addRecordingMember の引数に誤りがある |
4230 | RequestError | AddRecordingMemberFailed | LSConf への postMessage に失敗した |
4240 | RequestError | AddRecordingMemberError | 対象の SubView や ConnectionID が存在しない |
4250 | RequestError | RemoveRecordingMemberArgsInvalid | removeRecordingMember の引数に誤りがある |
4260 | RequestError | RemoveRecordingMemberFailed | LSConf への postMessage に失敗した |
4270 | RequestError | RemoveRecordingMemberError | 対象の SubView や ConnectionID が存在しない |
4280 | RequestError | SetCameraDeviceFailed | LSConf への postMessage に失敗した |
4290 | RequestError | SetMicDeviceFailed | LSConf への postMessage に失敗した |
4300 | RequestError | GetMediaDevicesFailed | LSConf への postMessage に失敗した |
4310 | RequestError | GetMediaDevicesError | カメラやマイクのデバイス取得時にエラーが発生した |
4320 | RequestError | GetCaptureImageFailed | LSConf への postMessage に失敗した |
4330 | RequestError | GetCaptureImageError | 対象の SubView が存在しない キャプチャした画像が真っ黒である |
4331 | RequestError | GetCaptureImageErrorCameraMuted | 対象の SubView がカメラミュート状態だった |
4340 | RequestError | GetCaptureImageArgsInvalid | getCaptureImage の引数に誤りがある |
4350 | RequestError | StartRecordingFailed | ローカル録画対象の MediaStream が存在しない ローカル録画対象の MediaStream が inactive ローカル録画対象がカメラミュート |
4351 | RequestError | RecordingErrorBlackScreen | ローカル録画中に既知の問題の No.23 の黒画面を検知した(誤検知の可能性もあるため、正常に録画できるのを確認した環境でこのメッセージが表示される場合は無視しても問題ありません) |
4360 | RequestError | StartReceiveVideoFailed | LSConf への postMessage に失敗した |
4370 | RequestError | StartReceiveVideoError | 対象の SubView が存在しない web-sdk 側でエラーが発生した |
4380 | RequestError | StartReceiveVideoArgsInvalid | startReceiveVideo の引数に誤りがある |
4390 | RequestError | StopReceiveVideoFailed | LSConf への postMessage に失敗した |
4400 | RequestError | StopReceiveVideoError | 対象の SubView が存在しない web-sdk 側でエラーが発生した |
4410 | RequestError | StopReceiveVideoArgsInvalid | stopReceiveVideo の引数に誤りがある |
4420 | RequestError | GetLSConfLogFailed | LSConf への postMessage に失敗した |
4430 | RequestError | GetLSConfLogError | getLSConfLog の実行時にエラーが発生した |
4440 | RequestError | EnablePointerFailed | LSConf への postMessage に失敗した |
4450 | RequestError | UpdatePointerArgsInvalid | updatePointer の引数に誤りがある |
4460 | RequestError | UpdatePointerFailed | LSConf への postMessage に失敗した |
4470 | RequestError | UpdatePointerError | 対象の SubView が存在しない |
4480 | RequestError | ModeInvalid | join 時に指定されたモードでは実行できないメソッドを実行した |
4490 | RequestError | ChangeLayoutArgsInvalid | changeLayout の引数に誤りがある |
4500 | RequestError | EnableZoomFailed | LSConf への postMessage に失敗した |
4510 | RequestError | EnableZoomError | 対象の SubView が存在しない |
4520 | RequestError | EnableZoomArgsInvalid | enableZoom の引数に誤りがある |
4530 | RequestError | GetStatsArgsInvalid | getStats の引数に誤りがある |
4540 | RequestError | GetStatsFailed | LSConf への postMessage に失敗した |
4550 | RequestError | GetStatsError | 対象の SubView が存在しない |
4560 | RequestError | SetRotationVectorFailed | LSConf への postMessage に失敗した |
4570 | RequestError | SetRotationVectorError | 対象の SubView が存在しない |
4580 | RequestError | SetRotationVectorArgsInvalid | setRotationVector の引数に誤りがある |
4590 | RequestError | CreateTypeInvalid | create/createPlayer 後に許可されていないメソッドを実行した (Room/Player) |
4600 | RequestError | UpdateStrokeArgsInvalid | updateStroke の引数に誤りがある |
4610 | RequestError | UpdateStrokeFailed | LSConf への postMessage に失敗した |
4620 | RequestError | AddVideoSourceFailed | LSConf への postMessage に失敗した |
4640 | RequestError | AddVideoSourceArgsInvalid | addVideoSource の引数に誤りがある |
4650 | RequestError | MediaSourceError | 指定したメディアソースにエラーが発生した |
4660 | RequestError | AddImageSourceFailed | LSConf への postMessage に失敗した |
4670 | RequestError | AddImageSourceError | 対象のファイルが画像ファイルではない 指定された URL にアクセスできない 指定された URL へのアクセス中に予期せぬエラーが発生 |
4680 | RequestError | AddImageSourceArgsInvalid | addImageSource の引数に誤りがある |
4690 | RequestError | RemoveImageSourceFailed | LSConf への postMessage に失敗した |
4700 | RequestError | RemoveImageSourceError | 対象の ConnectionID が存在しない または 対象の SubView.mediaType が 'IMAGE_FILE' ではない |
4710 | RequestError | RemoveImageSourceArgsInvalid | removeImageSource の引数に誤りがある |
4720 | RequestError | ChangePlayerStateFailed | LSConf への postMessage に失敗した |
4730 | RequestError | ChangePlayerStateArgsInvalid | changePlayerState の引数に誤りがある |
4740 | RequestError | SetSpeakerVolumeFailed | LSConf への postMessage に失敗した |
4750 | RequestError | SetSpeakerVolumeArgsInvalid | setSpeakerVolume の引数に誤りがある |
4760 | RequestError | SetSeekPositionFailed | LSConf への postMessage に失敗した |
4770 | RequestError | SetSeekPositionArgsInvalid | setSeekPosition の引数に誤りがある |
4780 | RequestError | SetVideoSendBitrateFailed | LSConf への postMessage に失敗した |
4800 | RequestError | SetVideoSendBitrateArgsInvalid | setVideoSendBitrate の引数に誤りがある |
4810 | RequestError | SetVideoSendFramerateFailed | LSConf への postMessage に失敗した |
4820 | RequestError | SetVideoSendFramerateError | setVideoSendFramerate に非対応のブラウザでリクエストした |
4830 | RequestError | SetVideoSendFramerateArgsInvalid | setVideoSendFramerate の引数に誤りがある |
4840 | RequestError | SetVideoAudioConstraintsFailed | LSConf への postMessage に失敗した |
4850 | RequestError | SetVideoAudioConstraintsError | 指定されたパラメータでの getUserMedia に失敗した |
4860 | RequestError | SetVideoAudioConstraintsArgsInvalid | setVideoAudioConstraints の引数に誤りがある |
5000- 5999 | InternalError | InternalErrorXXX | LSConfSDK の内部エラー |
※ エラーコードが 5桁
の LSClientSDK のエラーについては RICOH Live Streaming Client SDK エラー仕様 を参照ください。
この情報は役に立ちましたか?