amazon-chime-sdk-js
amazon-chime-sdk-js copied to clipboard
Inconsistent MeetingSessionStatusCode for attendee that was deleted from the meeting
1612375807087.log 1612375970535.log
Meeting and attendee IDs: Meeting ID: f5baf188-348a-47fb-a136-6aa6a1c54605 28efbe45-a0a4-3082-8333-01a7aa41cbc6 (the attendee that is being deleted from the meeting) 02c70647-4885-3195-7301-44899d7dd56a (the other attendee that stays in the meeting)
Timeline Kicked user from meeting immediately after the user joined
Describe the bug An attendee joins the meeting. Use the DeleteAttendee call to delete that attendee from the meeting. So far I have seen 3 different session status codes for the MeetingSessionStatusCode when the meeting ends on the deleted users side.
- 6 - AudioCallEnded
- 12 - SignalingBadRequest
- 22 - TURNCredentialsForbidden (this is the expected behavior per the docs)
This is causing inconsistent behaviors in the UI
Logs attached
Platform
- OS: WIn
- Browser: Chrome
- Browser Version: 89
- Amazon Chime SDK GitHub Commit: 1034
Before version 1.19.0, Amazon Chime SDK for JavaScript made an HTTP request to retrieve TURN credentials. Since 1.19.0, SDK uses a signaling connection (WebSocket) to get TURN credentials to improve startup time. Only if failed, SDK makes an HTTP request as a fallback.
In 1.19.0 and above, the attendee should receive the SignalingBadRequest
status code when you delete this attendee using the DeleteAttendee API in your server application.
But I could reproduce the same issue that the attendee receives MeetingEnded
(status code 6) in the following repro case.
Repro steps (5~10%)
- Use the CreateAttendee with the external user ID
test
to create Attendee A. - Attendee A joins the meeting in a browser.
- Use the DeleteAttendee API to delete Attendee A.
-
Attendee A is removed from the meeting with
SignalingBadRequest
as expected. - Use the CreateAttendee with the same external user ID
test
to create Attendee A again. - Use the DeleteAttendee API to delete Attendee A.
- Now, Attendee A receives
MeetingEnded
even though the meeting is still running.
Action items
- Investigate the inconsistent status issue for the deleted attendee.
- Improve the document about
SignalingBadRequest
andTURNCredentialsForbidden
.
Sorry for the late response. I am afraid I am not the right person for this task. The AudioAttendeeRemoved that I have been working on is a new feature and it has not been enabled in JS SDK. It does not affect the existing behavior. Someone from JS SDK must take a look at this issue.
I will kindly assign it back to you @devalevenkatesh in order to trigger a new re-assignment of the ticket. However, I will be watching the issue and I will be available for further explanations if needed. Thanks.