Показаны сообщения с ярлыком asterisk. Показать все сообщения
Показаны сообщения с ярлыком asterisk. Показать все сообщения

вторник, 6 августа 2013 г.

Резервирование сервера Asterisk при помощи heartbeat

В этой статье хочу рассказать о простом способе настройки резервирования asterisk при помощи heartbeat.
Мы имеем два сервера с установленым астериском и имеющим один сетевой интерфейс.
asterisk1 192.168.1.34
asterisk2 192.168.1.94
Певрое что мы делаем на каждом узле устанавливаем heartbeat
apt-get install heartbeat

среда, 17 июля 2013 г.

Настройка Trixbox

Для конфигурации trixbox необходимо попасть в его интерфейс, по адресу, выданному DHCP-сервером (или назначенным вручную). В нашем случае нам нужно открыть адрес http://192.168.12.21. Так как он был выделен DHCP-сервером.




Настройка Elastix

Для конфигурации Elastix необходимо попасть в его интерфейс, по адресу, выданному DHCP-сервером (или назначенным вручную). В нашем случае нам нужно открыть адрес http://192.168.12.207. Так как он был выделен DHCP-сервером.

В окне авторизации вводим логин и пароль, заданный при установке дистрибутива Elastix:


четверг, 29 ноября 2012 г.

Asterisk Realtime sip.conf

Создание базы данных


заходим в базу данных mysql

  mysql -u root -p
 
создаем базу данных с именем 'asteriskrealtime'

 create database if not exists `asteriskrealtime`;
 
изменяем базу данных asteriskrealtime :

 use asteriskrealtime;
 
создадим таблицу sip_buddies в которой будем хранить записи наших пользователей:

среда, 31 октября 2012 г.

Asterisk 1.8 пишем CDR в MySQL базу

Для того чтобы Asterisk мог записывать данные о звонках в базу, должен быть установлен пакет “Asterisk-addons”. Для Asterisk версии ниже 1.8, нужна скачать этот самый пакет с сайта. Для 1.8 все проще, он идет в комплекте с ядром, нужно не забыть его включить. Так же должны быть установлены библиотеки libmysqlclient15-dev, libmysql++-dev, libmysqld-dev если не установлены, ставим


понедельник, 20 августа 2012 г.

Trixbox приём факса на электронную почту в формате PDF

Статья описывает настройку возможности принимать  факсовые сообщения на электронную почту в PDF формате.
Поскольку мне больше нравится приложение ReceiveFAX для приёма факсов, то будем использовать его. Обращаю внимание, что данное приложение требует наличия в системе библиотеки spandsp, но в trixbox-2.8.0.4, на базе которого построен этот пример, эта библиотека есть, как и приложение ReceiveFAX.
P.S. Я буду использовать названия меню от английской версии интерфейса, мне так привычнее.
Для начала внесём изменения в файл /etc/asterisk/extensions.conf в контексте [macro-faxreceive]

[macro-faxreceive]
exten => s,1,Set(FAXFILE=${ASTSPOOLDIR}/fax/${UNIQUEID}.tif)
exten => s,2,Set(EMAILADDR=${FAX_RX_EMAIL})
;exten => s,3,rxfax(${FAXFILE}) ; <== эту строчку удаляем или "комментируем"
exten => s,3,ReceiveFAX(${FAXFILE}) ; <== эту строчку добавляем
exten => s,103,Set(EMAILADDR=${FAX_RX_EMAIL})
exten => s,104,Goto(3)

Затем идём в PBX/PBX Settings/tools/Custom Destination, создаём новое направление следующего содержания:

Custom Destination: ext-fax,s,1
Description: new_fax2mail

Сохраняем и применяем изменения в системе.
Далее идём в PBX/PBX Settings/Inbound Routes и создаём новый маршрут. DID и CID указываем такие, по которым вы сможете «отловить» звонок. Нас интересует пункт Fax Handling. он должен быть следующего содержания:

Fax Extension: System
Fax Email: fax@yourdomain.ru
Fax Detection: NVFax
Pause After Answer: 3 (пауза перед ответом факса)

