asterisk._телефония_будущего_для_предприятия

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
asterisk._телефония_будущего_для_предприятия [2023/08/16 09:54]
val created
asterisk._телефония_будущего_для_предприятия [2023/08/18 18:25] (current)
val [Лабораторные работы: Внедрение сервисов IP телефонии]
Line 1: Line 1:
 ====== Asterisk. Телефония будущего для предприятия ====== ====== Asterisk. Телефония будущего для предприятия ======
  
 +===== Программа курса =====
 +
 +  * [[http://​www.specialist.ru/​course/​asterisk|Asterisk. Уровень 1. Телефония будущего для предприятия]]
 +
 +===== Книга по курсу =====
 +
 +  * [[http://​asterisk.ru/​store/​files/​Asterisk_RU_OReilly_DRAFT.pdf|Астериск - будущее телефонии]]
 +  * [[http://​asterisk.ru/​store/​files/​Asterisk_-_Definitive_guide_4th.pdf|Asterisk™:​ Окончательное руководство]]
 +===== Модуль 0: Подготовка стенда в классе =====
 +
 +  * Узнать свой номер стенда
 +  * Удалить виртуалки
 +  * Удалить профили putty
 +  * Отключить не используемые адаптеры
 +  * Записать логин пароль и IP (сообщить преподавателю) рабочей станции
 +  * Проверить наличие дистрибутивов и образов
 +
 +===== Модуль 1: Теоретические основы телефонии =====
 +
 +==== Теория ====
 +
 +=== Теоретические основы классической телефонии (АТС, сигнализация,​ DTMF) ===
 +
 +  * [[https://​ru.wikipedia.org/​wiki/​Телефон|История развития]]
 +  * [[https://​en.wikipedia.org/​wiki/​History_of_the_telephone|History of the telephone]]
 +  * [[http://​ru.wikipedia.org/​wiki/​Психоакустика|Физические основы аналоговой передачи голоса]]
 +  * [[http://​ru.wikipedia.org/​wiki/​Контроль_посылки_вызова|Сигнализация в аналоговой телефонии]]
 +  * [[http://​ru.wikipedia.org/​wiki/​Телефонный_план_нумерации|Телефонный план нумерации]]
 +  * [[http://​ru.wikipedia.org/​wiki/​E.164|Рекомендация E.164]]
 +
 +=== История развития технологий цифровой передачи голоса (ISDN, ATM) ===
 +
 +  * [[http://​ru.wikipedia.org/​wiki/​PCM|Физические основы цифровой передачи голоса]]
 +  * [[http://​ru.wikipedia.org/​wiki/​DS0|Теорема Котельникова,​ Найквиста,​ Шеннона]]
 +  * [[http://​ru.wikipedia.org/​wiki/​ISDN|Цифровые пользовательские каналы ISDN]]
 +  * [[http://​ru.wikipedia.org/​wiki/​ATM|Универсальная сеть передачи данных ATM]]
 +
 +=== Теоретические основы передачи голосового сигнала в компьютерных сетях (кодеки G.*, протоколы сигнализации SIP, IAX) ===
 +
 +  * [[http://​ru.wikipedia.org/​wiki/​VoIP|Физические основы передачи голосового трафика в IP сетях]]
 +  * [[http://​ru.wikipedia.org/​wiki/​Протокол_установления_сеанса|Протоколы сигнализации VoIP SIP, H.323, IAX]]
 +  * Взаимодействие клиентов SIP. [[https://​habrahabr.ru/​post/​188352/​| Часть 1]], [[https://​habrahabr.ru/​post/​189332/​|Часть 2]]
 +  * [[http://​ru.wikipedia.org/​wiki/​G.711|Кодеки G.711, G.726, G.729, GSM-FR]]
 +
 +=== Направления развития телефонии будущего ===
 +
 +  * [[http://​ru.wikipedia.org/​wiki/​Унифицированные_коммуникации|Унифицированные коммуникации]]
 +
 +=== Обзор свободно доступных и бесплатных IP АТС ===
 +
 +  * [[http://​habrahabr.ru/​post/​122215/​|Обзор свободно доступных и бесплатных IP АТС (Asterisk, FreeSWITCH, SipXecs, Yate)]]
 +
 +==== Юмор ====
 +
 +  * [[http://​lukoshko.net/​nosov/​noskm3.shtml|Николай Носов. Телефон]]
 +  * [[http://​engineering-ru.livejournal.com/​79972.html|Телефонная башня в Стокгольме]]
 +  * [[https://​habr.com/​ru/​companies/​kingservers/​articles/​316660/​|AWS Snowmobile: перевоз петабайт данных в облако на … грузовиках от Amazon]]
 +
 +==== Лабораторные работы:​ Передача голосового трафика в компьютерной сети ==== 
 +
 +=== 1.1 Установка soft телефона на рабочую станцию ===
 +
 +  * [[ZoIPer]] (Без настроек)
 +
 +=== 1.2 Использование SIP протокола для организации передачи голосового трафика в компьютерной сети ===
 +<​code>​
 +sip:​10.5.N.150
 +</​code>​
 +
 +===== Вопросы =====
 +
 +  * Перечислите задачи сигнализации в телефонии.
 +  * Перечислите варианты набора номера в аналоговой телефонии. ​
 +  * Что определяет термины задержка и jitter в компьютерной сети?
 +  * Почему протоколы TCP/​IP,​Ethernet и ОС Unix/Linux не слишком хороши для IP телефонии?​
 +  * Назовите популярные аудио кодеки,​ используемые в телефонии
 +  * Какая полоса пропускания требуется кодеку G.711?
 +  * Назовите популярные протоколы сигнализации IP телефонии
 +  * Для чего используется протокол SDP?
 +
 +===== Модуль 2: Использование Asterisk в качестве SIP proxy =====
 +
 +==== Теория ====
 +
 +=== История Asterisk ===
 +
 +  * [[http://​ru.wikipedia.org/​wiki/​Zaptel|Zaptel]]
 +  * [[http://​ru.wikipedia.org/​wiki/​Asterisk|Asterisk]]
 +  * [[https://​www.asterisk.org/​products/​software/​licensing/​|Asterisk Commercial Licensing]]
 +
 +=== Разработка номерного плана предприятия ===
 +
 +  * [[http://​ru.wikipedia.org/​wiki/​Телефонный_план_нумерации|Телефонный план нумерации]]
 +  * [[http://​ru.wikipedia.org/​wiki/​E.164|Рекомендация E.164]]
 +==== Лабораторные работы:​ Использование Asterisk в качестве SIP proxy ====
 +
 +=== 2.1 Установка системы server ===
 +
 +<​code>​
 +# cat /etc/hosts
 +</​code><​code>​
 +127.0.0.1 ​              ​localhost
 +
 +172.16.1.X server.corpX.un server
 +</​code><​code>​
 +# cat /​etc/​resolv.conf
 +</​code><​code>​
 +search corpX.un
 +nameserver 172.16.1.254
 +</​code><​code>​
 +root@localhost:​~#​ cat /​etc/​hostname
 +</​code><​code>​
 +server.corpX.un
 +</​code><​code>​
 +root@localhost:​~#​ cat /​etc/​network/​interfaces
 +</​code><​code>​
 +auto lo
 +iface lo inet loopback
 +
 +auto eth0
 +iface eth0 inet static
 +        address 172.16.1.X
 +        netmask 255.255.255.0
 +        gateway 172.16.1.254
 +</​code><​code>​
 +root@localhost:​~#​ init 6
 +
 +...
 +
 +root@server:​~#​ ping ya.ru
 +
 +root@server:​~#​ apt update
 +</​code>​
 +
 +=== 2.2 Установка Asterisk ===
 +
 +  * Сервис Asterisk ([[Сервис Asterisk#​Установка]])
 +  * [[https://​www.asterisk.org/​downloads|Asterisk Downloads]]
 +
 +=== 2.3 Настройка SIP каналов ===
 +
 +  * [[Сервис Asterisk#​Настройка CHAN_SIP каналов]] (401, 402, 403)
 +  * [[Сервис Asterisk#​Настройка RES_PJSIP каналов]]
 +  * [[Сервис Asterisk#​Командный интерфейс Asterisk]]
 +
 +=== 2.4 Подключение к SIP каналам soft телефонов ===
 +
 +  * [[Материалы по VoIP#Soft телефоны]] (401-Zoiper 403-PhonerLite)
 +  * Звонок на тестовый номер 1000
 +
 +=== 2.5 Настройка базового плана нумерации ===
 +
 +  * [[Сервис Asterisk#​Настройка базового плана нумерации]]
 +  * [[Сервис Asterisk#​Отладка работы Asterisk]]
 +
 +==== Вопросы ====
 +
 +  * Какие варианты установки Asterisk?
 +  * Под какой лицензией распространяется Asterisk?
 +  * С правами какого пользователя рекомендуется запускать Asterisk?
 +  * Какой транспортный ip протокол может использоваться в SIP сигнализации?​
 +  * Для чего используется протокол RTP?
 +  * В каком каталоге находятся файлы конфигурации Asterisk?
 +  * Какая настройка канала chan sip определяет разрешенные кодеки?​
 +  * Что обозначает символ ! в CLI интерфейсе Asterisk?
 +  * Что обозначает символ ; в файлах конфигурации Asterisk?
 +  * Для чего может понадобиться регистрация SIP устройства на сервере Asterisk?
 +  * К чему приводит команда core restart gracefully?
 +  * Какие правила указания значений приоритетов имеются в плане нумерации?​
 +  * Какой ключ команды asterisk используется для CLI подключения к серверу?​
 +  * Какой ключ команды asterisk используется для выполнения инструкций?​
 +
 +===== Модуль 3: Распространение IP телефонии за пределы офиса =====
 +
 +==== Теория ====
 +
 +=== Телефонный транк ===
 +
 +  * [[http://​ru.wikipedia.org/​wiki/​Соединительная_линия|Соединительная_линия]]
 +  * [[http://​www.bytemag.ru/​articles/​detail.php?​ID=8756|Построение транков в IP-телефонии]]
 +  * [[https://​wiki.asterisk.org/​wiki/​display/​AST/​Asterisk+Standard+Channel+Variables|Asterisk Standard Channel Variables]]
 +  * [[https://​ru.wikipedia.org/​wiki/​DUNDi|DUNDi]]
 +
 +=== Подключение Asterisk к Asterisk ===
 +
 +  * [[http://​ru.wikipedia.org/​wiki/​IAX|Протокол IAX]]
 +
 +=== Подключение Asterisk к VoIP провайдерам ===
 +
 +  * [[http://​www.voip-info.org/​wiki/​view/​Asterisk+Configurations+for+connecting+with+VOIP+providers|Asterisk Configurations for connecting with VOIP providers]]
 +
 +=== Управление кодеками и транскодинг ===
 +
 +  * [[http://​www.voip-info.org/​wiki/​view/​Asterisk+codecs|Asterisk Codecs]]
 +==== Лабораторные работы:​ Подключение телефонной сети предприятия к VoIP провайдерам ====
 +
 +=== 3.1 Использование протокола IAX для подключения Asterisk к Asterisk ===
 +
 +  * Управление CallerID ([[Сервис Asterisk#​Настройка CHAN_SIP каналов]]) - Указываем ФИО для кнала 403 и тестируем звонком на 401
 +
 +  * [[Сервис Asterisk#​Подключение Asterisk к Asterisk по протоколу IAX]]
 +  * Подключение Asterisk к Asterisk по протоколу SIP ([[Сервис Asterisk#​Настройка CHAN_SIP каналов]]),​ демонстрируется для видеотелефонов
 +
 +=== 3.2 Использование протокола SIP для подключения к VoIP провайдерам ===
 +
 +  * [[https://​www.sipnet.ru/​|Демонстрация вариантов использования услуг провайдера SIPNET (WebRTC, информация о подключенных устройствах,​ звонки из города,​ ...)]]
 +  * [[Материалы по VoIP#​Настройка Asterisk для связи с VoIP провайдерами]]
 +
 +3.2.1 Настройка исходящих вызовов
 +
 +  * [[Сервис Asterisk#​Использование шаблонов в именах CHAN_SIP каналов]]
 +  * Настройка системы преподавателя ([[Сервис Asterisk#​Подключение Asterisk к Asterisk по протоколу SIP]])
 +  * Настройка системы слушателя ([[Сервис Asterisk#​Шаблон конфигурации для осуществления исходящих вызовов]])
 +
 +3.2.2 Обработка входящих вызовов
 +
 +  * Настройка системы слушателя ([[Сервис Asterisk#​Шаблон конфигурации для обработки входящих вызовов]])
 +
 +
 +=== 3.3 PJSIP ===
 +
 +  * [[Сервис Asterisk#​Настройка RES_PJSIP каналов]]
 +
 +=== 3.4 Диагностика проблем подключения ===
 +
 +  * [[Сервис Asterisk#​Отладка работы Asterisk]]
 +
 +===== Вопросы =====
 +
 +  * Какая настройка канала chan sip определяет возможность регистрации на нем устройства?​
 +  * Что такое телефонный транк?
 +  * Какие переменные канала Вам известны?​
 +  * Верно ли что соединить две станции Asterisk можно только по протоколу IAX?
 +  * Чем отличается Asterisk канал типа peer от канала типа user в настройках IAX и SIP?
 +  * Для чего используется протокол DUNDi
 +
 +===== Модуль 4: Развитие сервисов корпоративной IP телефонии =====
 +
 +==== Теория ====
 +
 +=== Обзор сервисов,​ расширяющих возможности IP телефонии ===
 +
 +  * [[http://​ru.wikipedia.org/​wiki/​Call_Detail_Record|Call Detail Record]]
 +  * [[https://​ru.wikipedia.org/​wiki/​%D0%9F%D1%80%D0%BE%D1%82%D0%BE%D0%BA%D0%BE%D0%BB_%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F_%D1%81%D0%B5%D0%B0%D0%BD%D1%81%D0%B0#​Сервер_B2BUA|Сервер B2BUA]]
 +  * [[http://​ru.wikipedia.org/​wiki/​Дополнительные_виды_обслуживания|Дополнительные виды обслуживания]]
 +  * [[http://​ru.wikipedia.org/​wiki/​Сервисы_корпоративной_IP_телефонии|Сервисы корпоративной IP телефонии]]
 +
 +=== Функции Call центра ===
 +
 +  * [[http://​ru.wikipedia.org/​wiki/​Колл-центр|Колл-центр]]
 +==== Юмор ====
 +
 +  * [[https://​youtu.be/​0zC_zkfLK2U|ПОЗВОНИТЕ КУЗЕ]] ([[https://​youtu.be/​vaeAuJAJmKs|управление Кузей в 2021]])
 +==== Лабораторные работы:​ Внедрение сервисов IP телефонии ====
 +
 +=== 4.1 Детализация времени разговоров (Call Detail Records CDR) ===
 +
 +  * [[Локализация системы#​Локализация временной зоны]]
 +  * [[Сервис Asterisk#​Детализация разговоров]]
 +
 +=== 4.2 Последовательность и перенаправление вызовов ===
 +
 +  * [[Сервис Asterisk#​Базовая конфигурация]]
 +  * [[Сервис Asterisk#​Перевод вызова на другого абонента]]
 +
 +Проверка:​
 +
 +  * Звоним с Zoiper на 403 (PhonerLite) и набираем *21301 (!!не сработало,​ проверить!!) или *228916... на клавиатуре компьютера (должен быть слышен DTMF)
 +
 +=== 4.3 Перехват и парковка вызовов ===
 +
 +Задача:​ группы перехватить звонок телефона коллеги по комнате,​ который отсутствует ​
 +
 +  * [[Сервис Asterisk#​Перехват вызова]]
 +
 +Проверка: ​
 +  * из "​города"​ звонят секретарю (401-й), перехватывает 403-й (PhonerLite)
 + 
 +Задача:​ при необходимости,​ "​повесить"​ вызов на "​удержание",​ освобождая телефон для другого звонка,​ например для консультации.
 +
 +  * [[Сервис Asterisk#​Парковка разговора]]
 +
 +Проверка: ​
 +  * В классе - звоним с 401 на 403, паркуем вызов на 403, продолжаем разговор,​ набирая c 403-го телефона номер парковочного слота
 +  * В вебинаре - преподаватель звонит с 402-го слушателю на 401-й, преподаватель и/или слушатель паркует вызов и возвращается к нему
 +
 +Задача:​ улучшаем музыку в режиме ожидания,​ знакомимся с кодеками (демонстрирует преподаватель)
 +
 +  * [[Перекодировка звука]]
 +  * [[Сервис Asterisk#​Добавление своих звуковых файлов]] в MOH
 +
 +=== 4.4 Локализация Asterisk ===
 +
 +  * [[Сервис Asterisk#​Локализация сообщений Asterisk]] (лучше весь!)
 +
 +  * [[Сервис Asterisk#​Отладка работы Asterisk]]
 +  * [[Сервис Asterisk#​Обработка статуса вызова]] (демонстрирует преподаватель)
 +
 +Сценарий:​ уведомляем звонящего о том, что абонент разговаривает по другой линии (демонстрирует преподаватель,​ звонок с 401-го на 311, с 402-го на 401-й)
 +
 +  * [[Сервис Asterisk#​Добавление своих классов]] в MOH
 +  * [[Сервис Asterisk#​Подсчет количества одновременных вызовов абонента]] для многоканального телефона (демонстрирует преподаватель)
 +
 +=== 4.5 Внедрение голосовой почты ===
 +
 +Создать ящик для пользователя 401, 402 и 403(в классе,​ понадобится в теме переадресации)
 +
 +  * [[Сервис Asterisk#​Голосовая почта]]
 +
 +=== 4.6 Дополнительные возможности обработки входящих вызовов ===
 +
 +Изменение обработки входящих вызовов в течении суток
 +
 +  * [[Сервис Asterisk#​TimeBased контексты]] (обсудить)
 +
 +Настройка информационных уведомлений для звонящих
 +
 +  * [[Сервис Asterisk#​Запись звукового файла]]
 +  * [[Сервис Asterisk#​Добавление своих классов]] в MOH (incoming и, дополнительно,​ silence, пригодится в Call центре)
 +
 +Автоматизация обработки входящих вызовов с использованием IVR
 +
 +  * [[Сервис Asterisk#​Запись звукового файла]]
 +  * [[Сервис Asterisk#​Интерактивное голосовое меню IVR]]
 +
 +=== 4.7 Прослушивание ​ и запись разговоров ===
 +
 +!!! Методически лучше начать с записи в IVR
 +
 +  * [[Сервис Asterisk#​Прослушивание разговоров]] в реальном времени (при отсутствии телефонных аппаратов нужна помощь слушателя,​ звонящего,​ например,​ с 401-го на 311)
 +  * [[Сервис Asterisk#​Запись разговоров]]
 +  * Файловый сервер SAMBA [[Файловый сервер SAMBA#​Публичный каталог доступный на чтение]]
 +
 +=== 4.8 Использованием AstDB ===
 +
 +  * Как сервис Asterisk использует [[Сервис Asterisk#​AstDB]]
 +
 +Задача:​ сделать имена каналов совпадающими с учетными записями пользователей
 +
 +  * [[Сервис Asterisk#​Настройка CHAN_SIP каналов]]
 +  * [[Сервис Asterisk#​Использование AstDB для связи номеров и учетных записей]]
 +
 +Задача:​ сделать переадресацию с возможностью управления номером со стороны абонента через DTMF
 +
 +  * [[Сервис Asterisk#​Переадресация вызовов на внешний номер]]
 +  * [[Сервис Asterisk#​Использование AstDB для перенаправления вызовов]]
 +
 +Проверка:​
 +  * Звонок с 401 на 403 уходит на мобильный
 +
 +=== 4.9 Организация конференц связи ===
 +
 +  * [[Сервис Asterisk#​Конференц связь]]
 +  * [[Сервис Asterisk#​Организация обратных вызовов]]
 +
 +=== 4.10 Автоматизация распределения входящих вызовов между операторами ===
 +
 +  * [[Сервис Asterisk#​Организация очередей]] (демонстрирует преподаватель)
 +  * [[Сервис Asterisk#​Организация обратных вызовов]]
 +  * [[Сервис Asterisk#​Добавление своих классов]] в MOH (сделать тишину для операторов!:​)
 +  * [[Сервис Asterisk#​Организация Call центра]]
 +
 +=== 4.11 Отказоустойчивая конфигурация ===
 +
 +  * [[https://​www.specialist.ru/​news/​4815/​besplatnij-seminar-asterisk-v-otkazoustojchivoj-konfiguracii|Бесплатный семинар «Asterisk в отказоустойчивой конфигурации»]] - [[Asterisk в отказоустойчивой конфигурации]]
 +  * [[https://​youtu.be/​U-LOU6dkBqs|Отказоустойчивая конфигурация на примере Asterisk]]
 +
 +  * [[Решение DRBD]]
 +  * [[Пакет Pacemaker]]
 +  * [[Технология LXC]]
 +==== Вопросы ====
 +
 +  * Что общего и в чем разница между приложениями NoOp и Verbose?
 +  * В чем отличие вывода debug и verbose в Asterisk?
 +  * В каком каталоге,​ по умолчанию,​ Asterisk хранит файлы журналов?​
 +  * Что такое CDR?
 +  * Какой кодек используется Asterisk для записи голосовых сообщений?​
 +  * В каком файле конфигурации Asterisk определяются служебные каталоги системы?​
 +  * Перечислите аргументы приложения Dial
 +  * Как подключить к контексту содержимое другого контекста?​
 +  * Для чего используется канальный драйвер Local?
 +  * Что общего и в чем разница между приложениями Playback и Background?
 +  * В каком файле конфигурации Asterisk определяются номера парковочных слотов?​
 +  * Какой элемент синтаксиса плана нумерации используется для обозначения точек переходов?​
 +  * В каком каталоге располагаются звуковые файлы, использующиеся в MOH?
 +  * В чем отличие понятий format и codec?
 +  * Какое приложение можно использовать для записи приветствия в IVR?
 +  * Какое приложение можно использовать для записи разговоров?​
 +  * Какое приложение можно использовать для подслушивания разговоров?​
 +  * Перечислите приложения,​ ожидающие DTMF ввод с телефона пользователя.
 +  * Какое максимальное количество участников конференции может быть в Asterisk?
 +  * Какие стратегии могут использоваться в очередях Asterisk? ​
 +  * В чем разница между приложениями VoiceMail и VoiceMailMain?​
 +  * Для чего используется конструкция ${...} в Asterisk
 +  * Для чего используется конструкция $[...] в Asterisk
 +  * Перечислите способы организации обратных вызовов в Asterisk?
 +  * Какие специальные "​номера"​ поддерживаются Asterisk в плане нумерации?​
 +===== Модуль 5: Использование WEB интерфейсов для управления Asterisk =====
 +
 +==== Теория ====
 +
 +=== Обзор решений,​ их достоинств и недостатков ===
 +
 +  * [[https://​wiki.asterisk.org/​wiki/​display/​AST/​Asterisk+GUI|Asterisk GUI]]
 +  * [[https://​ru.wikipedia.org/​wiki/​FreePBX|FreePBX]]
 +  * [[https://​www.asterisk.org/​downloads/​asterisknow|AsteriskNOW IP PBX]]
 +  * [[https://​ru.wikipedia.org/​wiki/​Elastix|Elastix]]
 +
 +==== Лабораторные работы ====
 +
 +=== Подготовка voip1.un ===
 +
 +  * Учетки 00000X на voip1.un настроить на nat
 +  * Старые сервера остановить, ​
 +  * отрегистрировать на voip1 (может не нужно) ​
 +  * настроить iax на 172.16.1.100+X (если будет iax)
 +  * перезапустить voip1 (может не нужно) ​
 +
 +=== 5.1 Установка WEB интерфейса Asterisk ===
 +
 +  * [[FreePBX#​Установка]] FreePBX (сгенерировать новый mac)
 +
 +
 +=== 5.2 Настройка сервисов телефонии через WEB интерфейс ===
 +
 +  * [[FreePBX#​Процесс начальной конфигурации]]
 +  * [[FreePBX#​Базовая конфигурация]]
 +
 +=== 5.3 Совместное управление Asterisk через WEB интерфейс и файлы конфигурации ===
 +
 +  * [[FreePBX#​Использование файлов конфигурации]] FreePBX
 +
 +===== Вопросы =====
 +
 +  * Можно ли совместить настройку Asterisk через GUI и редактирование файлов конфигураций?​
 +  * Почему не следует этого делать?​
asterisk._телефония_будущего_для_предприятия.1692168859.txt.gz · Last modified: 2023/08/16 09:54 by val