We have a call flow application that works with Asterisk and the ARI. I’d like to be able to create a mixing bridge once the inbound channel is created, and record the bridge. When the outbound channel is added to the mixing bridge, the recording is stopped. Is this a known situation, when going from 1 to 2 channels on a mixing bridge, that the existing recording will end? We also create inbound and outbound snoop channels and record those, so in total we’ll have 3 recordings at the end of the call.
I’ve not heard of such a thing happening regarding recording, and there is no issue reported for it. Would need to see the full ARI requests and events.
Thanks for the reply. I have additional info that may help. It is not that a second channel added to the bridge causes the recording to stop as mentioned earlier - that was simply that the logs indicating the recording stopped were close in time to the logs where the outbound channel is created; the recording will stop regardless.
Asterisk 18.19.0
I have been able to get the recording to work if I post a playback to the bridge, instead of to the inbound channel, right after the recording on the bridge is created. When I do not post a playback to the bridge, about 4 seconds later the recording ends (and is empty).
Working simplified flow
Create bridge via POST:
/ari/bridges?type=mixing,proxy_media&bridgeId=d29a6bee-b33a-4331-af1d-e07e19db0a48&name=Bridge_d93b53ee-f70a-4493-a9bb-c19fb2adfc53-Mixing
Add inbound channel via POST:
/ari/bridges/d29a6bee-b33a-4331-af1d-e07e19db0a48/addChannel?channel=1716306872.74
Record bridge via POST:
/ari/bridges/d29a6bee-b33a-4331-af1d-e07e19db0a48/record?name=P45_163_10064_20240521115433_B&format=wav&beep=false
Playback to bridge via POST:
/ari/bridges/d29a6bee-b33a-4331-af1d-e07e19db0a48/play/527ca697-d750-4fc5-ae67-49e66a88fdd1?media=sound:recorded_monitored&lang=en
Notes: When bridge is created, its type states simple_bridge. When playing a recording to the bridge, a softmix bridge is created. When playback finishes, a simple_bridge is created again.
Non-working simplified flow
Create bridge via POST:
POST /ari/bridges?type=mixing,proxy_media&bridgeId=05118042-a827-4b0f-abb6-ba482f59be98&name=Bridge_77b63590-f575-4c53-9aaf-1937a849b620-Mixing
Add inbound channel via POST:
POST /ari/bridges/05118042-a827-4b0f-abb6-ba482f59be98/addChannel?channel=1716305312.62
Record bridge via POST:
POST /ari/bridges/05118042-a827-4b0f-abb6-ba482f59be98/record?name=P45_163_10064_20240521112833_B&format=wav&beep=false
Playback to channel via POST:
POST /ari/channels/1716305312.62/play/6d850031-ae57-42c3-a5cd-09cf2f201fe4?media=sound:recorded_monitored&lang=en
Notes: When bridge is created, its type states simple_bridge. 4 seconds after recording started, the following is logged:
No audio available on Recorder/ARI-00000008;1??
Channel 0x7ff8a800b440 ‘Recorder/ARI-00000008;1’ hanging up
Channel Recorder/ARI-00000008;2 left ‘simple_bridge’
This is the first time you’ve mentioned any playbacks being done. Since you’re playing back to a specific channel that effectively takes it out of the bridge temporarily resulting in the bridge having no audio flowing. That would be why the recorder is not receiving any audio and why it stops. You can submit a feature request[1] for making the behavior configurable in such a scenario.
Apologies on the lack of info with the first post. Wasn’t quite sure how detailed to get right out of the gate, and will be sure to include more next time. I’ll go ahead and request the feature.
Appreciate it.