Последний штрих, ниже отыскиваем секцию настроек Set Destination. Там ставим флаг напротив секции Custom Destinations: и выбираем наш, «самодельный», маршрут new_fax2mail. Применяем настройки и пробуем принять факс и получить его на почтовый адрес fax@yourdomain.ru.

Далее идем в PBX/PBX Settings/trunks в транке от вашего sip провайдера обязательно указываем поддержку факса по протоколу Т38

t38pt_udptl=yes

статья взята с http://zemlyakovmp.ru/?p=68

пятница, 13 июля 2012 г.

Статусы звонков в Asterisk

Имя переменной где лежит значение -${DIALSTATUS}

//Ответ на звонок получен. Удачный дозвон.
ANSWER

//Сигнал занято. При наборе номера возвращено сообщение о занятости абонента.
BUSY

//Нет ответа. Дозвон произошел, но абонент не ответил за определенное время
NOANSWER

//Звонок отменен. Дозвонились, но повесили трубку либо Вы ли с другой стороны
CANCEL

//Неизвестен адресат. Номер не определен.
CONGESTION

//Канал для звонков недоступен. Скорее всего удаленный пир не зарегистрирован.
CHANUNAVAIL

//Приватный режим, типа "Не беспокоить"
DONTCALL

//Приватный режим, все входящие звонки отправляются на некий сервис, который их обслужит
TORTURE

//Ошибка, неверно набранный номер (добавлено в Asterisk 1.4.1, SVN r53135-53136)
INVALIDARGS

среда, 4 июля 2012 г.

sipp — утилита для генерации нагрузки на ASTERISK

sipp — мощная утилита для генерации нагрузки на SIP оборудование. Обычно sipp используется для проверки отказоустойчивости систем IP-телефонии, выявления максимально-допустимой нагрузки или ddos-а конкурентов :) Сценарий сессии в sipp описывается в XML файле. Можно воспользоваться одним из множества сценариев распространяемых в комплекте с sipp или создать свой.
Кроме тестирования сигнализации (SIP) sipp способен тестировать и медиа нагрузку. Для этого существуют два модуля: PCAP play и RTP echo. PCAP play — проигрывает заранее записанный сетевым анализатором (например wireshark) медиа файл. RTP echo — позволяет sipp отсылать обратно все полученные RTP потоки.

Регулярное удаление старых файлов с помощью cron и find

Если вы записываете разговоры проходящие через ваш Asterisk, вы можете столкнуться с переполнением диска. Что бы избежать этой проблемы, надо регулярно удалять старые записи с сервера. Операции над файлами старше определённого возраста — стандартная возможность команды find. Делается это следующим образом:

find /var/spool/asterisk/monitor -mtime +90 -exec rm {} \;
 
find выполнит команду указанную в параметре exec, для каждого файла чье содержимое не менялось последние mtime суток. Т.е. в данном примере файлы записанные более 90 суток назад — будут удалены. Добавляем эту строку в crontab
 
12 2 * * * root find /var/spool/asterisk/monitor -mtime +90 -exec rm {} \;
 
И теперь старые файлы будут удаляться каждую ночь автоматически — cron-ом.

воскресенье, 3 июня 2012 г.

взлом asterisk с помощью sipvicious-0.2.7

sipvicious. Это SIP сканер, который может быть использован для сканирования SIP серверов, таких как Asterisk, FreePBX, Trixbox и тому подобные.
Скачиваем sipvicious распаковываем содержимое архива и делаем исполняемыми файлы

среда, 11 апреля 2012 г.

установка asterisk на DIR-620 с нуля

Опишу свой способ прошивки роутера D-Link DIR-620 прошивкой от DD-WRT установки флешки в качестве диска, MC и ASTERISK 1.4
Скачиваем прошивку uboot описание тут далее ставим прошивку DD-WRT с модулями для файловых систем ext3

Подготовка флешки или жесткого диска к подключению в DD-WRT

