30.10.2021

Talant Blogs about VOIP

Alexey Kazantsev Blog

Igor Olhovsky

30.07.2021

Front End.

Для создания телефонных проектов частно нужен веб интерфейс, скажем сейчас я даже не знаю ни одного проекта без предоставления веб-интерфейса. Все знают что есть фреймворки, и простые вещи такие как показать таблички из одной базы, что-то загрузить что-то отфильтровать – просто. Сложности начинаются когда надо действительно внедрить что-то что вы не знаете как делать силами фреймворка, а знать фреймворк хорошо это быть полноценным веб разработчиком. На этом этапе нам не нужно быть веб-разработчиками, но мы должны давать клиента хорошего качества вебстраницу на которой он сможет управлять своими телефонными сервисами.

Итак, я остановился, на том, что в проектах буду использовать:

Это простые системы, хорошо задокументированные. При помощи них легко создавать страницы для управления таблицами, загрузками или выгрузкой файлов и даже рисовать графики.

А шаблонизатор smarty позволяет разделить код и дизайн, чтобы фрон-энд разработчик в дальнейшем смог, делать любой дизайн.

Примеры:

1.05.2019

Черный список ip адресов для voip

sh скрипт который

!/bin/bash
BADIPSFILE="badips.list"
BADIPSFILETEMP="$BADIPSFILE".temp
ADDLISTFILE="$BADIPSFILE".load
# get new list
wget https://www.badips.com/get/list/voip/0 -O $BADIPSFILETEMP
# sort new list
sort $BADIPSFILETEMP -o $BADIPSFILETEMP
# touch to be sure that file exist
touch $BADIPSFILE
# diff old ans new file
diff $BADIPSFILE $BADIPSFILETEMP | grep -Po '\d+.\d+.\d+.\d+' > $ADDLISTFILE
# copy new file to old for next ips going fast
cp -f $BADIPSFILETEMP $BADIPSFILE
cp -f drop_temp.xml drop_temp_.xml
BLOCKED_IP=$ADDLISTFILE
IPTABLES="iptables"
if [ -f $BLOCKED_IP ]; then
while read BLOCKED; do
$IPTABLES -A INPUT_direct -i ens192 -s $BLOCKED -p udp -j DROP
done < $BLOCKED_IP
fi

20.12.2018

sox asterisk wav mp3

Хорошая статья по теме конвертации в mp3 для centos7. 

у меня лично возникла проблема со входящими файлами wav почему-то – sox не видел данных в них, пришлось явно указывать.

скрипт для конвертации всех файлов в каталоге в mp3

#!/usr/bin/perl
use strict;
use Proc::PID::File;

if (Proc::PID::File->running()) {
        print "Already running, exiting now\n";
        exit(0);
}


my @monitor_dirs=("/var/spool/asterisk/monitor");

foreach my $monitor_dir (@monitor_dirs) {
    opendir(my $dh,$monitor_dir) or die ("Cannot open dir $monitor_dir");
    print "Processing dir $monitor_dir\n";
    while (my $file=readdir($dh))  {

        next if $file !~m/\.wav$/;
        print "Processing file $file\n";
        my $newfile=$file;
        $newfile=~s/\.wav$/\.mp3/;

        system ("/usr/local/bin/sox -t raw -r 8000 -b 16 -e signed-integer  $monitor_dir/$file -t mp3 -C32 $monitor_dir/$newfile");
        sleep(0.01);
        if (-e "$monitor_dir/$newfile") {
            print "Coneverted sucessfully $file\n";
            unlink "$monitor_dir/$file";
        }

    }
    closedir($dh);
}