Джим Меггелен - Asterisk™: будущее телефонии Второе издание
AsteriskNOW 101 аналоговая телефония 210
помехи 214 аналогово-цифровой
преобразователь 222 аналоговые интерфейсы 104 платы 57
аналоговые платы 57 аналоговые сигналы, оцифровка 44 аналоговые телефоны 62
каналы FXS, конфигурация 114 аналоговые терминальные адаптеры
(ATA) 65, 132 аргументы make 81 макроса 202 приложения 163 арифметические операторы 189 архитектура реального времени 318 Asterisk 42 динамическая 322 статическая 319 PostgreSQL 320 атаки DoS (Denial of Service) 236 АТС (офисная телефонная станция с выходом в общую сеть) 28
база данных Asterisk (AstDB) 203 банк каналов 59 безопасность серверов 56 сети 254 безопасный RTP 253 Бенлеин, Грег 47 беспроводная связь 388 бизнес-системы 40 блоки питания, 51
большие системы, выбор процессоров 48 броузер
Firefox browser 97 Internet Explorer 306 Mozilla/Firefox 305 Бюро по стандартизации телекоммуникаций 376
версии исходного кода Asterisk 71 взломщики 33 видео 387
виртуальная частная сеть 233 влажность и электроника 56 внутренние вызовы 174
временные коды 236
время ожидания запроса на прерывание
(IRQ) 45 выбор дистрибутива Linux 45 выражения 187
Гай, Эд 270
гарантированное обслуживание 246 гармоническая волна 215 генераторы грамматического разбора 69 гибридные трансформаторы 212 голосовая почта 196
организация доступа 199 телефонные справочники для набора
номера по имени 199 хранение 369
в базе данных ODBC 372 на IMAP-сервере 369 голосовые меню, создание 168 голосовые сообщения 83, 351 графический пользовательский интерфейс Asterisk 96, 295
Д
двоичные файлы Asterisk 82 двухканальный многочастотный
набор 212 декодер (кодек) 44 детальность сообщений 156 диалплан
Adhearsion 281, 282 Festival 360 вызов макроса 202 добавление голосовой почты 198 интерактивный 167 команда reload 106 конфигурация 113, 116 для тестирования 134 соединение двух серверов Asterisk 142 логика разработки сценариев 43 настройка 107 синтаксис 158 сценарии AGI 258 функции 190 Диксон, Джим 30
дискретизация 216 дифференцированное обслуживание 246 добавочные номера 161 s (start) 164 диалплан 159 компоненты 161
Европейская конференция почтовых и телекоммуникационных ведомств 225
Ж
журналы регистрации 347
загрузка конфигурации для телефона
Polycom 126 заземление 53 Запата, Эмилиано 30 записи параметров вызовов 323 запись звука 353 запросы SQL 326
запуск Asterisk без использования сценариев 90 команды консоли 91 звонки 211 звуковая карта 104 значения функции 190
И
извлечение из архива исходного кода
Asterisk 72 импульсно-кодовая модуляция
(ИКМ) 215 имя функции 190 имя хоста сервера загрузки 122 индикация ожидающих
сообщений 197, 410 интерактивный автоответчик 383 интерфейс командной строки 88 инфраструктура AJAM 299 Prototype 306, 307 источники бесперебойного питания 52 исходный код Asterisk 71 исходящие вызовы 183
каналы 102
IRC (ретранслируемые интернет-чаты) 36 банки 59 квантование 216 клиенты 116
NetMeeting (Microsoft) 237 ключи семейства (AstDB) 204 кодеки (КОдер/ДЕКодер) 44, 240 Колп, Джошуа 41
Комитет по стандартизации интернет-протоколов 144 коммутируемая телефонная сеть общего пользования 43, 210 подключение к ней 57 системная плата, выбор 49 компандирование по логарифмическому
закону 220 компилятор GCC 69, 80 компиляция Asterisk 80 bash 73
необходимые пакеты Linux 69 libpri 79 Zaptel 76 проблемы 84 консоль Asterisk 155 контексты 159 DUNDi 365 конфигурационные файлы 396, 533 Asterisk GUI 303 диалплан 159 интерфейсов 104 использование шаблонов 154 телефоны Polycom 128 конфигурация портов (FXO/FXS) 108 коэффициент эквивалентности
звонка 211 Кристенсен, Клейтон M. 132
линии аудиосвязи 62 с T-несущей 224
лицензия на использование
музыки 354 логическая земля 52 логические операторы 188 любительские системы 39 заземление 55
М
Мадсен, Лейф 37 макросы 200
аргументы 202 описание 201 малая АТС 62
малые системы, выбор процессора 47 маршрутизаторы Linksys WRT54G 39 Мастер настройки GUI 297 мгновенное событие сброса 213 Международный союз
телекоммуникаций 237, 375 межплатформенные программные
телефоны 144 межсетевые экраны, конфигурация 135,150 поддерживающие NAT 233 соединение двух серверов Asterisk 139 местный эффект 212 метки приоритета 163 механизм речевого воспроизведения
текста 358 модемы 50
модуль обработки операций с плавающей точкой 44 процессоры, выбор 46 музыка, лицензированная Creative
Commons 354 мультиплексирование с разделением
по времени 79 Мур, Джеффри 37
наложение частот 222 напряжение 53
постоянного тока 211 Наттер, Чарльз 293 негарантированное обслуживание 247 недействительные вводы,
обработка 170 ненумерованные приоритеты 162 непрерывные соединение (каналы) 62 номеронабиратель 212
О
обмен ключами RSA 233
оболочка bash, компиляция исходного
кода Asterisk 73 оборудование
производительность 42 сервер 42 телефония 57 обработка речи 385 образ Player 101 общедоступная музыка 354 объединение каналов 149, 408 окно выбора компонентов сборки 74 окружение 52 операторы 188
арифметические 189 логические 188 регулярного выражения 189 описатели файла 257 оптимизации ядра 45 опции сценария запуска 88 основные конфигурационные
файлы 128 отказ в обслуживании 236 открытая архитектура 379 отладка 155
сценариев AGI 274 отображающиеся контексты 365 офисная АТС 62 AsteriskNOW 96 Cisco Call Manager 240 недостатки 31 связь с традиционной 381 ошибки depmod 87
пакетирование 231
пакетная передача 232
папки, используемые Asterisk 92
пара ключей 367 параметры IAX 397 парковка вызова 207 передача
голоса по IP-протоколу (VoIP) 29
Википедия, раздел по Asterisk 36 служебных сигналов по выделенному каналу 226 перекодировка 44 переменные 176,187 глобальные 177 канала 177 среды 178 переходы по условию 194 платы TDM400P, выявление портов
FXO/FXS 108 подготовка к установке Asterisk 39 процессоры, выбор 46 системные платы, выбор 48 помехи 40
портативные компьютеры 39 поставщики сервисов интернет- телефонии 135 подключение 135, 148 почтовые ящики 196 описание 198 опции 198 создание 197 предварительно скомпилированные
двоичные файлы Asterisk 82 препроцессоры C++ 85 приложения 163 диалплан 159 SIPp 41 пример Hello World! 167 приоритеты 162 проблемы компиляции 84 программные телефоны 64,107, 120, 146 X-Lite (ConuterPath) 123 проект PHPAGI 270 производительность оборудования 42 протокол открытого
взаимодействия 551 процессоры, выбор 46 прямой набор внутренних
абонентов 149 пыль и электроника 56
равноправные участники DUNDi 367 разработка Asterisk 72 ветвь 72 ствол 72 разъемы Molex 109 рычажный переключатель 213 Рэймонд, Эрик С. 378
североамериканский план нумерации 180 семейства (группы баз данных) 204 серверы
Festival 359 компоненты 120 подбор оборудования 42 серверные системные платы 49 электричесткие сети 55 сетевая интерфейсная плата 50 сетевые трансформаторы 212 сети (электрические) 55 с коммутацией пакетов 229 каналов 62 сигнал переменного тока 211 символическая ссылка linux-2.4 77 символ подстановки * 103 синтаксис диалплана 158
сопоставление с шаблонами 179 синхронная оптическая сеть 225 система SOHO (малый офис и дом) 40 система автоматической регистрации
сообщений 398 системная плата, выбор 48 системы Soekris 39 служба доменных имен 390 Смит, Джаред 37 Смит, Эллисон 352 соединения 249 friend 250 peer 250 user 250 сообщество Asterisk 34 сопоставление с шаблонами 179 спам по сети интернет-телефонии (СПИТ) 252
1 Аббревиатура DSP также расшифровывается как Digital Signal Processor (процессор цифровой обработки сигналов). Это устройство (обычно чип), способное обрабатывать и изменять различные сигналы. В сети телефонной связи процессоры ЦОС преимущественно отвечают за кодировку, декоди- ровку и перекодировку аудиоинформации. Для этого может требоваться выполнять большой объем вычислений.
2 В этой книге будет использоваться сервер CentOS Server 4.4, который мы обычно устанавливаем только с пакетом Editors. Если вы не знаете, какой дистрибутив выбрать, CentOS - превосходный вариант. CentOS можно найти на сайте http://www.centos.org.
1 Эта конфигурация была известна как комплект Digium Dev-lite. Далее будет подробнее рассмотрено, чем различаются FXS и FXO. Попросту говоря, эта плата предоставит один порт для подключения к традиционной аналоговой линии телефонной компании (FXO) и один порт для подключения к аналоговому телефону (FXS). Это может быть телефон любого типа, который будет работать с традиционной домашней телефонной сетью.
2 channels configured.
2 Да, существуют способы направить поток непосредственно между телефонами после того, как вызов установлен. Это можно настроить в файле sip. conf, используя или directrtpsetup=yes (экспериментальная опция, позволяющая перенаправлять переносимый сигнал в исходной настройке соединения), или canreinvite=yes (при этом переносимый сигнал проходит через Asterisk только в начале, до повторного сообщения INVITE, после чего сигнал может быть направлен непосредственно от телефона к телефону).
1 RFC 3261, SIP: Session Initiation Protocol, стр. 9, раздел 2.
1 RFC 3435 пришел на смену устаревшему RFC 2705.
1 Этот совет, пожалуй, распространяется на написание всех программ на Perl, особенно для новичков.
Примечания
1
В декабре 2006 года Рич скончался, его двухлетняя борьба с раком пришла к неутешительному концу. Рич присылал свои сообщения в рассылку Asterisk Users до ноября того года. Он отдавал силы сообществу до самого конца, поэтому мы посвятили эту книгу ему.