Необходимо создать на носителей разделы. Их количество, типы файловых систем и размеры надо выставлять смотря какие задачи вы хотите реализовать.
DD-WRT в большинстве случаев поддерживает следующие файловые системы.

Типы файловых систем в DD-WRT

ext3 — журналируемая файловая система, родная для linux-based систем. В случае с DD-WRT она нужна в обязательном порядке для установки различных пакетов (программ). Максимальный размер файла зависит от ядра linux вашей прошивки и составляет не менее 2Tb, что вряд ли как то ограничит Вас
fat32 — всё более устаревающая файловая система, родная для Windows. В DD-WRT пригодна лишь для хранения пользовательский файлов, на неё нельзя установить пакеты. Максимальный размер файла составляет около 4гб, что по современным меркам не фантан. Еще бывают проблемы с длинными именами файлов. Пригодна лишь для использования как раздел под хранения небольших файлов, например документов.
В принципе не советую использовать fat32 вообще никому, все рано или поздно от неё отказываются всё-равно.
swap — это даже не файловая система, это раздел подкачки. Если кроме ftp планируете еще что-то устанавливать, то настоятельно рекомендую создать такой раздел размером 32-64мб. Больше врядли кому пригодится.
Другие файловые системы (ntfs, ext2, ext4 и т.д.) без хитрых манипуляций не подмонтировать, не будем на этом заострять внимание. По крайней мере пока.

Разметка флешки/диска

Раздел 1 / тип ext3 / размер 16 гб — раздел для установки пакетов (optware)

Настройка роутера

Идем на вкладку СлужбыUSB (СервисUSB),
1) Включаем поддержку USB
2) На старых прошивках выбираем USB 2.0, на новых этот пункт убрали, но поддержка осталась и включается автоматически.
3) Включаем поддержку USB-дисков (USB Storage Support)

Включение поддержки USB-дисков в DD-WRT
Включать автомонтирование не стоит, так как монтируются в этом случае диски без флага noatime, то есть при обращении к файлам и папкам обновляется информация о последнем доступе к ним.
Роутеры итак медленными процессорами обладают, так что для нас это недопустимая роскошь.

Подключение диска

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

Далее выполняем команду
root@DD-WRT:~# dmesg|grep lun
/dev/scsi/host0/bus0/target0/lun0: p1
Строка /dev/scsi/host0/bus0/target0/lun0: p1 говорит нам о том, что наш носитель подключен p1  раздел для установки пакетов (optware).

Монтирование USB-диска

Сначала монтируем первый раздел, который предназначен для optware. Монтировать будем в уже существующую, но пустую папку /opt (в линуксе нет понятия о локальных дисках, все они так или иначе подключены в качестве каталога).
Для этого вводим команду:
root@DD-WRT:~# mount -o noatime /dev/discs/disc0/part1 /opt
Где /dev/discs/disc0 — наша флешка, part1 — первый раздел на ней.
mount -o noatime /dev/scsi/host0/bus0/target0/lun0/part1 /opt
И проверяем смонтировалось или нет:
root@DD-WRT:~# df -h
 
Filesystem Size Used Available Use% Mounted on
/dev/root 2.9M 2.9M 0 100% /
/dev/scsi/host0/bus0/target0/lun0/part1
14.9G 234.5M 13.9G 2% /opt


Если флешка не монтируется в DD-WRT

В новых прошивках поддержка файловых систем зачастую автоматически не подключается.
В этом случае необходимо посмотреть, какие файловые системы поддерживаются:
root@DD-WRT:~# cat /proc/filesystems
nodev rootfs
nodev bdev
nodev proc
nodev sockfs
nodev tmpfs
nodev pipefs
nodev ramfs
nodev devfs
      squashfs
nodev usbdevfs
nodev usbfs
 
