Matt Riddell
2019-Jan-07 17:23 UTC
[asterisk-users] [asterisk-app-dev] ARI Node JS Bridge.addChannel
Hiya, I would have expected this to show the channels in the bridge inside the anonymous function - it shows the bridge is empty though? var bridge = ari.Bridge(); bridge.create({ type: 'holding', name: event.application+" bridge" }, function(err, bridge) { bridge.addChannel({ channel: incoming.id }, function(err) { console.log("Added to bridge") console.log(bridge.channels). ; <——— This Line console.log(err); }); Reason being, I’m creating a queue need to move channels between bridges depending on agent/customer status etc Cheers, Matt Riddell _______________________________________________ asterisk-app-dev mailing list asterisk-app-dev at lists.digium.com http://lists.digium.com/cgi-bin/mailman/listinfo/asterisk-app-dev
Joshua C. Colp
2019-Jan-07 17:25 UTC
[asterisk-users] [asterisk-app-dev] ARI Node JS Bridge.addChannel
On Mon, Jan 7, 2019, at 1:23 PM, Matt Riddell wrote:> Hiya, > > I would have expected this to show the channels in the bridge inside > the anonymous function - it shows the bridge is empty though? > > var bridge = ari.Bridge(); > bridge.create({ > type: 'holding', > name: event.application+" bridge" > }, function(err, bridge) { > bridge.addChannel({ > channel: incoming.id > }, function(err) { > console.log("Added to bridge") > console.log(bridge.channels). ; > <——— This Line > console.log(err); > }); >I believe you are accessing the snapshot, essentially, of the bridge at the time it was created in which case there would be no channels. You would need to retrieve an up to date snapshot to get the current state. -- Joshua C. Colp Digium - A Sangoma Company | Senior Software Developer 445 Jan Davis Drive NW - Huntsville, AL 35806 - US Check us out at: www.digium.com & www.asterisk.org _______________________________________________ asterisk-app-dev mailing list asterisk-app-dev at lists.digium.com http://lists.digium.com/cgi-bin/mailman/listinfo/asterisk-app-dev
Matt Riddell
2019-Jan-07 17:31 UTC
[asterisk-users] [asterisk-app-dev] ARI Node JS Bridge.addChannel
> On Jan 7, 2019, at 12:25, Joshua C. Colp <jcolp at digium.com> wrote: > > On Mon, Jan 7, 2019, at 1:23 PM, Matt Riddell wrote: >> Hiya, >> >> I would have expected this to show the channels in the bridge inside >> the anonymous function - it shows the bridge is empty though? >> >> var bridge = ari.Bridge(); >> bridge.create({ >> type: 'holding', >> name: event.application+" bridge" >> }, function(err, bridge) { >> bridge.addChannel({ >> channel: incoming.id >> }, function(err) { >> console.log("Added to bridge") >> console.log(bridge.channels). ; >> <——— This Line >> console.log(err); >> }); >> > > I believe you are accessing the snapshot, essentially, of the bridge at the time it was created in which case there would be no channels. You would need to retrieve an up to date snapshot to get the current state.Yeah cool that worked: ari.bridges.get({bridgeId: bridge.id}, function (err, newBridge) { console.log("New Bridge: "+newBridge.channels) }); _______________________________________________ asterisk-app-dev mailing list asterisk-app-dev at lists.digium.com http://lists.digium.com/cgi-bin/mailman/listinfo/asterisk-app-dev
Matt Riddell
2019-Jan-07 17:32 UTC
[asterisk-users] [asterisk-app-dev] ARI Node JS Bridge.addChannel
> On Jan 7, 2019, at 12:25, Joshua C. Colp <jcolp at digium.com> wrote: > > On Mon, Jan 7, 2019, at 1:23 PM, Matt Riddell wrote: >> Hiya, >> >> I would have expected this to show the channels in the bridge inside >> the anonymous function - it shows the bridge is empty though? >> >> var bridge = ari.Bridge(); >> bridge.create({ >> type: 'holding', >> name: event.application+" bridge" >> }, function(err, bridge) { >> bridge.addChannel({ >> channel: incoming.id >> }, function(err) { >> console.log("Added to bridge") >> console.log(bridge.channels). ; >> <——— This Line >> console.log(err); >> }); >> > > I believe you are accessing the snapshot, essentially, of the bridge at the time it was created in which case there would be no channels. You would need to retrieve an up to date snapshot to get the current state.Yeah cool that worked: ari.bridges.get({bridgeId: bridge.id}, function (err, newBridge) { console.log("New Bridge: "+newBridge.channels) }); _______________________________________________ asterisk-app-dev mailing list asterisk-app-dev at lists.digium.com http://lists.digium.com/cgi-bin/mailman/listinfo/asterisk-app-dev