I am using asterisk version 16 and my application written over ari-client NPM library over nodejs.
I have come across a requirement that I have to send call media to 3rd party over in a specific JSON format like
“event”: “media”,
“sequenceNumber”: “1”,
“media”: {
“track”: “inbound”,
“chunk”: “1”,
“timestamp”: “5”,
“payload”: “payload is here the actual media”
},
I have tried the external media also like
call.channel.externalMedia(
{app: cfg.asterisk.stasisApp, external_host: “3rd_party_domain:443”, format: “ulaw”},
function (err, channel_webrtc) {
if(err){ logger.log('err: ',err); }else { logger.log(“success”);
}
}
);
Here are the CLI trace of the call with this code.
*-- Executing [+91172350xxx@root:1] Verbose("SIP/JIO_SIP-00000022", "1, Incoming did of 89 Server Call on MM CLI: +911723xxxxxx rom ani: +9177xxxxxxx") in new stack*
- Incoming did of 89 Server Call on MM CLI: +9117xxxxxx from ani: +917740xxxxx*
- – Executing [+9117235xxxx@root:2] Answer(“SIP/JIO_SIP-00000022”, “”) in new stack*
- – Executing [+9117235xxxx@root:3] Stasis(“SIP/JIO_SIP-00000022”, “cloud_pbx_dev_bot”) in new stack*
- – Channel Recorder/ARI-0000001d;2 joined ‘simple_bridge’ stasis-bridge *
- – x=0, open writing: /var/spool/asterisk/AIBOT_1689688317.170_1689ds688317867 format: wav, 0x7fdeb0000df0*
- – Channel SIP/JIO_SIP-00000022 joined ‘simple_bridge’ stasis-bridge *
- – Called 3rd_party_domain:443*
- – UnicastRTP/3rd_party_domain-0x7fdea804a0a0 answered*
-
> Launching Stasis(cloud_pbx_dev_bot) on UnicastRTP/3rd_party_domain-0x7fdea804a0a0*
any help is appreciated , I have not found anything related to this online and so far I come cross this like:-
https://wiki.asterisk.org/wiki/display/AST/External+Media+and+ARI