и какие модули подключены:
root@DD-WRT:~# lsmod
Module                 Size   Used by
ip_nat_pptp            2560   0 (unused)
ip_conntrack_pptp      3036   1
ip_nat_proto_gre       1664   0 (unused)
ip_conntrack_proto_gre 2584   0 [ip_nat_pptp ip_conntrack_pptp]
usb-storage            40344  0 (unused)
sd_mod                 13092  0 (unused)
scsi_mod               101584 2 [usb-storage sd_mod]
usb-ohci               20352  0 (unused)
ehci-hcd               22060  0 (unused)
usbcore                84576  1 [usb-storage usb-ohci ehci-hcd]
switch-robo            6108   0 (unused)
switch-core            5888   0 [switch-robo]
 
Ага. Нашей ext3 не видно. Как впрочем и модуля jbd, отвечающего за поддержку журналирования в файловых системах.
Пробуем подгрузить вручную этим модули, причем сначала jbd.o, без него ext3.o не загрузится:
Для прошивки с ядром 2.6 и выше:
root@DD-WRT:~# insmod /lib/modules/$(uname -r)/kernel/fs/mbcache.ko 
root@DD-WRT:~# insmod /lib/modules/$(uname -r)/kernel/fs/jbd/jbd.ko
root@DD-WRT:~# insmod /lib/modules/$(uname -r)/kernel/fs/ext3/ext3.ko
 
И проверяем знает ли наше ядро теперь ext3:
root@DD-WRT:~# cat /proc/filesystems
nodev rootfs
nodev bdev
nodev proc
nodev sockfs
nodev tmpfs
nodev pipefs
nodev ramfs
nodev devfs
      squashfs
nodev usbdevfs
nodev usbfs
      ext3

Автоматизируем процесс подключения дисков в DD-WRT

Для автоматизации команд надо занести в скрипт включения.
Для этого в веб-интерфейсе перейдите в раздел Administration — Commands
И в верхнее окно введите команды в нужном порядке, только если у вас уже есть стартовый скрипт, то необходимо их объединить.
В моем случае он выглядит так:

switch reg w 90 10007f7f  (включает wan порт при загрузке роутера)

insmod /lib/modules/$(uname -r)/kernel/fs/mbcache.ko (загружает модуль mbcache.ko)
insmod /lib/modules/$(uname -r)/kernel/fs/jbd/jbd.ko (загружает модуль bd.ko)
insmod /lib/modules/$(uname -r)/kernel/fs/ext3/ext3.ko (загружает модуль поддержки ext3)

mount -o noatime /dev/scsi/host0/bus0/target0/lun0/part1 /opt (монтирует флешку)
 
 
далее скачиваем установочный скрипт

wget http://www.3iii.dk/linux/optware/optware-install-ddwrt.sh -O - | tr -d "\r" > /tmp/optware-install.sh
 
  
 
 и запускаем его

sh /tmp/optware-install.sh  

 
у меня скрипт выдавал ошибку на стадии проверки, открываем скрипт

vi /tmp/optware-install.sh 

и удаляем блок, отвечающий за проверку конфигурации:

_check_config() 
{ 
echo "Checking system config ..." 
GATEWAY=$(netstat -rn | 
sed -n 's/^0.0.0.0[ \t]\{1,\}\([0-9.]\{8,\}\).*/\1/p' ) 
if [ -n "${GATEWAY}" ]; then 
echo "Using ${GATEWAY} as default gateway." 
else 
echo "Error: No default gateway set!" 
exit 2 
fi 
if [ -s /etc/resolv.conf ]; then 
echo "Using the following nameserver(s):" 
if grep nameserver /etc/resolv.conf ; then 
GATEWAY_SUBNET=$(echo "${GATEWAY}" | 
sed 's/\.[0-9]\{1,3\}\.[0-9]\{1,3\}$//') 
if [ "${GATEWAY_SUBNET}" = "192.168" ]; then 
if grep -q ${GATEWAY} /etc/resolv.conf ; then 
echo "Gateway ${GATEWAY} is also nameserver." 
else 
echo "Warning: local nameserver is different than gateway!" 
echo "Check config or enter:" 
if test -L /etc/resolv.conf ; then 
echo " sed -i s/192.168.*/${GATEWAY}/ /tmp/resolv.conf" 
else 
echo " sed -i s/192.168.*/${GATEWAY}/ /etc/resolv.conf" 
fi 
echo "and try again." 
fi 
fi 
else 
echo "Error: No nameserver specified in /etc/resolv.conf" 
exit 5 
fi 
else 
echo "Error: Empty or nonexistent /etc/resolv.conf" 
exit 3 
fi 
if mount | grep -q /opt ; then 
[ -d /opt/etc ] && echo "Warning: /opt partition not empty!" 
else 
echo "Error: /opt partition not mounted." 
echo "Enter" 
echo " mkdir /jffs/opt" 
echo " mount -o bind /jffs/opt /opt" 
echo "to correct this." 
exit 4 
fi 
} 

