Заборонити в FreePBX 13 за допомогою Custom Context
Хочемо показати два простих способи для обмеження набору платних номерів (міжнародних і міжміських напрямків) на Asterisk. Навіщо це потрібно? Часто в компаніях є певний тип користувачів, яким, для виконання своїх службових обов'язків, не потрібно здійснювати вихідні дзвінки на зовнішні напрямки. Вони приймають вхідні дзвінки від зовнішніх абонентів і можуть користуватися внутрішньокорпоративної зв'язком. Саме таке завдання ми вирішимо.
Будемо вважати, що обмежити набір номерів платних напрямків потрібно для внутрішніх номерів маскою 3XX.
спосіб 1
Для вирішення вищеописаної завдання першим способом будемо користуватися графічним інтерфейсом FreePBX 13 і вже знайомим нам модулем Custom Context .
Відкриваємо вкладку Connectivity → Custom Context і натискаємо Add Context:
Задаємо нового контексту назву і зрозумілий опис і тиснемо Submit, після чого перед нами відкривається список правил, якими ми будемо маніпулювати, щоб заборонити доступ до вихідних напрямках.
Подальші дії рекомендуємо відтворювати в точності за таким порядком:
- Вибираємо опцію Allow навпроти рядка Set All To;
- Вибираємо опцію Deny Rules навпроти рядка ENTIRE Basic Internal Dialplan;
- У вікні Deny Rules вказуємо шаблон (dial pattern) зовнішніх номерів, які хочемо заборонити. У нашому випадку це - 810Z. - міжнародний і 8495XXXXXXX, 8499XXXXXXX, 89XXXXXXXX - дзвінки по місту і мобільні номери. Дізнайтеся як приймає номер ваш провайдер, щоб вказати правильний шаблон.
Має вийти ось так:
4. Далі прокручуємо дане меню вниз і навпроти рядка ALL OUTBOUND ROUTES також вибираємо Deny Rules, після чого тиснемо Submit і Apply Config
Тепер залишилося тільки застосувати створене правило на потрібних Extension'ах. Для цього відкриваємо модуль Extensions шукаємо внутрішній номер, з яким необхідно заборонити здійснювати міжнародні та міжміські дзвінки (наприклад 310), відкриваємо вкладку Other і навпроти рядка Custom Context вибираємо наш новий контекст.
Натискаємо Submit, Apply Config і готово тепер з даного внутрішнього номера "назовні" не подзвонити.
Якщо таких внутрішніх номерів багато, то можна вивантажити csv файл з усіма їх настройками за допомогою модуля Bulk Handler і вказати так контекст вручну, а потім імпортувати новий файл.
спосіб 2
Для вирішення завдання другим способом, нам доведеться трохи змінити правила в конфігураційних файлах. Для цього відкриваємо /etc/asterisk/extensions_custom.conf будь-яким редактором, шукаємо контекст [from-internal-custom] і вносимо туди наступний запис:
[From-internal-custom] exten => _8X./3XX,1,NoOp("${CALLERID} long-distance call detected ") exten => _8X./3XX,n,Playback(feature-not-avail-line , noanswer) exten => _8X./3XX,n,Hangup ()
Таким чином, ми заборонили набирати номери міжміських і міжнародних напрямів з виходом через 8 для всіх внутрішніх номерів з маскою 3XX.
Ці статті можуть бути вам цікаві:
Навіщо це потрібно?