Size: a a a

2021 March 09

QH

Quiet Haven in Asterisker-ы
Посмотри нет ли плюса в имени файла
источник

QH

Quiet Haven in Asterisker-ы
Плюс в запросах в адресной строке обычно не проходит
источник

QH

Quiet Haven in Asterisker-ы
Вчера буквально такую проблему решал
источник

ДТ

Денис Троценко... in Asterisker-ы
К примеру таким запросом меняю имя файла.

UPDATE cdr SET recordingfile="internal-333-222-20210309-080607-1615277167.10.mp3" WHERE recordingfile="internal-333-222-20210309-080607-1615277167.10.wav";
источник

ДТ

Денис Троценко... in Asterisker-ы
сек,вроде увидел ошибку
источник

ДТ

Денис Троценко... in Asterisker-ы
Допустил ошибку,всё получилось. Спасибо
источник

AP

A P in Asterisker-ы
Денис Троценко
Допустил ошибку,всё получилось. Спасибо
источник

DB

Dmitry Baryshnikov in Asterisker-ы
Денис Троценко
Допустил ошибку,всё получилось. Спасибо
а где ошибка то была, интересно ж
источник

ДТ

Денис Троценко... in Asterisker-ы
в имени файла,скрипт не менял запись в базе. Подставил вручную с ошибкой
источник

ДТ

Денис Троценко... in Asterisker-ы
сейчас буду скрипт править
источник

ДТ

Денис Троценко... in Asterisker-ы
Странно, но по этому ману переименовываться файл в базе не хочет
источник

ДТ

Денис Троценко... in Asterisker-ы
ругается на ERROR: Unknown command '\"'.
источник

DB

Dmitry Baryshnikov in Asterisker-ы
Денис Троценко
ругается на ERROR: Unknown command '\"'.
ну ошибка в синтаксисе скорей
источник

DB

Dmitry Baryshnikov in Asterisker-ы
#!/bin/bash

export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

#
# Convert Asterisk records to mp3
#

exec >/dev/null 2>&1

recorddir="/var/spool/asterisk/monitor"

for record_wav in $(find  "$recorddir"/ -name "*.wav" -mtime -3); do
       record_mp3=$(echo "$record_wav" | sed 's/\.wav/\.mp3/g')
       filename=$(echo "$record_wav" | rev | cut -f 1 -d / | rev)
       # If the wav-file has not been converted yet and is not currently in use by Asterisk
       if [ ! -f "$record_mp3" ] && ! grep -q "$filename" <(lsof -c asterisk); then
               # Save timestamp of wav-file
               date=$(ls --full-time "$record_wav" | awk '{print $6,$7}')
               # Convert file to mp3
               lame -V3 "$record_wav" "$record_mp3"
               # Apply old timestamp
               touch -d "$date" "$record_mp3"
               # Remove wav-file
               record_mp3_size="$(stat -c %s "$record_mp3")"
               if [ "$record_mp3_size" != '' ]; then
                       if [ $record_mp3_size -gt 0 ]; then
                               rm -f "$record_wav"
                       fi
               fi
       fi
done

# Update the 'recordingfile' field in the Asterisk CDR database
mysqlpass="$(grep "AMPDBPASS" /etc/freepbx.conf | awk '{printf $3}' | sed  -e "s/['|;]//g")"

mysqlscript="UPDATE cdr
SET recordingfile=replace(recordingfile,\".wav\",\".mp3\")
WHERE DATE_FORMAT(calldate, '%Y-%m-%d')
BETWEEN (CURDATE() - INTERVAL 7 DAY) AND (CURDATE() - INTERVAL 1 DAY);"

mysql --user=freepbxuser --password="$mysqlpass"  asteriskcdrdb <<< "$mysqlscript"
источник

DB

Dmitry Baryshnikov in Asterisker-ы
вот вам рабочее 100%
источник

ДТ

Денис Троценко... in Asterisker-ы
Спасибо,сейчас попробую
источник

ДТ

Денис Троценко... in Asterisker-ы
Получилось запрос в скрипте который в мане поправить,и заработало.
источник

АЧ

Александр Челноков... in Asterisker-ы
Dmitry Baryshnikov
#!/bin/bash

export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

#
# Convert Asterisk records to mp3
#

exec >/dev/null 2>&1

recorddir="/var/spool/asterisk/monitor"

for record_wav in $(find  "$recorddir"/ -name "*.wav" -mtime -3); do
       record_mp3=$(echo "$record_wav" | sed 's/\.wav/\.mp3/g')
       filename=$(echo "$record_wav" | rev | cut -f 1 -d / | rev)
       # If the wav-file has not been converted yet and is not currently in use by Asterisk
       if [ ! -f "$record_mp3" ] && ! grep -q "$filename" <(lsof -c asterisk); then
               # Save timestamp of wav-file
               date=$(ls --full-time "$record_wav" | awk '{print $6,$7}')
               # Convert file to mp3
               lame -V3 "$record_wav" "$record_mp3"
               # Apply old timestamp
               touch -d "$date" "$record_mp3"
               # Remove wav-file
               record_mp3_size="$(stat -c %s "$record_mp3")"
               if [ "$record_mp3_size" != '' ]; then
                       if [ $record_mp3_size -gt 0 ]; then
                               rm -f "$record_wav"
                       fi
               fi
       fi
done

# Update the 'recordingfile' field in the Asterisk CDR database
mysqlpass="$(grep "AMPDBPASS" /etc/freepbx.conf | awk '{printf $3}' | sed  -e "s/['|;]//g")"

mysqlscript="UPDATE cdr
SET recordingfile=replace(recordingfile,\".wav\",\".mp3\")
WHERE DATE_FORMAT(calldate, '%Y-%m-%d')
BETWEEN (CURDATE() - INTERVAL 7 DAY) AND (CURDATE() - INTERVAL 1 DAY);"

mysql --user=freepbxuser --password="$mysqlpass"  asteriskcdrdb <<< "$mysqlscript"
чет сложно для конвертации как то..
в моем случае конвертация рекурсивно в каталоге происходит так

find . -name "*.wav"|while read w;do lame -b 128 "$w" "${w/%.wav/_final.mp3}" ;rm $w ;done

можно и конкретный файл передать если сильно хочется по 1 файлу конвертить
источник

АЧ

Александр Челноков... in Asterisker-ы
я может сути не знаю.
но скрипт пугающий для такой простой задачи =)
источник

AS

Andrew Shmig in Asterisker-ы
Переслано от Andrew Shmig
Коллеги, будьте добры, помогите разобраться в чем проблема... уже взгляд настолько замылился, что ничего не вижу...

Кусок инвайта и ответ No matching endpoint found: https://paste.ubuntu.com/p/hG6TMVP8Wq/
А вот конфиг в pjsip.conf: https://paste.ubuntu.com/p/54pSDqfcmW/

Шо не так с конфигом-то?
источник