далее ставим мс

 
ipkg-opt install mc 
 
и asterisk


ipkg-opt install asterisk14

информация взята с:
http://www.dd-wrt.com/wiki/index.php/%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0_Samba_%D0%BD%D0%B0_%D0%BC%D0%B0%D1%80%D1%88%D1%80%D1%83%D1%82%D0%B8%D0%B7%D0%B0%D1%82%D0%BE%D1%80_%D1%81_DD-WRT

http://ne-ne-ne.ru/dd-wrt/dd-wrt-mount-usb-flash-usb-hdd.html

http://ajc.su/telefoniya/asterisk-na-routere-ili-byudzhetnyj-voip-gsm-shlyuz/






вторник, 20 марта 2012 г.

VoIP-GSM шлюз для Asterisk на USB модеме HUAWEI E1550

Памятка по настройке VOIP-шлюза на IP ATC Asterisk с модемом Huawei E1550 от МТС.
Есть различные типы модемов, с которыми работает Asterisk, посмотреть их настройку а также совместимость можете тут: http://nagg.ru/2011/08/nastroyka-3g-modemov/
Для начала, хочу отметить, что есть важные замечания к железу и ПО, на котором предполагается размещать подобную систему:
1. Рекомендованное ядро Linux 2.6.33+
(оно может быть и выше, но никак не ниже. достоверно известно, что версия ядра в CentOS 5.6 Final – 2.6.18 не подходит для этой роли, голос слышен с сильными искажениями).
2. Версия Asterisk 1.6.+
3. Порты USB 2.0
(некоторые модемы работают и на USB1.1, но E1550 во время звонка отваливается, по нехватке питания)
4. Актуальная прошивка 3G модема: для МТС 11.608.12.00.143 и 11.608.14.15.311 гарантированно рабочие

понедельник, 19 марта 2012 г.

Защита Asterisk или элементарные правила безопасности VoIP

Сейчас все пишут про большое количество атак на Asterisk и прочих PBX. Хочу рассказать, что недавно произошло с одним из наших клиентов. У товарищей хакеров из КНДР не получилось пробраться на Asterisk, стоящий за простеньким роутером ASUS, почему напишу далее, но зато у них отлично получилось ломануть, а вернее подобрать пароли к IP телефонам Yealink SIP T-22. Сделать это было не сложно, так как клиент не удосужился поменять стандартные admin/admin. И от сюда...

Правило первое: Всегда менять логины и пароли на вех сетевых устройствах. Особенно на IP телефонах, VoIP шлюзах и т.д.
Пароли абонентов, админов, менеджеров Asterisk и т.д. должны состоять, не менее чем из 12 символов (буквы, цифры, перемена регистра), используйте сложные логины и паролиНе соблюдение этого простого правила стоило 15000 рублей.

среда, 29 февраля 2012 г.

солянка о VOIP

Какие типы КОДЕКОВ существуют?

