stsprecord ("send to sprecord") - программа, предназначенная для отправки записей разговоров в облако SpRecord.
Программа добавляет запись разговора в очередь. Запись будет отправлена службой отправки в фоновом режиме. Если во время отправки не будет доступа к сети Интернет, отправка будет отложена до восстановления соединения.
deb | rpm | |
---|---|---|
x32 | stsprecord_1.0.0-1_i386.deb | stsprecord-1.0.0-1.i686.rpm |
x64 | stsprecord_1.0.0-1_amd64.deb | stsprecord-1.0.0-1.x86_64.rpm |
stsprecord fname userid time numberA numberB [ опции ].
Основные параметрыПараметр | Назначение |
---|---|
fname | Путь к файлу записи. Поддерживаются форматы wav и mp3. |
userid | Путь к файлу записи. Поддерживаются форматы wav и mp3. Идентификатор аккаунта облака SpRecord. Получить его можно на сайте https://sprecord.com |
time | Дата и время совершения записи в формате "yyyy-mm-dd hh:mm:ss". Обрамление кавычками обязательно. |
numberA | Номер абонента A. |
numberB | Номер абонента B. |
Параметр | Назначение |
---|---|
-d direction | Направление вызова. Возможные значения: in - входящее out - исходящее |
-na name | Имя абонента A. |
-nb name | Имя абонента B. |
-s source | Название источника записи. Это может быть программа, устройство и пр. |
-ch channel | Канал устройства, с которого производилась запись. |
-cm comment | Комментарий к записи. |
-m | Вызов был пропущен. |
Программа устанавливает код завершения в зависимости от произошедших в результате обработки ошибок. Обратите внимание, что программа не возвращает результат отправки, т.к. отправка осуществляется службой отправки.
Код | Назначение |
---|---|
0 | Запись разговора успешно добавлена в очередь задач и будет отправлена при наличии соединения. |
1 | Указаны неверные параметры. |
2 | Не возможно определить длительность записи. |
3 | Внутренняя ошибка обработки, повторите попытку. |
4 |
Служба отправки не доступна, повторите попытку после перезапуска службы отправки: systemctl restart stsprecord.service |
Ниже приведен диалплан для Asterisk. Им обеспечивается запись разговоров, сжатие в mp3 и отправка в облако SpRecord. Запись разговоров представлена как для двустороннего разговора, так и для конференц-связи. Вместо your_account_id_here должен быть указан идентификатор аккаунта облака SpRecord. Для выполнения сжатия требуется установка утилиты lame. Возможно совместное использование с программой предупреждения о записи astwarn.
[fromsip] exten => _[12]X.,1,Set(caller=${CALLERID(num)}) exten => _[12]X.,n,Set(callee=${EXTEN}) exten => _[12]X.,n,Set(sdate=${EPOCH}) exten => _[12]X.,n,Set(fdate=${STRFTIME(${sdate},,%Y-%m-%d %H:%M:%S)}) exten => _[12]X.,n,Set(fname=/var/spool/asterisk/monitor/${UNIQUEID}-${callee}-${STRFTIME(${sdate},,%Y_%m_%d-%H_%M_%S)}) exten => _[12]X.,n,Set(ASTWARN(record)=true) exten => _[12]X.,n,MixMonitor(${fname}.wav) exten => _[12]X.,n,Dial(SIP/${EXTEN}) exten => _[12]X.,n,Hungup() exten => 555,1,Set(caller=${CALLERID(num)}) exten => 555,n,Set(callee=${EXTEN}) exten => 555,n,Set(sdate=${EPOCH}) exten => 555,n,Set(fdate=${STRFTIME(${sdate},,%Y-%m-%d %H:%M:%S)}) exten => 555,n,Set(fname=/var/spool/asterisk/monitor/${UNIQUEID}-${callee}-${STRFTIME(${sdate},,%Y_%m_%d-%H_%M_%S)}) exten => 555,n,Set(CONFBRIDGE(bridge,record_conference)=yes) exten => 555,n,Set(CONFBRIDGE(bridge,record_file)=${fname}.wav) exten => 555,n,Set(fname=${fname}-${CUT(CHANNEL(linkedid),.,1)}) exten => 555,n,ConfBridge(${callee}) exten => 555,n,Hungup() exten => h,1,StopMixMonitor() exten => h,n,Set(cloudid=your_account_id_here) exten => h,n,System(nice -n 19 /usr/bin/lame -b 32 --silent "${fname}.wav" "${fname}.mp3" && rm -f "${fname}.wav" && chmod o+r "${fname}.mp3" && stsprecord "${fname}.mp3" ${cloudid} "${fdate}" ${caller} ${callee})