Архивы рубрики ‘Asterisk’

Logstash: Useful grok patterns for asterisk

Где живут grok-patterns (Ubuntu):

Версия в пути может изменяться, но основная идея ясна

 

Суть: по умолчанию в filters для asterisk.json для описания имени транка и канала используется grok BASE16FLOAT, который, если у вас, как у меня, в имени транка есть BASE64FLOAT-последовательность (например как у меня -сс-) — откусит имя транка по ней.

Читать далее »

Регистрация мультииндексного транка на 1 register

Как подключиться по протоколу  SIP к поставщику услуг при одиночной регистрации, но с возможностью принятия звонков с более 1 линии. Или «SIP-транк с регистрацией»

От оператора получаем: LoginId, Secret, Registrar.

LoginID – 7-и значный номер в виде 1234567, он и юзернейм для регистрации, и идентификатор линии.

Также в данную регистрацию оператор предоставляет пул номеров: 1234568-1234599

Если произвести регистрацию как для обычной линии:

то все входящие звонки будут поступать исключительно с индексом 1234567 и обработать в dial plan остальной пул номеров будет не возможно т.к. вызовы будут отбиваться с сообщением fake auth rejected.

На самом деле, это абсолютно верное поведение астериска, так и должно быть (хотя в новых версиях insecure=port,invite позволяет начхать на то, какой там exten прописан в register string)

Во избежание головной боли, приводим строку регистрации в следующий вид:

Все входящие звонки будут поступать в контекст from-trunk на обработчик s.

Достанем из SIP_HEADER идентификатор  линии:

PROFIT!

Автоинформатор с произвольным текстом

Пришла с час назад идея облегчить жизнь нашему персоналу — по ночам уведомлять их о падении оборудования телефонным звонком. При чем так, чтобы не просто «у вас что-то сломалось», а с указанием точного адреса.

Модуль мониторинга — где-то у админов, по событию они могут сгенерировать строку с адресом и номером телефона ответственного, так что задача сводится к тому, чтобы:

  • Получить параметры
  • Сформировать коллбек
  • После поднятия трубки — продиктовать полученный адрес.

Нам потребуются:

  • Сервер с астериском
  • ffmpeg. Можно в дефолтной конфигурации
  • apache (у меня с mod_rewrite чтобы ограничить доступ к функционалу только конкретным инстансам)
  • 15 минут времени

Итак, приступим.

Читать далее »

Обзор ATA Dragino DT-01

В качестве альтернативы существующим в Украине АТАшкам заказал на aliexpress вот такое чудо:

Dragino DT01 (линк кликабелен)

Из описания:

Много текста под катом »

— Hardware System:
· Processor: 400MHz, 24K MIPS
· 64MB RAM
· 16MB Flash
· DC Input: 9 ~ 12v or 5V
— Interface:
· 1 x FXS port
· 2 x RJ45 ports
· USB 2.0 Host port to connect 3G dongle or USB flash
— WiFi Spec:
· IEEE 802.11b/g/n
· Frenquency Band: 2.4 ~ 2.462GHz
· Chip Antenna or External antenna

Features:
o Open Source OpenWrt system
o Asterisk 11.16.0
o Support SIP / IAX2 server/client.
o Support multiply SIP / IAX2 entries
o Easy configure SIP/IAX2/dial-plan in Web UI
o Managed by Web GUI or SSH
o Firmware upgrade via Web
o Support WiFi AP, Client or Ad-Hoc(Mesh) mode
o Optional external antenna for long distance connection
o Support USB dongle for 3G/4G dial up
o Support USB flash for extend storage

По сути — это ардуина с Wifi, ethernet и платой FXS.
Дальше будет немного сухого текста (честно говоря было лениво переписывать отчет, который я по ней предоставлял по работе), а затем личные впечатления.
Читать далее »

Получение количества входящих звонков с 1 транка из asterisk в консоль Linux

Сегодня прилетела задача — писать в лог раз в 5 минут количество активных входящих звонков с каждого из транков.

И вот возник вопрос: как передать в bash значение переменной asterisk без использования AMI.

Получилось следующее:

В контексте incoming транка делаем следующее:

и из консоли добываем так:

PROFIT

Универсальный способ мониторинга Asterisk с помощью Zabbix / Хабрахабр

Источник: Универсальный способ мониторинга Asterisk с помощью Zabbix / Хабрахабр

Немного русских инструкций по настройке GSM-шлюзов Dinstar

Настройка шлюзов DWG-серии.Asterisk

Конфигурирование DWG2000B/C/D в качестве терминального устройства Elastix

GSM/VoIP/CDMA шлюз DWG2000. Инструкция по настройке

Реализация работы с факсами в asterisk / Хабрахабр

Реализация работы с факсами в asterisk / Хабрахабр.

Кнопка «Позвонить с сайта» с использованием сервиса Sipiko CallMe

Сегодня мы рассмотрим метод создания кнопки «позвонить с сайта» с использованием стороннего сервиса sipiko.net.  Выбор данного сервиса … да в общем-то ничем не обоснован, просто когда я был совсем зелен — это был первый сервис,  который я нашел в интернете, который позволял быстро создать кнопку «позвонить с сайта», имея минимум знаний.

Настроимся. »

Callme — это сервис, позволяющий добавить на сайт кнопку звонка. Для инициации звонка используется предварительно настроенное flash — приложение, с помощь которого можно как перенаправить звонок на собственный сервер asterisk (настроив транк как пир), так и принимать вызовы с помощью sip-клиента (или того же астериска, настроив его в качестве клиента).

Для создания кнопки нам потребуются:

  • Электронная почта
  • Браузер

В принципе, для минимальной настройки этого хватит.

Итак, заходим на сайт услуги, жмем кнопку «Регистрация» … и попадаем в какой-то треш-интерфейс:

1Заполняем все необходимые поля, жмем ОК, на почту прилетит письмо — подтверждение.

Переходим по ссылке…

2

Вводим почту и пароль…

3

Нажимаем кнопку «Новая кнопка»

4

Вводим данные

11

В принципе все, уже можно подключать sip-клиент и звонить. На вкладке «Ваш SIP номер» можно посмотреть настройки для работы XLite.

Если мы хотим по феншую подключить к астериску — процедура не намного сложнее.

Заходим на вкладку «Номера», выбираем тип протокола SIP и прописываем sip uri

6

Можно также выбрать время, в которое звонки будут приходить на указанный номер.

Дальше на вкладке «Код» выбираем кнопку которая понравилась и получаем ее код. Его теперь можно вставить на сайт.

Теперь перейдем к шаманству с астериском:

в Sip.conf добавим секцию пира:

extensions.conf:

Я сделал отдельный контекст и набор экстеншенов для подключения различных кнопочек. Таким образом можно насоздавать несколько различных кнопок (по 1 на каждый email правда, если не хотим платно использовать) и далее в контексте routes направлять звонки с них куда нам будет необходимо.

В принципе, на этом настройка завершена. Вставляем полученный ранее код на страницу — и получаем кнопку «позвонить», по нажатии на которую откроется флешевое окно:

10

Да, если указать время работы и нажать кнопку в нерабочее время — увидим следующее сообщение:

9

Ну и в качестве проверки — вот вам кнопка с обезьянками (стандартный звук tt-monkeys из состава asterisk):


Взаимодействие клиентов SIP. Часть 2 / Хабрахабр

Взаимодействие клиентов SIP. Часть 2 / Хабрахабр.

Авторизация