Инструменты пользователя

Инструменты сайта


asterisk

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Предыдущая версия
asterisk [2015/07/31 18:44]
asterisk [2018/10/30 05:59] (текущий)
darkfire [Специализированные дистрибутивы Asterisk]
Строка 1: Строка 1:
 +====== Asterisk ======
 +Homepage: [[http://​www.asterisk.org|Asterisk]]
 +
 +Asterisk IP-PBX (IP-АТС) — свободное решение компьютерной телефонии от компании [[http://​www.digium.com/​en/​|Digium]].
 +
 +===== Возможности Asterisk =====
 +
 +Asterisk в комплексе с необходимым оборудованием обладает всеми возможностями классической АТС, поддерживает VoIP протоколы и предоставляет богатые функции управления звонками:​
 +
 +  * голосовую почта,
 +  * конференции,​
 +  * [[IVR]],
 +  * центр обработки вызовов (постановка звонков в очередь и распределение их по агентам используя различные алгоритмы),​
 +  * Подробная запись о вызове (CDR)
 +  * Архив аудио записей разговоров ​
 +
 +**Возможности Asterisk 1.8.0**:
 +  * Поддержка шифрования RTP-потоков;​
 +  * Поддержка IPv6 в канальном драйвере SIP;
 +  * Поддержка расширения "​Connected Party Identification",​ позволяющего обеспечить идентификацию присоединенного абонента,​ т.е. гарантировать звонящему абоненту,​ что на другом конце линии именно тот кого он вызывал (например,​ звонок может быть перенаправлен кому-то другому);​
 +  * Поддержка интеграции с календарями-планировщиками,​ для управления представлен специальный "​Calendaring API". Календарь поддерживает задание событий,​ приоритетов,​ категорий,​ обмен информацией с популярными календарными сервисами. Поддерживаются форматы Exchange/​Outlook,​ CalDAV и iCal. Новый API позволяет организовать запись в календарь информации о звонках (история звонков будет доступна через стандартный интерфейс календаря,​ при этом звонки легко ассоциировать с пересекающимися во времени событиями) или принимать решение о перенаправлении звонков на основании данных в календаре ( например,​ определив занятость абонента при наличии записи о срочном деле).
 +  * Добавлена альтернативная система ведения лога звонков - Channel Event Logging (CEL), позволяющая детально отследить все связанные со звонком события (перенаправления звонков,​ выбор в голосовом меню и т.п.) и просмотреть данные о всех участвовавших при обработке звонка подсистемах;​
 +  * Возможность распределенного обмена данными о состоянии устройств через Jabber/XMPP расширение PubSub (отправка уведомлений по подписке);​
 +  * Поддержка добавочных сервисов завершения вызова (H.450.9, Call Completion Supplementary Services), например,​ позволяющих звонящему пользователю A определить свободность абонента B без попытки совершения нового звонка,​ когда первый звонок остается незавершенным из-за занятости линии абонента B или когда он не отвечает;​
 +  * Поддержка GTalk и Google Voice с возможностью осуществления прямых исходящих звонков;​
 +  * Поддержка AoC (Advice of Charge), дополнительного GSM-сервиса,​ позволяющего оператору передать абоненту данные о стоимости звонка.
 +
 +===== Технические требования Asterisk =====
 +
 +<​code>​
 + ​Назначение ​             Количество ​ Рекомендуемые
 +                         ​каналов ​    ​минимальные параметры
 +                                     400 МГц ×86, 256 Mб
 + ​Любительская система ​   Не более 5
 +                                     ​оперативной памяти
 +                                     1 ГГц ×86, 512 Mб
 + ​SOHO-система ​           От 5 до 10
 + ​(малый офис и дом –                 ​оперативной памяти
 + ​менее трех линий и пяти
 + ​телефонных аппаратов)
 +                                     3 ГГц ×86, 1 Гб оперативной памяти
 + ​Малая бизнес-система ​   До 25
 + ​Средняя или большая ​    ​Более 25    Два ЦП, возможно также
 + ​система ​                            ​несколько серверов
 +                                     в распределенной архитектуре</​code>​
 +Недостаточная производительность операционного окружения Asterisk будет вызывать проблемы с качеством аудиосигнала,​ получаемого пользователем,​ часто в виде эха, помех и т.п.
 +
 +
 +Чем мощнее [[FPU]], тем больше одновременных задач по [[ЦОС]] ([[ЦОС|DSP]]) сможет выполнять Asterisk. Это основной принцип. При выборе процессора исходная тактовая частота – только часть уравнения. То, насколько хорошо он справляется с операциями с плавающей точкой,​ будет основным определяющим фактором,​ поскольку операции по ЦОС в Asterisk будут предъявлять высокие требования именно к этому процессу.
 +
 +
 +Есть свидетельство тому, что объединение двух совершенно независимых однопроцессорных систем может обеспечить намного больше преимуществ,​ чем использование двух процессоров в одном компьютере. В этом случае не только удваивается мощность процессора,​ но также достигается намного лучший уровень избыточного резервирования по цене, равной стоимости компьютера с одним системным блоком и двумя процессорами. Однако нельзя забывать,​ что спроектировать решение Asterisk с двумя серверами намного сложнее,​ чем с одним компьютером.
 +
 +**Блоки питания для компьютеров**
 +Выбранный для системы блок питания будет играть жизненно важную роль в стабильности всей платформы. Asterisk не является особенно энергоемким приложением,​ но все, что связано с мультимедийными системами (будь то телефония,​ профессиональная аудио-,​ видеоаппаратура и т.п.), обычно чрезвычайно чувствительно к качеству электропитания. Этот часто упускаемый из виду компонент может превратить высококачественную систему в груду хлама. Справедливо и то, что с первоклассным блоком питания дешевый ПК может стать настоящим чемпионом.
 +Получаемая мощность должна не только удовлетворять потребности системы в энергии,​ необходимой для выполнения ее задач, но также обеспечивать стабильные и четкие сигнальные линии для всех уровней напряжений,​ ожидаемых системой.
 +
 +
 +===== Общие замечания по установке Asterisk =====
 +
 +На сервере с Asterisk нельзя ставить X ([[KDE]], [[GNOME]] и т.п.) может привести к конфликту обработки аудио, как следствие падает качество голоса (шум, эхо).
 +
 +  * [[AsteriskNow]]
 +  * Управление [[CLI (command-line interface) Asterisk]]
 +  * [[Asterisk codecs]]: [[G.729]], G.723.1
 +  * [[H.323 для Asterisk]]
 +  * [[Программные модули Asterisk]] в том числе и сторонних производителей.
 +  * AsteriskNow + D-Link [[DVG-6004S]] (4 FXO VoIP шлюз)
 +
 +**Конфигурационные файлы Asterisk**: ​
 +После изменения конфигурационных файлов в большинстве случаев достаточно в CLI выполнить команду reload, если изменения затронули только файл sip -достаточно команды sip reload. Однако изменение методов обмена сигналами требует перезагрузки системы (команда restart).
 +
 +
 +| Файлы Asterisk ​  ​^Кратко ​  ​^Примечания ^
 +^ [[extensions.conf]] ​   |Создание диалпланов | После изменений файла выполнить dialplan reload |
 +^ sip.conf| Настройка SIP-протокол ​ | [[http://​www.ietf.org/​rfc/​rfc3261.txt|RFC 3261.txt]] изучить для понимания команды sip debug из консоли Asterisk |
 +^ iax.conf| конфигурация входных и выходных IAX-каналов ​ | -|
 +^ features.conf|parkedcalls - это внутренний контекст Asterisk| -|
 +^ rtp.conf|диапазон RTP-портов (по умолчанию rtpstart=5000 and rtpend=31000)|можно сузить|
 +^ [[logger.conf]]|настройка ведения логов| -|
 +^ [[H.323 для Asterisk|ooh323.conf]]|ooh323c (chan_ooh323) (поставщик Objective Systems)|[[H.323 для Asterisk]]|
 +
 +===== Специализированные дистрибутивы Asterisk =====
 +
 +Для удобства инсталляции и использования существуют несколько готовых дистрибутивов,​ содержащих операционную систему,​ скомпилированый Астериск,​ необходимые модули и стандартную конфигурацию.
 +
 +    * [[AsteriskNow]]
 +    * [[http://​www.elastix.org|Elastix]]
 +    * Trixbox (ранее назывался Asterisk@Home)
 +    * [[https://​www.freepbx.org/​downloads/​freepbx-distro/​|FreePBX Distro]]
 +
 +===== Программные модули Asterisk =====
 +  * [[http://​asterisk.ru/​knowledgebase/​Asterisk+addons|Программные модули Asterisk от сторонних разработчиков]]
 +  * [[http://​www.voip-info.org/​tiki-index.php?​page=Asterisk+addons|Asterisk addons]]
 +
 +<code bash>
 +#найти все модули содержащие pbx
 +*CLI> module show like pbx
 +# выгрузить модуль pbx_ael.so не перезапуская Asterisk
 +*CLI> module unload pbx_ael.so
 +</​code>​
 +<code bash>
 +# nano /​etc/​asterisk/​modules.conf
 +[modules]
 +autoload=yes
 +...
 +;​запретить автоматическую загрузку модуля pbx_ael.so
 +noload => pbx_ael.so
 +noload => chan_jingle.so
 +noload => chan_gtalk.so
 +noload => func_odbc.so
 +noload => cdr_odbc.so
 +noload => cdr_adaptive_odbc.so
 +noload => res_agi.so
 +noload => app_speech_utils.so
 +noload => res_config_ldap.so
 +noload => res_smdi.so
 +noload => res_odbc.so
 +noload => chan_skinny.so
 +noload => res_ais.so
 +...
 +
 +[global]
 +</​code>​
 +
 +===== Модули =====
 +  * **res_ais.so** - SAForum AIS. Модуль написан для целей передачи событий между Asterisk серверами **в кластере**. Модуль использует SAForum AIS CLM и EVT сервисы (управление кластером и события) для выполнения этой задачи. Модуль в данный момент поддерживает распределение Voicemail MWI (Message Waiting Indication) and device state событий между серверами. Протестирована работа с openais, хотя существуют и другие реализации стандарта. ​
 +  * **chan_skinny.so** - [[http://​ru.wikipedia.org/​wiki/​SCCP|SCCP]] Skinny Client Control Protocol (Skinny), корпоративный (проприетарный) протокол,​ разработан Selsius Corporation,​ в настоящее время принадлежит Cisco Systems. По протоколу Skinny взаимодействуют Cisco CallManager и Skinny-клиенты,​ в числе которых IP-телефоны Cisco 7900, сотфон Cisco IP Communicator,​ беспроводной телефон Cisco 7920 и сервер голосовой почты Cisco Unity. **Не путать с SCCP** (Signaling Connection and Control Part) протокол сетевого уровня,​ обеспечивающий контроль передачи (flow control), сегментацию пакетов,​ коррекцию ошибок и соединения в стеке протоколов SS7
 +  * **pbx_ael** - Asterisk Extension Language Compiler
 +  * **app_fastsms** Система доставки SMS сообщений,​ без использования ресурсов интерфейса PRI.
 +    * Домашняя страница:​ http://​www.bayhamsystems.com/​asterisk.html
 +  * **Asterisk Manager API** - Интерфейс управления сервером Asterisk (далее Manager API) позволяет клиентским программам соединяться с серверным приложением Asterisk, отправлять ему команды и/или считывать события,​ происходящие в АТС, используя TCP/IP протокол. [[http://​asterisk.ru/​knowledgebase/​Asterisk+manager+API|Подробнее здесь]].
 +  * **PyAstre** - поддержка языка [[python]] в плане набора.
 +    * Встроенный интерпретатор Python
 +    * Приложения для использования скриптов Python, в плане набора
 +    * Обработчик CDR записей на языке Python
 +    * простой XMLRPC интерфейс,​ заменяющий протокол интерфейса администрирования (manager protocol) Asterisk.
 +    * Домашняя страница:​ http://​www.magicphone.ca
 +  * **py-Asterisk** - Клиент на языке Python, использующий Manager API.
 +    * Предоставляет интерфейс OO для Asterisk из пакета pure-Python.
 +    * Домашняя страница:​ http://​py-asterisk.berlios.de/​py-asterisk.php ​
 +
  
загрузка...