Архів теґу: asterisk

Asterisk: импорт из Master.csv в Postgresql

postgres=# CREATE USER ast_user with password ‘xxxxxxx’; CREATE ROLE postgres=# CREATE DATABASE ast_db with owner ast_user; CREATE DATABASE postgres=#exit psql ast_db ast_user ast_db=> CREATE TABLE cdr ( calldate timestamp with time zone DEFAULT now() NOT NULL, clid character varying(80) DEFAULT ” NOT NULL, src character varying(80) DEFAULT ” NOT NULL, dst character varying(80) DEFAULT ”… Читати далі »

Подборка SQL запросов

Допустим у вас есть номер телефона рекламного отдела и PR-манагеры пустили какую-то рекламу в сентябре. Задача: найти всех клиентов которые позвонили в сентябре первый раз в жизни, но при этом им, что-то не понравилось и они не звонили после сентября. Инфа нужна, чтоб промыть им мозги… 🙂 Вот, что у меня получилось сходу: … SELECT… Читати далі »

Iskratel vs Asterisk

Состыковка Астериска с ИскраТел проходит довольно занятно. Провайдер телефонной связи может отдавать телефонные звонки по SIP, но сервер сигнализации и голосовые сервера находятся в разных местах. По умолчанию Астер считает, что источник RTP находится на одном хосте с Сервером сигнализации, чтоб сказать ему о поиске голоса на тех хостах которые приходят в INVITE, а также… Читати далі »

Blacklist в Asterisk

Допустим нужно, чтоб определенный список людей попадал сразу в отдел продаж минуя IVR. Реализация такой схемы: [incoming] exten => s,1,LookupBlacklist(j) ;проверка на наличие номера в базе, j – переход на приоритет n+101 exten => s,2,Goto(ivr,s,1) exten => s,102,Dial(SIP/1234,60,tT) exten => s,103,Hangup Добавление номера в базу данных происходит таким образом: asterisk -rx “database put blacklist 0442223344… Читати далі »

Новый синтаксис в Asterisk 1.6

Буду тут оставлять заметки о том как меняется синтаксис между Asterisk 1.2 и Asterisk 1.6 1. Вместо “трубы” теперь в диалплане используется запятая, например 1.2 include => kiev|8:30-18:30|mon-fri|*|* 1.6 include => kiev,8:30-18:30,mon-fri,*,* 2. В ivr сменилось использование переменных DigitTimeout, ResponseTimeout, например: 1.2 exten => s,1,DigitTimeout,5 ; Set Digit Timeout to 5 seconds exten => s,2,ResponseTimeout,10… Читати далі »

Залипание порта в Asterisk

упал несколько раз Астериск 1.6.1.14. Перед смертью в логи было написано пару милионов раз: WARNING[21761] asterisk.c: Accept returned -1: Too many open files а система утверждает, что Астер не врет lsof | grep asterisk | wc -l 1129

Е1 в Asterisk

По Украинской национальной версии в области телефонии поддключение по Е1 производится по сигнализации EuroISDN в настройках chan_dahdi.conf Астериска нужно выставлять такие параметры: switchtype = euroisdn signalling = pri_cpe prilocaldialplan=national Что позволит принимать телефонные номера как national в стандарте EuroISDN но появляется небольшая проблема – требуется еще и от себя устанавливать аналогичное соединение, пролистав example который… Читати далі »

Переменная PRI_CAUSE (ISDN Cause code)

Переменная PRI_CAUSE используется для передачи информации по линиям связи ISDN PRI о причине разрыва связи до ее фактического разрыва. Переменная появилась, начиная с версии 1.0 сервера Asterisk. Для каналов: Zap PRI, chan_capi и chan_misdn BRI есть возможность установки значения переменной PRI_CAUSE до выполнения команды Hangup(). Это приведет к тому, что в отправляемом сообщении PRI DISCONNECT… Читати далі »