Amazon Chime SDK を使った Amazon Chime ミーティングで WebRTC 接続が切断されてしまう理由を教えてください

2021.10.16

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

困っていた内容

amazon-chime-sdk-component-library-react を使って、ブラウザからAmazon Chimeのミーティングを使用するWebアプリを作成しています。

Webアプリ上で、Chimeを使ったミーティングを続けていると、ミーティングが突然切断されてしまうことがあり、その時に以下のログがブラウザのコンソール上に表示されます。

2021-10-4T01:45:31.276Z [ ERROR ] SDK - session will not be reconnected
2021-10-4T01:45:31.277Z [ ERROR ] SDK - failed with status code MeetingEnded

Mac OS Chrome / Windows 10 Chrome の双方で、同じことが起きることを確認しています。

このエラーが発生するときは、audioVideoDidStart オブザーバが実行されて、 MTGに接続されてしばらく経った後(場合によって時間が異なります)、 先のSDKのエラーログが表示されて audioVideoDidStop オブザーバが実行されます。

WebRTC 接続が切断されてしまう理由を教えてください。

どう対応すればいいの?

参考資料 [1] に下記の記述があります。

MeetingSessionStatus を参照し、セッションの切断理由を確認してください。

audioVideoDidStop: occurs when the audio-video session has disconnected. Use the provided MeetingSessionStatus to determine why the session disconnected.

また、[2] に考えられる原因についての記述がございます。こちらもご参考ください。

===== [2] 抜粋 日本語訳 =====
1. 削除された参加者の応答を使用してChime SDK 会議に参加しようとすると、Chime SDK forJavaScript はステータスコード SignalingBadRequest でエラーをスローします。 
あなたや他の参加者が DeleteAttendee API アクションで出席者を削除できることに注意してください。

2. Chime バックエンドからのクローズコード 4410 は、出席者がすでに終了した会議に参加しようとしたことを示します。 Chime SDK for JavaScript は、ステータスコード MeetingEnded でエラーをスローします。

3. 4500 〜 4599 のクローズコードは、Amazon Chime バックエンドの内部サーバーエラーを示しています。 
このケースでは、Chime SDK for JavaScriptは、ステータスコードSignalingInternalServerError でエラーをスローします。 
Chime SDK ブラウザログを含むGitHubの issue を作成してください。
===== [2] 抜粋 日本語訳 =====

参考資料

[1] API Overview | amazon-chime-sdk-js

[2] FAQs | amazon-chime-sdk-js