QH
Size: a a a
QH
QH
QH
ДТ
ДТ
ДТ
AP
DB
ДТ
ДТ
ДТ
ДТ
DB
DB
#!/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
ДТ
ДТ
АЧ
#!/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"
АЧ
AS