Кодек преобразовывает аналоговый сигнал в цифровой для передачи данных по сети. В настоящее время используются следующие типы кодеков
  • GSM - 13 кбит/с (полная скорость), длительность кадра 20 мс;
  • iLBC – 15 кбит/с, длительность кадра 20 мс: 3,3 кбит/с, длительность кадра 30 мс;
  • ITU G.711 - 64 кбит/с, основан на выборке. Также известен как alaw/ulaw;
  • ITU G.722 - 48/56/64 кбит/с;
  • ITU G.723.1 - 5.3/6.3 кбит/с, длительность кадра 30 мс;
  • ITU G.726 - 16/24/32 кбит/с;
  • ITU G.728 - 16 кбит/с;
  • ITU G.729 - 8 кбит/с, длительность кадра 10 мс;
  • Скорость – 2,15 – 44,2 кбит/с;
  • LPC10 – 2,5 кбит/с;
  • DoD CELP – 4,8 кбит/с. 

воскресенье, 26 февраля 2012 г.

Настройка cisco ip phone 7942 и asterisk

И так для настройки на потребуется
1. TFTP сервер  скачать
2. прошивка для работы по протоколу sip скачать
3. Asterisk версия не имеет значения
4. Cisco IP Phone 7942G

Первое что нам понадобиться сделать — это установить tftp сервер процесс установки описывать не буду.
Итак, нам нужно скачать прошивку извлечь все файлы находящиеся в архиве cmterm-7942_7962-sip.8-5-4.zip в папку с где установлен TFTP сервер.
Запускаем TFTP сервер, подключаем пачкорд в сетевую карты компьютера и в разъем 10/100 SW телефона, в настройках сетевой карты выставляем ip адрес и маску подсети (основной шлюз указывать не надо) на телефонном аппарате нажимаем клавишу # и включаем питание, телефон начнет мигать светодиодами далее набираем 1234567890*0# телефон перегрузится в режиме прошивки в логе TFTP сервера в закладке Log viewer, а так же на телефонном аппарате мы должны увидеть процесс загрузки файлов если все прошло успешно телефон загрузится в обычном режиме. Заходим в меню телефона выбираем в пункт 5 model information далее находим пункт 3 Load File у нас должен быть SIP42.8-5-4S

Теперь перейдем непосредственно к файлу конфигурации. Файл должен называться SEP<MAC-адрес Cisco-телефона>.cnf.xml

пример приведен ниже

$asterisk
$login
$password
подставьте свои значения
Внимание, не используйте copy-paste , т.к. это не экранировка в xml формате!!!

вторник, 21 февраля 2012 г.

Asterisk настройка FAX от Digium по T.38

FAX for Asterisk (Digium)

Fax Digium's For Asterisk является коммерческим продуктом и решением для приёма и отправки факса. Факс для Asterisk обеспечивает низкую скорость (14400bps) PSTN факсов через DAHDI-совместимых телефонных плат, а также VoIP для факсов T.38-совместимых конечных точек SIP и Провайдеров услуг. Лицензия устанавливается на каждый канал в отдельности, Факс Digium's For Asterisk предоставляет полное, экономически эффективное, коммерческое решения для факса в Asterisk-е.
Факс для Asterisk предоставляет два компонента: resfax и resfaxdigium. Resfax является модулем для Asterisk и внедряет в функционал и диалплан Asteriska новые возможности для приема и передачи факсов . Resfaxdigium предоставляет основные функции обработки факсов в виде нескольких поддерживаемых модемов факс - V.21, V.27ter, V.29 и V.17 - которые могут достичь скорости до 14400bps.
Факс для Asterisk предоставляет функции для отправки и получения факсов в / из TDM и IP каналов - для этого может быть использованы TDM каналы (Платы Digium) аудио каналы (G.711 codec) а также T.38 инкапсуляцию. Передача и получение факсов в Asterisk начинаются и заканчиваются в виде файлов TIFF изображений. TIFF файлы могут быть легко преобразованы в другие форматы (PDF,JPEG,...) используя стандартные команды Linux и утилиты.
Клиенты могут приобрести лицензионные ключи для Fax for Asterisk от Digium в офф. представ pbxware.ru . Каждый канал Факс для Asterisk даёт возможность только одной сессии (прием или отправка).
Также Digium предлагает лицензию на 1 канал бесплатно , для всех пользователей Asterisk. Лицензию можно приобрети на сайте www.digium.com (только зарегистрированным пользователем ) .
Установка и настройка Fax for Asterisk
в настоящее время Факс для Asterisk поддерживается на:
Open Source Asterisk версий 1.4> = 1.4.22 ,1.6.0> = 1.6.0.14 , 1.6.1> = 1.6.1.5
После того как вы приобрели лицензионный ключ для Fax for Asterisk, существует ряд задач которых надо выполнять чтобы установить Fax for Asterisk.

