Speech recognition
When utilizing the call recording feature, including for forwarded calls, the Call Recordings resource (/record/
) will reflect the record_transfer
attribute.
record_transfer
bool
This flag indicates whether recording is enabled for call forwarding. If false
, the channel of the extension number is recorded; if true
, the opposite channel from the extension is recorded.
With stereo recording combination, depending on the record_transfer
flag, if recording the channel of the extension (record_transfer = false
), the voice from the extension will be on the left side, and if record_transfer = true
, it will be on the right side.
Also, real-time speech recognition based on events is possible:
Speech to text conversion (speech to text) section 2
Post-event speech recognition can be performed by requesting call recordings filtered by start_datetime
and end_datetime
.
To exclude internal calls (from extension to extension), you can use the following logic:
For flow = out
, ignore if dest_number
contains the client prefix or, in rare cases, it may just indicate an extension, for example:
{ "record_uuid": "31456-D9759C52070011EBAE220F22CF0C0E98",
"flow": "out",
"dest_number": "1234*101", // This could be just "101" }
This can be interpreted as an outgoing call from the PBX extension to extension 101, where flow = out
always signifies the source of the call is an extension.
For flow = in
, exclude if source_number
contains the client prefix or, in rare cases, it may just indicate an extension, for example:
{ "record_uuid": "31456-D9759C52070011EBAE220F22CF0C0E98",
"flow": "in",
"source_number": "1234*101", // This could be just "101" }
This can be interpreted as an incoming call from extension 101, where flow = in
always signifies the recipient is an extension.
The client's prefix and the length of its extensions can be found in the resource /client/{client_id}/client/
, in the "prefix"
and "extension_len"
fields, or can be determined by a regular expression (regex):
[0-9]{3,6}*[0-9]{2,4}