- •Перелік скорочень
- •Перелік визначень
- •Теоретичні відомості
- •1.1 Технологія Asterisk
- •1.2 Функціональні можливості Asterisk
- •1.3 Переваги та недоліки Asterisk
- •1.4 Архітектура Asterisk
- •1.5 Основи дiалплана ip-aтс Asterisk
- •Контекст
- •Додаткові номери
- •Прiоритети
- •Програми
- •Лiтература
- •2. Налаштування сервісів ip-атс asterisk
- •2.1 Схема мережі
- •2.2 Встановлення та налаштування VirtualBox, Ubuntu та ip-pbx Asterisk
- •2.2.1 Встановлення та налаштування платформи віртуалізації Oracle vm VirtualBox
- •2.2.2 Встановлення Ubuntu версії 10.04
- •2.2.3 Встановлення Asterisk на Ubuntu
- •Контрольні питання
- •Лiтература
- •2.3 Відображення номеру абонента, що викликає
- •2.3.1 Короткі теоретичні відомості
- •2.3.2 Приклад налаштування послуги відображення номеру абонента, що викликає
- •Контрольні питання
- •Лiтература
- •2.4 Повтор останнього набраного номеру
- •2.4.1 Короткі теоретичні відомості
- •2.4.2 Приклад налаштування послуги повтору останнього набраного номера
- •Контрольні питання
- •Лiтература
- •2.5 Прослуховування розмов
- •2.5.1 Короткі теоретичні відомості
- •2.5.2 Приклад налаштування послуги прослуховування розмов
- •Контрольні питання
- •Лiтература
- •2.6. Музика на утриманні
- •2.6.1 Короткі теоретичні відомості
- •2.6.2 Приклад налаштування послуги музики на утриманні
- •Контрольні питання
- •Лiтература
- •2.7 Голосова пошта
- •2.7.1 Короткі теоретичні відомості
- •2.7.1.1 Створення поштових скриньок
- •2.7.1.2 Додавання голосової пошти в діалплан
- •2.7.1.3 Організація доступу до голосової пошти
- •2.7.2 Приклад налаштування послуги голосової пошти
- •Контрольні питання
- •Лiтература
- •2.8. Запис розмов
- •2.8.1 Короткі теоретичні відомості
- •2.8.2 Приклад налаштування послуги запису розмови
- •Контрольні питання
- •Лiтература
- •2.9 Автоматичний дзвінок в заданий час
- •2.9.1 Короткі теоретичні відомості
- •2.9.1.1 .Call файли
- •2.9.2 Приклад налаштування послуги автоматичного дзвінка в заданий час
- •Контрольні питання
- •Лiтератури
- •2.10 Постановка викликів на паркування
- •2.10.1 Короткі теоретичні відомості
- •2.10.2 Приклад налаштування послуги постановки викликів на парркування
- •Контрольні питання
- •Література
- •2.11 Умовне та безумовне перенаправлення викликів
- •2.11.1 Короткі теоретичні відомості
- •2.11.2 Приклад налаштування умовного та безумовного перенаправлення викликів
- •Контрольні питання
- •Література
- •2.12 Вибіркове обмеження вхідних та вихідних викликів
- •2.12.1 Короткі теоретичні відомості
- •2.12.2 Приклад налаштування послуги вибіркового обмеження вхідних та вихідних викликів
- •Контрольні питання
- •Література
- •2.13 Інтерактивне голосове меню
- •2.13.1 Короткі теоретичні відомості
- •2.13.2 Приклад налаштування послуги інтерактивного голосового меню
- •Контрольні питання
- •Лiтература
- •2.14 Конференц-зв’язок
- •2.14.1 Короткі теоретичні відомості
- •2.14.2 Приклад налаштування послуги конференц–зв’язку
- •Контрольні питання
- •Лiтература
- •Додаток 1 Завдання до лабораторниз робіт з дисципліни «Проектування телекомунікаційних мереж наступного покоління»
- •Порядок виконання лабораторних робіт
- •Лабораторна робота № 1. Налаштування відображення номеру абонента, що викликає, на базі ip-атс Asterisk
- •Обладнання, прилади і матеріали
- •Завдання на лабораторну роботу
- •Варіанти завдань
- •Контрольні питання
- •Лабораторна робота № 2. Налаштування повтору останнього набраного номеру на базі ip-атс Asterisk
- •Обладнання, прилади і матеріали
- •Варіанти завдань
- •Контрольні питання
- •Лабораторна робота № 3. Налаштування сервісу прослуховування розмов на базі ip-атс Asterisk
- •Обладнання та матеріали
- •Завдання на лабораторну роботу
- •Варіанти завдань
- •Контрольні питання
- •Лабораторна робота № 4. Налаштування сервісу музики на утриманні на базі ip-атс Asterisk
- •Обладнання та матеріали
- •Завдання на лабораторну роботу
- •Варіанти завдань
- •Контрольні питання
- •Лабораторна робота № 5. Налаштування голосової пошти на базі ip-атс Asterisk
- •Обладнання, прилади і матеріали
- •Завдання на лабораторну роботу
- •Варіанти завдань
- •Лабораторна робота № 6. Налаштування запису розмови на базі ip-атс Asterisk
- •Варіанти завдань
- •Контрольні питання
- •Лабораторна робота № 7. Налаштування автоматичного дзвінка в заданий час на базі ip-атс Asterisk
- •Обладнання, прилади і матеріали
- •Завдання на лабораторну роботу
- •Варіанти завдань
- •Контрольні питання
- •Лабораторна робота № 8. Налаштування постановки викликів на паркування за допомогою засобів ip-pbx Asterisk
- •Обладнання, прилади і матеріали
- •Завдання на лабораторну роботу
- •Варіанти завдань
- •Контрольні питання
- •Оформлення звіту та порядок його подання
- •Лабораторна робота № 9. Налаштування умовного та безумовного перенаправлення викликів за допомогою засобів ip-pbx Asterisk
- •Обладнання, прилади і матеріали
- •Завдання на лабораторну роботу
- •Варіанти завдань
- •Контрольні питання
- •Оформлення звіту та порядок його подання
- •Лабораторна робота № 10. Налаштування вибіркового обмеження вхідних та вихідних викликів за допомогою засобів ip-pbx Asterisk
- •Обладнання, прилади і матеріали
- •Завдання на лабораторну роботу
- •Варіанти завдань
- •Лабораторна робота № 11. Налаштування сервісу інтерактивного голосового меню на базі ip-атс Asterisk
- •Контрольні питання
- •Лабораторна робота № 12. Налаштування конференц-зв’язку на базі ip-атс Asterisk
- •Обладнання, прилади і матеріали
- •Завдання на лабораторну роботу
- •Варіанти завдань
- •Контрольні питання
2.4.2 Приклад налаштування послуги повтору останнього набраного номера
Необхідно:
1. реалізувати послугу повтору останнього набраного номера;
2. перевірити правильність налаштування послуги повтору останнього набраного номера.
Послідовність дій
За допомогою VirtualBox запустити образ операційної системи Ubuntu 10.04.
Для внесення змін в конфігураційні файли IP-АТС Asterisk необхідно зайти в «Терминал». Виконаємо наступні дії: «Приложения» → «Стандартные» → «Терминал».
Для того, щоб отримати права доступу адміністратора вводимо команду # sudo su, після чого з’явиться запит паролю. Необхідно ввести пароль адмінністратора.
Після того, як отримали права адміністратора (root) стає можливим редагування конфігураційного файлу, який відповідає за налаштування повтору останнього набраного номера, а саме: extensions.conf.
Відкриваємо файл extensions.conf за допомогою текстового редактору nano, попередньо перейшовши в каталог з конфігураційними файлами:
# cd /etc/asterisk.
# nano extension.conf
В контексті, який визначає план набору для абонентів, для яких необхідно включити дану послугу треба додати такі екстеншни:
до плану набору номеру додати естеншни, які відповідатимуть за збереження номеру, який викликається:
exten => _XXX!,1,Answer //ініціюємо відповідь каналу при наборі номеру;
exten => _XXX!,n,Set(DB(RepeatDial/Number)=${EXTEN}) //записуємо набраний додатковий номер в базу даних до сімейства RepeatDial з ключем Number;
exten => _XXX!,n,Set(GLOBAL(TEMP/${CALLERID(NUM)})=${DB(RepeatDial/Number)}) //записуємо це значення з бази даних у зміну TEMP/${CALLERID(NUM)}, де {CALLERID(NUM)} – ідентифікатор абонента, що викликає, щоб для кожного абонента ця змінна була унікальною, щоб абонент повторював останній виклик саме зі свого терміналу;
exten => _XXX!,n,Dial(SIP/${EXTEN},60) набираємо номер абонента, відповідного до номеру канала, що викликається (за це відповідає змінна ${EXTEN}, яка зберігає в собі номер каналу, який був викликаний), та очікуємо на відповідь протягом 60 секунд;
exten => _XXX!,n,Hangup() //кладемо слухавку.
додати екстеншни, які відповідатимуть за повторний набор останнього набраного номеру. Для прикладу обрано системний номер «**». В прикладі послуга має інтерактивний характер і відтворює номер, на який повторно відбуватиметься виклик та не з’єднує з каналом, якщо до цього не було набрано жодного номера (наприклад, якщо сервер був відключений):
exten=> **,1,GotoIf($[${ISNULL($(TEMP/$(CALLERID(NUM)}})}]?invalid:redial) //перевіряємо чи є в змінній, яка має містити останній набраний номер, дані. Якщо вона пуста, то перенаправляємо абонента на пріоритет з міткою invalid, якщо ж в ній містяться дані, то перенаправляємо на пріоритет з міткою redial;
exten => **,n(invalid),Playback(invalid) //якщо змінна з останнім набраним номером пуста, то абоненту буде відтворено звуковий файл invalid, який є стандартним з бібліотеки Asterisk, і сповістить про те, що цей номер не може бути набраний;
exten => **,n,Hangup() //кладемо слухавку після того, як було відтворено файл;
exten => **,n(redial),Playback(vm-num-i-have) //якщо змінна з останнім набраним номер містить в собі данні, то абонент буде перенаправлений на даний екстеншн, який відтворить йому стандартний звуковий файл з інформацією про те, що в пам’яті міститься номер;
exten => **,n,Set(CHANNEL(language)=en) //встановлюємо мову, якою буде відтворено номер, en - англійська;
exten => **,n,Playback(num:${TEMP/${CALLERID(NUM)}},say) //відтворюємо номер, який записаний в змінній TEMP/${CALLERID(NUM)} за допомогою файлу say.conf;
exten => **,n,Playback(vm-dialout) //вітворюємо звуковий файл, який просить зачекати, поки відбудеться з’єднання;
exten => **,n,Wait(2) //даємо абоненту 2 секунди на те, щоб відмінити дзвінок через те,що останній набраний номер не є тим, на який необхідно дзвонити;
exten => **,n,Dial(SIP/${TEMP/${CALLERID(NUM)}},60) //набираємо номер, який міститься у змінній TEMP/${CALLERID(NUM)}та очікужмо на відповідь протягом 60 секунд;
exten => **,n,Hangup() //кладемо слухавку.
Зберігаємо внесені зміни за допомогою комбінації клавіш cntr+O та виходимо з редактору: cntr+Х.
Після того як всі конфігураційні файли були налаштовані, ініціюємо запуск IP-АТС Asterisk. Для цього необхідно виконати наступні дії:
# asterisk start
# asterisk –r (вхід до консольного режиму IP-АТС Asterisk).
Якщо сервер Asterisk вже був запущений до початку редагування конфігураційних файлів, то необхідно виконати зчитування нової інформації за допомогою команди, яка вводяться в консолі Asterisk:
> dialplan reload //зчитування змін в файлі extensions.conf
На рисунку 16 зображено вигляд файлу extensions.conf для реалізації послуги повтор останнього набраного номера.
Рис. 16 Реалізація послуги набору останнього набраного номера.
Перевірка правильності налаштування послуги
В ОС Windows запускається програма X-Lite (софтфон).
Для встановлення з’єднання між софтфоном та програмним комутатором Asterisk необхідно налаштувати параметри користувача (наприклад, student1).
Перевіряємо, чи відтворюється інформація про те, що номер не може бути набраний через відсутність даних в змінній. Для цього здійснюємо дзвінок на системний номер **.
Далі викликаємо іншого абонента набравши його номер.
Перевіряємо, що при наборі системного номера ** здійснюється повтор останнього набраного номера.