понедельник, 20 февраля 2012 г.

asterisknow установка g729 кодека

Сам кодек скачиваем от сюда, подбираем по версии Asterisk и по Вашему железу (у меня asterisk-1,4 pentium 3)
wget http://asterisk.hosting.lv/bin/codec_g729-ast14-gcc4-glibc-pentium3.so
переименовываем в codec_g729.so

mv  codec_g729-ast14-gcc4-glibc-pentium3.so codec_g729.so
и копируем в папку /usr/lib/asterisk/modules/
устанавливаем права на файл
# chmod 755 codec_g729.so
перезагружаем asterisk и смотрим загрузился ли кодек
#asterisk -r
CLI>restart now
#asterisk -r
CLI>show translation
          Translation times between formats (in microseconds) for one second of data
          Source Format (Rows) Destination Format (Columns)

           g723   gsm  ulaw  alaw g726aal2 adpcm  slin lpc10  g729 speex  ilbc  g726  g722 siren7 siren14 slin16
     g723     -     -     -     -        -     -     -     -     -     -     -     -     -      -       -      -
      gsm     -     -     2     2     4001     2     1     2 12001 20003     -     2  4002      -       -   4003
     ulaw     -  4001     -     1     4001     2     1     2 12001 20003     -     2  4002      -       -   4003
     alaw     -  4001     1     -     4001     2     1     2 12001 20003     -     2  4002      -       -   4003
 g726aal2     -  4001     2     2        -     2     1     2 12001 20003     -     2  4002      -       -   4003
    adpcm     -  4001     2     2     4001     -     1     2 12001 20003     -     2  4002      -       -   4003
     slin     -  4000     1     1     4000     1     -     1 12000 20002     -     1  4001      -       -   4002
    lpc10     -  8000  4001  4001     8000  4001  4000     - 16000 24002     -  4001  8001      -       -   8002
     g729     -  4001     2     2     4001     2     1     2     - 20003     -     2  4002      -       -   4003
    speex     -  8000  4001  4001     8000  4001  4000  4001 16000     -     -  4001  8001      -       -   8002
     ilbc     -     -     -     -        -     -     -     -     -     -     -     -     -      -       -      -
     g726     -  4001     2     2     4001     2     1     2 12001 20003     -     -  4002      -       -   4003
     g722     -  8000  4001  4001     8000  4001  4000  4001 16000 24002     -  4001     -      -       -      1
   siren7     -     -     -     -        -     -     -     -     -     -     -     -     -      -       -      -
  siren14     -     -     -     -        -     -     -     -     -     -     -     -     -      -       -      -
   slin16     -  8001  4002  4002     8001  4002  4001  4002 16001 24003     -  4002     1      -       -      -

Видим, что кодек успешно подгрузился. Что бы при каждой перезагрузке asterisk’a модуль подгружался автоматом, добавляем такую строчку в файл modules.conf (добавляем в том случае, если в этом же файле стоит autoload=no, иначе – можно не добавлять)
load => codec_g729.so

 добавляем новый peer в sip.conf


[111]
type=friend
host=dynamic
port=5060

dtmfmode=auto
context=default
secret=pAsswOrD
disallow=all
allow=g729



[222]
type=friend
host=dynamic
port=5060

dtmfmode=auto
context=default
secret=pAsswOrD
disallow=all
allow=g729



в extensions.conf
[default]
exten => _X.,1Dial(SIP/${EXTEN})

