On Wed, Mar 26, 2014 at 11:15 AM, Kinsey Moore <kmoore@xxxxxxxxxx> wrote:
Hello everyone,I'd like to get some feedback from the community regarding the current operation of bridge creation and bridge subscriptions.
Recently, a fix for a bridge subscription leak was committed which caused two tests to fail. These tests were expecting to have a persistent subscription to the bridge for its entire lifetime which isn't entirely unreasonable but is not the way that the API is currently designed.
Currently, the API is designed such that a user of the API must first create a bridge and then subscribe to it if it wants additional information as events via websocket during the lifetime of the bridge. The review[1] to fix these two failings tests assumes this is the correct way to do things and modifies subscriptions during the lifetime of the bridge accordingly. One downside of this is that between creation and subscription, some other entity could alter the state of the bridge without its creator or subscriber(s) knowing.
An alternative fix for these broken tests would be to add a parameter to the POST that creates the bridge to allow automatic creation of subscriptions for one or more Stasis applications. This solution would prevent modification of the bridge's state without the creator or other designated application knowing about it.
I think that's the best approach.
One thing we need to document soon is the relationship between the WebSocket connection and a Stasis application and the RESTful ARI interface. That part is where things got a bit confusing in this issue.
Are there other solutions worth considering?
For now, I'd say commit the fix to the tests, along with a note in the UPGRADE file noting the difference in behaviour. It should note that it was really a bug fix, but is still a behavioural change.
--
Matthew Jordan
Digium, Inc. | Engineering Manager
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
Check us out at: http://digium.com & http://asterisk.org
_______________________________________________ asterisk-app-dev mailing list asterisk-app-dev@xxxxxxxxxxxxxxxx http://lists.digium.com/cgi-bin/mailman/listinfo/asterisk-app-dev