aws / amazon-chime-sdk-js

A JavaScript client library for integrating multi-party communications powered by the Amazon Chime service.
Apache License 2.0
701 stars 473 forks source link

Improve reconnection behavior on signaling disconnection #2744

Closed hensmi-amazon closed 12 months ago

hensmi-amazon commented 12 months ago

Issue #: https://github.com/aws/amazon-chime-sdk-js/issues/2568, other internal requests.

Description of changes: This consolidates signaling channel reconnection triggering to MonitorTask, and adds a new status code SignalChannelClosedUnexpectedly to achieve that task. It also fixes reconnection during joins and subscribes, and adds actual bad JOIN message handling instead of the previous, which sorta worked and sorta didn't :).

Testing: Tested reconnection occurs in the following situations:

Can these tested using a demo application? Please provide reproducible step-by-step instructions. You can't test these easily besides the mid-call reconnection:

Checklist:

  1. Have you successfully run npm run build:release locally? y

  2. Do you add, modify, or delete public API definitions? If yes, has that been reviewed and approved? n

  3. Do you change the wire protocol, e.g. the request method? If yes, has that been reviewed and approved? n

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.