Howdy,
We are still documenting this new functionality, and you should plan on deploying this in Kazoo 4.1 as that is the first version we consider it stable.
To get you started there is a new object that you can place on the account, user or device called 'call_recording'. Setting the appropriate values will trigger call recording and store it in the database or the provided URL. Using the storage plans you can have these recordings pushed external to the main bigcouch cluster.
The parameter schema is available here:
https://github.com/2600hz/kazoo/blob/master/applications/crossbar/priv/couchdb/schemas/call_recording.json
https://github.com/2600hz/kazoo/blob/master/applications/crossbar/priv/couchdb/schemas/call_recording.parameters.json
https://github.com/2600hz/kazoo/blob/master/applications/crossbar/priv/couchdb/schemas/call_recording.source.json
Here is an example payload for the account (the same object could be applied to a user or device):
{
"data":{
"name":"Example Account",
"realm":"3d885c.sip.example.com",
"call_recording":{
"account":{
"inbound":{
"onnet":{
"enabled":false
},
"offnet":{
"enabled":false
}
},
"outbound":{
"onnet":{
"enabled":false
},
"offnet":{
"enabled":false
}
}
},
"endpoint":{
"inbound":{
"onnet":{
"enabled":false
},
"offnet":{
"enabled":true
}
},
"outbound":{
"onnet":{
"enabled":false
},
"offnet":{
"enabled":true
}
}
}
}
}
}
The current version of the recording API (for listing and fetching) is here:
https://docs.2600hz.com/dev/applications/crossbar/doc/recordings/
Of course the original method of placing a recording start action in the callflow is still support as well.