]> git.ipfire.org Git - thirdparty/asterisk.git/commit
app_confbridge: Use bridge join hook to send join and leave events
authorGeorge Joseph <gjoseph@digium.com>
Thu, 27 Sep 2018 18:19:28 +0000 (12:19 -0600)
committerGeorge Joseph <gjoseph@digium.com>
Fri, 28 Sep 2018 12:33:08 +0000 (07:33 -0500)
commit48cf5486544d91ff764b81344341d2813f93b3ce
tree3256d4df35ae8e4d1f9d67741df5ff708170b555
parentb8a74b4f7d0fbe0fd39b351dda620aa35662d224
app_confbridge:  Use bridge join hook to send join and leave events

The first attempt at publishing confbridge events to participants
involved publishing them at the same time stasis events were
created.  This caused issues with bridge and channel locks.  The
second attempt involved publishing them when the stasis events
were received by the code that published the confbridge AMI events.
This caused timing issues because, depending on resources available,
the event could be received before channels actually joined the
bridge and would therefore fail to send messages to the participant.

This attempt reverts to the original mechanism with one exception.
The join and leave events are published via bridge join and leave
hooks.  This guarantees the states of the channels and bridge and
provides deterministic timing for event publishing.

Change-Id: I2660074f8a30a5224cb953d5e047ee84484a9036
apps/app_confbridge.c
apps/confbridge/confbridge_manager.c
apps/confbridge/include/confbridge.h