aws / amazon-chime-sdk-android

An Android client library for integrating multi-party communications powered by the Amazon Chime service.
https://aws.amazon.com/chime/chime-sdk/
Apache License 2.0
105 stars 49 forks source link

QUESTION: Timeout when user crash app or disconnect from internet #543

Closed kemruto closed 11 months ago

kemruto commented 1 year ago

Describe the bug My application want to show some text like "...... is disconnect" when other user is crash app or disconnect from meeting. I put log into onAttendeesDropped and onSignalStrengthChanged ( when SignalStrength is NONE ) and I have this result. If User B is turn on microphone, then crash app, after 3 - 5s onSignalStrengthChanged will return signal NONE, after 15s onAttendeesDropped wil return value But if User B is turn off microphone, then crash app, onSignalStrengthChanged will return signal NONE after 15s ( sometimes it's not return anything), after 15s onAttendeesDropped wil return value. Seems like Chime SDK detect user is in meeting by check their's signal from microphone right?

Expected behavior I expect whenever user is disconnect from meeting, after a few seconds ( 3 -5s ), Chime will return signal for me to update user's status

dingyishen-amazon commented 1 year ago

Thanks for reporting the issue. I try to reproduce with our demo app and the behavior is after User A is disconnected from meeting, after 2-3s UserA will see the signal strength update. Could you please try to follow the logic in our demo app when handling onSignalStrengthChanged/onAttendeesDropped?

kemruto commented 1 year ago

Hi @dingyishen-amazon, I will try your demo app Another case I want to report, I think it have the same problem with #231. Logic in my project is when onAttendeesDropped/onAttendeesLeft return only 1 user is in meeting, they will end the meeting So I meet this problem:

  1. User A and B are in the meeting
  2. User A turn on micro and disconnect internet. User B receive signal by onSignalStrengthChanged
  3. After about 15s, User A is reconnect to the meeting. But, user B was received signal from onAttendeesDropped that he is the only one in the meeting, so he will end the meeting.
  4. User A connect to meeting, he can still see that 2 people in the meeting

Not sure my logic end meeting is correct or not

georgezy-amzn commented 1 year ago

Hi @kemruto,

Technically how did you end the meeting at step 3? Did you call DeleteMeeting?