устанавливаем софтфон с поддержкой кодека g729 или настраиваем голосовой шлюз и выставляем кодек g729
для тестирования я скачал триальную версию на 15 дней softphone PortGo

вторник, 31 января 2012 г.

создание call файлов в Asterisk

Многие сталкивались со звонками от крупных компаний, когда происходит звонок и зачитывается автоматическое сообщение, рекламное или уведомление о просроченой оплате. Такую систему можно сделать на астериске с помощью внешнего скрипта.
Исходящий звонок Asterisk может выполнять при размещении специального файла в директории /var/spool/asterisk/outgoing.

Файл должен выглядеть так:

Channel: SIP/prov1/8067xxxxxxx
MaxRetries: 2
RetryTime: 60
WaitTime: 30
Context: auto-dialout
Extension: 800 
Priority: 1

В этом файле. первая строка – канал через который будет осуществляться звонок и номер телефона на который будет исходить звонок. MaxRetries – здесь описывается число повторных звонков, пока система не дозвонится абоненту. RetryTime – время через которое осуществится повторный звонок. WaitTime – время ожидания ответа вызываемого абонента, то есть попросту через сколько секунд система положит трубку не дождавшись того, что вызываемая сторона снимет трубку. Context – контекст в котором определена последовательность действий при дозвоне. Extension – в указанном контексте, определен в extensions.conf. И Priority – строка обработки описанного экстеншена в указанном контексте.

Контекст должен быть определен так(в примере мы просто проиграем файл tariff.wav):
[auto-dialout]
exten => 800,1,Playback(/home/menu/tariff)
 
Для автоматических исходящих звонков голосовое меню можно создавать точно такое же как и для обычного IVR, отличий нет. Единственное – не абонент звонит нам, а мы звоним абоненту и предлагаем ему вступить в диалог с нашей системой.

у меня ен получилось реализовать именно это схему звонок приходит в контекст default. поэтому в контексте default прописал
exten => s,1,Playback(/home/menu/tariff)

Настройка AddPac AP1100 для работы с Asterisk

Китайская компания AddPac начала свою историю клонируя оборудование фирмы Cisco – так называемые «АТАшки». С тех пор утекло много воды и теперь, большая часть линейки устройств – собственные разработки AddPac. От старых времён остался синтаксис конфигурационного файла, который очень похож на синтаксис Cisco. Благодаря этому, большинству опытных пользователей IP-телефонии не составит труда настроить телефонный шлюз AddPac AP1100 для работы с Asterisk. Тем же, кто не совсем понимает о чём речь – посвящается эта статья.
Подключиться к устройству можно двумя способами: telnet или последовательный порт (com порт / serial / rs-232 и т.д.). Для того что бы подключиться к устройству по telnet необходимо знать IP адрес устройства, логин и пароль. Если вы не знаете IP-адрес, или он не установлен, вам придётся подключиться к устройству с помощью последовательного порта. Параметры COM порта для подключения к AddPac: Speed – 9600 Baud, Data bits – 8, Stop bits – 1, Parity – None. Логин и пароль по умолчанию – root и router соответственно. Устройство AddPac подразумевает два режима – режим управления и режим настройки. При подключении у устрйоству AddPac, вы попадаете в режим управления. Для перехода в режим настройки необходимо ввести команду:

вторник, 24 января 2012 г.

настройка asterisk и мультифон от мегафона

Сразу оговорюсь услуга только для абонентов Мегафон-Москва

1. сим карта мегафон Москва
2. Asterisk
Идем на сайт : https://sm.megafon.ru/sm/register советую при регистрации создавать аккаунт вида <ваш номер телефона>@multifon.ru пароль одновременно должен содержать 3 типа символов: маленькие латинские, большие латинские, цифры MyPass123. После регистрации активируем услугу на вашем телефоне для этого набираем *137#  посыл вызова.  Из списка выбираем нужный режим работы
1. на телефон (Только на мобильный)
2. в Мультифон (Только в МультиФон)
3. Мультифон+телефон  (Ваш asterisk и мобильный телефон зазвонят одновременно)
4. пароль
5. отключить