====== Основные каталоги asterisk ====== Все основные каталоги asterisk перечислены в файле asterisk.conf, находящемся в /etc/asterisk. В этом файле, в макросе directories (в начале файла) указаны переменные, которым присвоены значения в виде путей к каталогам, например: '' [directories](!)\\ astetcdir => /etc/asterisk\\ astmoddir => /usr/lib/asterisk/modules\\ astvarlibdir => /var/lib/asterisk\\ astdbdir => /var/lib/asterisk\\ astkeydir => /var/lib/asterisk\\ astdatadir => /var/lib/asterisk\\ astagidir => /var/lib/asterisk/agi-bin\\ astspooldir => /var/spool/asterisk\\ astrundir => /var/run/asterisk\\ astlogdir => /var/log/asterisk\\ astsbindir => /usr/sbin\\ astetcdir\\ '' Расшифровывается как asterisk-etc-directory. По умолчанию - /etc/asterisk. Является каталогом, содержащим практически все конфигурационные файлы asterisk (строго говоря, он содержит все конфигурационные файлы самого asterisk; конфигурационные файлы dahdi, zapata, libpri, которыми пользуется asterisk, не являются конфигурационными файлами астериска). ====== astmoddir ====== Расшифровывается как asterisk-modules-directory. По умолчанию - /usr/lib/asterisk/modules. Содержит модули asterisk. Как правило, состав модулей указывается при установке asterisk в пункте make menuselect. Здесь (в частности) есть модули chan_sip, chan_iax2, отвечающие за sip и iax протоколы, а также (например) app_festival, отвечающий за приложение festival (и организующий взаимодействие с программой festival, устанавливаемой отдельно). В виде модулей также реализованы кодеки. ====== astvarlibdir ====== Расшифровывается как asterisk-var-lib-directory. По умолчанию - /var/lib/asterisk. Содержит множество подкаталогов, наиболее интересными из которых являются: ====== agi-bin ====== Содержит Asterisk Gateway Interface (AGI) скрипты. ====== moh ====== Содержит Music On Hold - файлы с музыкой во время ожидания. ====== sounds ====== Вероятно, наиболее часто используемый каталог из astvarlibdir. Содержит наборы звуковых файлов для воспроизведения цифр, чисел, букв алфавита и наиболее популярных слов и фраз (нередко на нескольких языках). Структура этого каталога имеет 2 варианта расположения файлов: старый и новый. старый вариант: '' /var/lib/asterisk/sounds/dictate/<язык>/, например /var/lib/asterisk/sounds/dictate/ru/\\ /var/lib/asterisk/sounds/digits/<язык>/, например /var/lib/asterisk/sounds/digits/ru/\\ /var/lib/asterisk/sounds/letters/<язык>/, например /var/lib/asterisk/sounds/letters/ru/\\ /var/lib/asterisk/sounds/phonetic/<язык>/, например /var/lib/asterisk/sounds/phonetic/ru/\\ '' и т.п. новый вариант: '' /var/lib/asterisk/sounds/<язык>/dictate/, например /var/lib/asterisk/sounds/ru/dictate/\\ /var/lib/asterisk/sounds/<язык>/digits/, например /var/lib/asterisk/sounds/ru/digits/\\ /var/lib/asterisk/sounds/<язык>/letters/, например /var/lib/asterisk/sounds/ru/letters/\\ /var/lib/asterisk/sounds/<язык>/phonetic/, например /var/lib/asterisk/sounds/ru/phonetic/\\ '' и т.п. Старый вариант используется в asterisk до версии 1.4. Начиная с версии 1.4, в файле asterisk.conf добавлен параметр languageprefix. Если languageprefix=no, используется старый вариант расположения файлов, если languageprefix=yes - новый. В версии asterisk 1.6 новый вариант расположения файлов задан по умолчанию. ====== astdbdir ====== Расшифровывается как asterisk-database-directory. По умолчанию - /var/lib/asterisk. Содержит (прямо в корне этого каталога) файл astdb.sqlite3 (в случае, если asterisk установлен с SQLite). Это база данных asterisk, и в случае миграции asterisk на другой сервер (по идее) достаточно скопировать этот файл на новый сервер в ту же папку. ====== astkeydir ====== Расшифровывается как asterisk-keys-directory. По умолчанию - /var/lib/asterisk. Asterisk использует подкаталог keys в этой папке для загрузки ключей шифрования (RSA, public/private key system). Эти ключи используются для аутентификации пиров. Если положить публичный ключ пира в эту папку, пиры могут аутентифицироваться с помощью этого метода. ====== astdatadir ====== Расшифровывается как asterisk-data-directory. По умолчанию - /var/lib/asterisk. Содержит системные данные asterisk, подробнее см. astvarlibdir. ====== astagidir ====== Расшифровывается как asterisk-agi-directory. По умолчанию - /var/lib/asterisk/agi-bin. Содержит Asterisk Gateway Interface (AGI) скрипты. ====== astspooldir ====== Расшифровывается как asterisk-spool-directory. По умолчанию - /var/spool/asterisk. Содержит несколько подкаталогов, наиболее интересными из которых являются: ====== outgoing ====== Файлы, помещаемые в этот каталог, должны иметь расширение .call. Они предназначены для автоматизации вызовов абонентов asterisk и позволяют задать дату, время и номер телефона абонента, которому asterisk попытается дозвониться в указанное время. В случае успешного дозвона будет выполнено указанное в .call файле приложение (например, произнесен требуемый звуковой файл или с помощью festival озвучена какая-либо фраза). ====== outgoing-done ====== Сюда попадают обработанные файлы из каталога outgoing. Когда .call файл выполнен, он перемещается в этот каталог, и в него добавляется информация о результатах его выполнения. ====== meetme / dictate / system ====== Эти папки используются для хранения данных приложений meetme, dictate и system соответственно. Приложение dictate ищет файлы в своей папке, приложение meetme сохраняет записи конференций в папке meetme, а приложение system использует соответствующую папку для хранения временных (промежуточных) данных. ====== tmp ====== Используется для хранения временных файлов. Отдельные приложения могут требовать записи в файл перед тем, как скопировать файл в каталог назначения. Использование каталога tmp предотвращает одновременные чтение и запись одного и того же файла разными процессами. ====== monitor ====== Папка содержит записи разговоров, сделанные приложениями Monitor и/или MixMonitor. Кроме того, флаги w и W в команде Dial обеспечивают возможность записи разговора в эту папку. ====== voicemail ====== Голосовая почта всех почтовых ящиков asterisk хранится здесь. Настройки голосовой почты находятся в файле voicemail.conf ====== astrundir ====== Расшифровывается как asterisk-run-directory. По умолчанию - /var/run/asterisk. Содержит файлы запущенного процесса asterisk - asterisk.pid и asterisk.ctl. Если хотя бы один из файлов отсутствуют - значит, существуют проблемы с запуском asterisk, и имеет смысл посмотреть логи астериска (astlogdir). ====== astlogdir ====== Расшифровывается как asterisk-logs-directory. По умолчанию - /var/log/asterisk. Содержит несколько файлов и папок, по умолчанию в этом каталоге присутствуют файл messages (логи asterisk) и queue_log (логи очередей asterisk). Кроме того, содержит папку cdr-csv, в которой пишется файл Master.csv, используемый для биллинга asterisk. ====== astsbindir ====== Расшифровывается как asterisk-sbin-directory. По умолчанию - /usr/sbin. Содержит как сам демон asterisk, так и скрипт, перезапускающий asterisk в случае, если программа "вылетела" - safe_asterisk.