-
Notifications
You must be signed in to change notification settings - Fork 94
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[iOS SDK] Unexpected delegate callbacks after disconnecting from a call #85
Comments
Hey @ryanespiritu, Thanks for your issue. I've assigned @mariusu-msft to take a look at your inquiry. They should reply soon. |
Hey @mariusu-msft, this issue has been marked as needing attention. Please review the issue and remove the Needs: Attention label if this was done in error. Thank you! |
To add a little color here,
|
Hi, For 2nd point, we can take that under consideration as a feature request, it does not currently happen. Please open a new issue for this one so we can track the ask. For 1st point, that is a known bug, after hang-up there should be no more events showing up. -Marius |
Thanks @mariusu-msft . When should we expect a fix for the known bug? |
Bug is assigned to @sankum-msft, targeting current sprint. We will try to do a public release in week of 15th. -Marius |
This should be now fixed. Please reopen if you encounter same issue again. |
Hi All,
We came across an interesting scenario regarding the lifecycle of an
ACSCall
. Locally we have a “Call Manager” class setup that maintains a reference to theACSCall
and implementsACSCallDelegate
andACSRemoteParticipantDelegate
. We noticed that after disconnecting from a call and releasing our “Call Manager” object, we still would receive callbacks forACSCallDelegate
andACSRemoteParticipantDelegate
to our now released object which in turn caused exceptions to occur.Our hypothesis is that the ACS objects strongly retain our “Call Manager” object as their delegate, so even after the call is disconnected from our PoV, the extraneous events will still try to propagate back to the released delegate. For some context, the delegate callbacks we received after leaving the call were events for
onRemoteParticipantsUpdated
,onParticipantStateChanged
, etc. which were related to the other participant in the call at the time. It seems like that even after disconnecting from the call, ACS may perform some extra clean-up work related to removing the remote participant resources.While we do have a workaround to set the delegates to
nil
in thedealloc
of our “Call Manager”, we were wondering if this implementation was intended as it makes things a bit tricky when trying to manage the lifecycle of the call and knowing when to release our local objects.Any guidance on how a call + lifecycle is intended to be managed would be much appreciated, thank you!
The text was updated successfully, but these errors were encountered: