Распознавание речи

В случае использования функционала записи разговоров в том числе переадресованных вызовов в ресурсе https://ringme-confluence.atlassian.net/wiki/spaces/Ringme/pages/1901921281 отражается record_transfer

record_transfer

bool

Признак записи при переадресации. В случае false записывается канал добавочного номера, в случае true- противоположный канал от добавочного.

С комбинацией записи в стерео в зависимости от признака record_transfer в случае записи канала добавочного (record_transfer = false) - голос с добавочного будет с левой стороны, а в случае record_transfer = true с правой.

 

Также возможно распознавание речи в реальном времени на основе событий:

Преобразование речи в текст (speech to text) п.2

 

Постфактум распознавание речи может выполняться запросом записи разговоров по фильтру start_datetime и end_datetime,

Для исключения внутренних звонков (с добавочный на добавочный) можно использовать логику:

  • запись flow =out нужно игнорировать, если dest_number содержит клиентский префикс или в редких случаях там может быть просто указан добавочный
    например:

    { .... "record_uuid": "31456-D9759C52070011EBAE220F22CF0C0E98", .... "flow": "out", "dest_number": "1234*101", (может быть просто 101) ... }, можно прочитать так - исходящий вызов с добавочного атс на добавочный 101, всегда flow out всегда источник вызова- добавочный
  • flow =in нужно исключить source_number содержащий клиентский префикс или в редких случаях там может быть просто указан добавочный
    например:

    { .... "record_uuid": "31456-D9759C52070011EBAE220F22CF0C0E98", .... "flow": "in", "source_number": "1234*101", (может быть просто 101) ... }, можно прочитать так - входящий вызов с добавочного 101, всегда при flow in всегда получатель- добавочный


    префикс клиента и длину его добавочных можно узнать в ресурсе /client/{client_id}/client/
    поля "prefix" и "extension_len", либо определить регулярным выражением (regex):

    [0-9]{3,6}*[0-9]{2,4}