Record a call in ARI

How to record a call using ARI with on demand?

You use a Snoop channel to spy on the channel you want to record, and then use the record route on the Snoop channel. This creates an equivalent of the “MixMonitor” application.

Actually when a call is answered it needs to be recorded using a softphone button or a web application button ,so I click a softphone button and the recorded is started and if I click the same button again it is paused and so recorded files are created.This is the procedure.But how to realize this using ARI?

ARI provides an interface to write telephony applications, how you write those applications is up to you. ARI is just a component of what you are doing and is not itself involved in the button side or that interaction.

Okay I want to write application for recording calls?How to do it in ARI?

I’ve told you how to do it using the ARI interface. If you are asking how to write the application that actually does it, then I don’t really have an answer.

1 Like

But when we do Mix Monitor it don’t uses extra channel right ? but when we do bridge record it create Recorder/ARI-00003c2c channel ? which makes many extra channel in asterisk it that expected behaviour ?

It is expected. They work and are implemented differently.

in node ari client the docs provided ari.channels.record({
channelId: val,
format: val,
name: val
})
.then(function (liverecording) {})
.catch(function (err) {});

but the docs said that this method can be record from incoming peer.

It kind of connected question, so if we create a bridge and record that. Tt creates that extra channel does this in term of no of call handling in asterisk Is this any different when we use MixMonitor which at least don’t show me any channel is created (may be internally is)

Because in this case just for this 1 call we have 3 channel active.

Kind of same happens when we play media in bridge it again create Announcer Channel

It’s different in that it uses a channel to move the audio around, otherwise the same underlying fundamentals are used and if you want to do MixMonitor functionality in ARI, that’s how you do it. Otherwise you go back to the dialplan and use MixMonitor.