Зіставлення заголовка Reason
Цей переклад зроблено автоматично і ще не вичитано. Читати англійську версію
Коли дзвінок не вдається, обладнання абонента бачить SIP-код і, за потреби, заголовок Reason (RFC 3326) з первинною причиною, наприклад Reason: Q.850; cause=17; text="User busy". Комутатори багатьох клієнтів за цими значеннями вирішують, чи переходити на резерв і чи відтворювати оголошення. FlySIP дає змогу змінити обидва: який SIP-код отримує абонент і який заголовок Reason іде разом із ним.
Як це працює
Розділ «Як це працює»Дві таблиці в Tools & Debugs (інструменти й налагодження) транслюють коди. Кожен запис зіставляє In Code (вхідний код) з Out Code (вихідний код) і фразою причини та може додати заголовок Reason.
| Таблиця | Що транслює | До кого застосовується |
|---|---|---|
| Result Code Internal | Помилки, які генерує сам комутатор: внутрішні коди, як-от -20, і SIP-коди, які надсилає комутатор, наприклад 403 у разі невдалої автентифікації |
До кожного абонента |
| Result Code External | Відповіді, отримані від вендорів | До абонентів, чий акаунт має вибраний Account Class (клас акаунта) |
- Виникає помилка. Або комутатор відхиляє дзвінок, або вендор відповідає помилкою, і для перебору маршрутів більше не лишилося маршрутів.
- Комутатор шукає код. Для власних помилок він перевіряє Result Code Internal. Для відповіді вендора він перевіряє Result Code External, але лише записи Account Class акаунта абонента. Акаунти без класу акаунта зовнішньої трансляції не отримують.
- Код замінюється. Out Code і Reason (причина) замінюють SIP-код і фразу причини, які надсилаються абонентові. Порожнє поле Reason зберігає початкову фразу.
- Задається заголовок Reason. У розділі RFC3326 Parameters (параметри RFC3326) Protocol (протокол)
Q.850абоSIPразом з Cause (причина) і Reason формують заголовок. Disabled не додає жодного. Якщо запису немає, власний заголовокReasonвендора передається абонентові без змін, а для власних помилок комутатор генерує причинуQ.850, якщо вона відповідає внутрішній помилці. - За потреби відтворюється голосова підказка. Зовнішній запис з IVR Prompt (голосова підказка IVR) спочатку відтворює підказку абонентові, а потім надсилає трансльовану помилку.
Комутатор перезавантажує обидві таблиці приблизно раз на хвилину, тому зміна застосовується до нових дзвінків без перезапуску. Трансляції також застосовуються до попередніх (provisional) відповідей, що збігаються з In Code.
Ключові поняття
Розділ «Ключові поняття»- Disconnect cause (причина роз’єднання) — причина завершення дзвінка, що показується в CDR як код SIP/Q.850.
- Account (акаунт) — SIP-ідентифікатор (ім’я користувача/пароль або IP), що належить клієнту, ініціює та приймає дзвінки й має власний баланс.
- Hunting (перебір маршрутів) — спроба наступного маршруту після невдалої спроби.
- Prompt (голосова підказка) — записане голосове повідомлення, яке відтворює IVR-застосунок.
Типові сценарії
Розділ «Типові сценарії»Комутатор клієнта зупиняється на 404 замість того, щоб спробувати наступного оператора
Розділ «Комутатор клієнта зупиняється на 404 замість того, щоб спробувати наступного оператора»Створіть Account Class для акаунтів цього клієнта та зовнішній запис з In Code 404 і Out Code 503. Тепер комутатор клієнта вважає помилку тимчасовою й переходить на резерв. Інші клієнти й далі отримують 404 вендора.
Клієнту потрібна причина Q.850 на кожній помилці
Розділ «Клієнту потрібна причина Q.850 на кожній помилці»Додайте зовнішні записи для кодів, які важливі клієнту, з Protocol Q.850 і причиною з опублікованого зіставлення, наприклад ITU-T Q.1912.5. Наприклад, In Code 486, Out Code 486, Cause 17, Reason User busy надсилає:
SIP/2.0 486 Busy HereReason: Q.850; cause=17; text="User busy"Дзвінки, відхилені через брак коштів, мають пояснювати причину
Розділ «Дзвінки, відхилені через брак коштів, мають пояснювати причину»Додайте внутрішній запис з In Code -20 (недостатній баланс) і Out Code та Reason, які розуміє обладнання ваших клієнтів, наприклад 402 Payment Required. Внутрішні коди перелічено на сторінці Дзвінки завершуються з кодом помилки SIP.