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

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

Установка и настройка freeswitch в Centos



Цель статьи - рассказать о простом способе установки и настройки  freeswitch в Centos.
Статья не является полным руководством и не претендует на истину в последней инстанции, я бы сказал эта памятка самому себе.

Итак, начнем.
Весь процесс установки очень прост, нужно только скачать скрипт gitit.sh
Переходим в папку

вторник, 15 января 2013 г.

microsip softphone с поддержеой кодека g729

Долго искал softphone с поддержкой кодека G729 и такой нашелся MicroSIP - open source проект
с поддержкой кодеков:
speex@8,16,32kHz
iLBC@8kHz
GSM@8kHz
G.711@8kHz (PCMU and PCMA)
G.722@16kHz
G.729@8kHz
SILK@8,12,16,24kHz,
Linear PCM@8,16,44kHz
Видео кодеки
video h264 и h263+
 так же поддерживается шифрование
TLS / SRTP
Сайт проекта

среда, 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 потоки.

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

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

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

вторник, 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, вы попадаете в режим управления. Для перехода в режим настройки необходимо ввести команду:

Соединение офисных мини-АТС при помощи AddPac

удобнее использовать два голосовых шлюза с портами FXO. Схема примерно следующая:
 

Addpac, детекция сигнала отбоя

Довольно распространенная проблема - АТС генерирует короткие гудки, дабы человек понял, что разговор окончен, но вот техника это не воспринимает. У шлюзов addpac есть специальная настройка для детекции сигнала отбоя - Clear-down-tone cadence.
Итак, заходим на шлюз:
AP1005# conf
  Enter configuration commands, one per line. End with CNTL/Z
AP1005(config)# deb
AP1005(config)# end
AP1005# debug rta voice

Далее звоним через шлюз и кладем трубку со стороны АТС. В момент коротких гудков снимаем нечто вроде:

AP1005# 60 60 60 60 60 60 60 60 60 60 60 60 60 23 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 17 50 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 22 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 17 50 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 22 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 1616 16 16 16 17 50 60 60 60 60 60 60 60 60 60 60 60 60

Считаем:
сигналов ~=-16 * 35. Умножаем на 35, если кодек g711 или g729 - на 10. У меня последний вариант, так что получаем 350. Это у нас active power, а число зовется Active Time Duration.
сигналов ~=-60 * 34. Здесь тоже самое - получаем 340. Это idle power, число - Idle Time Duration.
Получаем:

voice class clear-down-cadence 1 -16 350 340 3 11

Здесь
1 - число необходимого повторения данно последовательности, у меня (1);
2 - уровень тона, те active power (-16);
3 - ActiveTimeDuration (350);
4 - Idle Time Duration (340);
5 - Active Power Variance - отклонения уровня, у нас не отклоняется, но все равно ставим 3 - на всякий;
6 - Idle Power Variance - отклонения уровня паузы, ставим 11.
Применяем:

AP1005# conf
Enter configuration commands, one per line. End with CNTL/Z
AP1005(config)# voice class clear-down-cadence 1 -16 350 340 3 11

Это собственно все описано в мануале от Addpac, ссылку не припомню, но на английском. Работает метод замечательно.

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

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

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

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

среда, 5 октября 2011 г.

сброс настроек и пароля на addpac

 что бы сбросить все настройки и пароль делаем следующие

1. Включаем AddPac и ждем появления примерно такого текста:



2. После его появления надо, не тормозя, набрать "Ctrl+x" и сразу "Ctrl+c" (Естественно без кавычек :о). Если все сделано верно то через несколько секунд задумчивости появится приглашение ввести логин и пароль в виде "BOOT_login:". Если вместо этого устройство "выплюнуло" несколько строк текста, заканчивающихся стандартным приглашением ввести логин - значит Вы промедлили с вводом "Ctrl+x" и "Ctrl+c" - выключите AddPac и начните все заново.
3. Вводите "guest" в качестве логина и пароля на что устройство должно ответить строкой "BOOT>".
4. По очереди вводите строки:
conf
password пароль пароль
5. На вопрос системы отвечаете "y"
___________________________________________________________________________________

если мы знаем пароль но хотим его изменить делаем следующие
1. заходим на addpac выбираем режим конкурирования командой conf t
2. пишем user change root router secret (в данном случае login root пароль router меняется на secret )
3. пишем write

вторник, 4 октября 2011 г.

Конветирование wav в gsm и gsm в wav

Часто при работе с asterisk возникает необходимость конвертировать файлы форматов wav и gsm. Сделать это без потери качества можно так:
gsm to wav:
$ sox infile.gsm -r 44100 -a outfile.wav
wav to gsm:
$ sox foo-in.wav -r 8000 -c 1 -s -w foo-out.wav resample -ql

взято с http://my-debian.blogspot.com