Два компонента переключают обслуживаемую линию на другого абонента. «Переключение на номер» — универсальный: годится и для внутренних номеров, и для города. «Переключение на внешний номер с указанием последовательности выделения линий» — только для внешних вызовов, но даёт полный контроль над тем, через какую линию пойдёт звонок и что абонент будет слышать во время дозвона.
Переключение на номер
Коммутирует обслуживаемую линию с абонентом по указанному номеру — во внешнюю среду или внутри системы. При наборе городского номера резервируется свободная и доступная по правам внешняя линия, в неё набирается номер, и ответа ждут в течение установленного интервала — по умолчанию 40 секунд. Во время ожидания играет стандартная мелодия.
Переключение внутри АТС
Доступны все типы внутренних номеров, и ведут они себя по-разному.
| Тип номера | Что происходит |
|---|---|
| Стандартный | Попытка соединить абонента с одним из операторов или внутренних линий номера. Если все заняты, можно задействовать очередь ожидания. |
| Быстрый | Переключение идёт внутрь АТС, но физически набор производится во внешнюю линию; тип быстрого номера (АТС или город) определяет, какая линия берётся. Свободных линий нет — возврат по ветке «Занято». Линия зарезервирована — управление вернётся после ответа внешней АТС по соответствующей ветке. |
| Запуск IVR | Безвозвратный запуск назначенного в номере сценария. Текущий сценарий прекращает исполнение, переходы по веткам компонента не выполняются. |
| Служебный | Доступны «Выход в город», «Выход в АТС» и «Перехват». См. ниже. |
«Перехват» работает обычным образом и нужен в основном в сценарии исходящей маршрутизации. Переключать на него можно сразу с номером-расширением:
*103, где * — служебный номер перехвата, а 103 — внутренний стандартный номер.
Свойства
| Свойство | Описание |
|---|---|
| Назначение | Городской (внешний) номер, внутренний АТС, «Авто» или «Возврат к оператору». См. ниже. |
| Номер | Аргумент с номером для дозвона. |
| Тип вызова | Обычный или интерком. При интерком-вызове телефонное устройство снимает трубку автоматически сразу после поступления звонка — если поддерживает эту функцию; иначе вызов идёт обычным образом. |
| CallerId | Номер дозванивающегося, отправляемый как caller-id. Если не указан, берётся настроенный общим образом номер, определившийся при внешнем звонке, либо основной внутренний номер пользователя или линии при внутреннем. Отображается во всплывающем окне у вызываемого. |
| CallerName | Имя, принудительно отправляемое как caller-name в IP-канал. При звонке внутри АТС без указания берётся имя абонента-инициатора. Тоже видно во всплывающем окне. |
| Дополнительная информация об абоненте | Произвольные данные об абоненте. См. предупреждение ниже. |
| Сигнал вызова | Тег мелодии при звонке, если устройство это поддерживает; иначе играет сигнал по умолчанию. |
| Очередь ожидания | Только при назначении «Внутри АТС». Ставить ли абонента в очередь, если номер занят. |
| Время ожидания | Сколько секунд ждать соединения перед отбоем. См. предупреждение ниже. |
| Символы прерывания | При их наборе ожидание прекращается, управление уходит по ветке «Переход, прервано». |
| Параметр команды | Только при назначении «В город». Свойство для служебных сценариев: передаёт пароль пользователя и подставляет его в статистику как инициатора звонка. |
| Запись разговора | «Согласно настройкам» по умолчанию — работает стандартный поиск правил записи. Также «Записывать» и «Не записывать» — безусловно. |
| Код отказа SIP в переменную | Код отказа, если компонент прерван неудачным SIP-ответом. |
Режимы назначения
| Режим | Что делает |
|---|---|
| В город / Внутри АТС | Явное указание, куда идёт номер. |
| Авто | Номер ищется во внутреннем номерном плане: нашёлся — переключение внутрь системы, нет — набор в город. |
| Возврат к оператору | Принудительно разрывает коммутацию абонента, кладёт трубку второму участнику и возвращает звонок на зарезервированного оператора, который ждёт обратного соединения в задаче. |
Ветки переходов
| Ветка | Когда срабатывает |
|---|---|
| Переход | Успешная коммутация. |
| Переход, занято | Номер занят; для внутренних — если очередь ожидания не активирована. |
| Переход, не отвечает | Истекло время ожидания. Сюда же уходит несуществующий номер. |
| Переход, отсутствует | Номер не обнаружен, нет ни одного активного абонента, нет внешней линии при наборе быстрого номера. |
| Переход, прервано | Абонент прервал ожидание набором символов прерывания. |
Переключение на внешний номер с указанием последовательности выделения линий
То же переключение в город или на внешнюю АТС, но линия выбирается по заданному вами списку. Свободная линия ищется по установленной последовательности, резервируется, в неё набирается номер, ответа ждут установленный интервал — по умолчанию 40 секунд, — а в канал играет выбранная мелодия.
Номер и его преобразование
| Свойство | Описание |
|---|---|
| Номер | Аргумент с номером. Может содержать команду — строку из DTMF-символов и командных спецсимволов w, q, z, {, }. При звонке через SIP-шлюз без регистрации можно указать URI вида sip:username@domain — тогда, независимо от настроек, звонок уйдёт по этому адресу. Для шлюзов межсерверного взаимодействия указание URI обязательно. |
| Тип команды | Без преобразования (по умолчанию) — номер уходит в линию как есть. Использовать команду направления — если линия взята из направления и в нём настроено преобразование, номер будет преобразован в команду по схеме направления. |
| Тип вызова | Обычный, экстренный или интерком. |
Значение «экстренный» уместно только в сценарии входа в АТС при наборе экстренного номера в явном виде — то есть без использования внутреннего номера с типом «экстренный». Во всех остальных случаях оставляйте «обычный»: вариации возможны, но их нужно тщательно продумывать, иначе разрывы будут незапланированными.
Выбор линий
| Способ | Как задаётся |
|---|---|
| Список объектов | Явно перечисляются существующие в системе линии и направления, задаётся последовательность поиска свободной, ненужные элементы отключаются. По каждому направлению перебираются все входящие в него линии. |
| Аргумент | Динамическое указание: код или GUID линии, направления, потока либо шлюза строкой. Все линии указанного объекта перебираются последовательно до первой свободной и готовой к вызову. Режим введён для работы со шлюзами с динамической регистрацией потоков и компонентом «Регистрация потока». |
| Свойство | Описание |
|---|---|
| Фильтровать по правам | Да / нет, по умолчанию «нет». Если обрабатывается канал пользователя системы, перечисленные линии дополнительно фильтруются по его правам выхода на внешние линии. |
| Идентификатор выбранной линии в переменную | GUID линии, через которую пошёл вызов. |
| CallerId | Подставляемый номер. При отсутствии или некорректном значении берётся номер по умолчанию для канала. |
| CallerName | Подставляемое имя абонента для IP-каналов. Без указания CallerId не применяется. |
| Время ожидания | Сколько секунд ждать соединения перед отбоем. |
| Мелодия ожидания | Выбирается так же, как файл в компоненте «Воспроизведение»: прикрепляется к сценарию либо берётся по сформированному пути на сервере. Играет до конца работы компонента. |
| Параметр команды | Для служебных сценариев: передаёт пароль пользователя и подставляет его в статистику как инициатора звонка. |
| Символы прерывания | При их наборе ожидание прекращается, управление уходит по ветке «Переход, прервано». |
| Запись разговора | «Согласно настройкам», «Записывать» или «Не записывать». |
| Код отказа SIP в переменную | Код отказа при переходе по ветке «Занято». Имеет смысл при звонках через внешние SIP-транки. Если переменная числовая, сохраняется только код. |
«Коммутировать сразу»: три режима
Это главное свойство компонента. По умолчанию — «нет, воспроизводить мелодию».
| Режим | Когда происходит коммутация | Что слышит абонент | Статистика и запись |
|---|---|---|---|
| Да | Сразу после нахождения линии и начала набора. Ответа внешнего абонента ждут уже в коммутации. | Всё, что приходит с внешней линии | Строка о разговоре появится даже при неответе. Запись включит КПВ-сигнал — весь звук с момента SIP-ответа 183 или 200 OK. |
| Нет, воспроизводить мелодию | Только после ответа абонента | Выбранную мелодию ожидания; она смолкает при получении 200 OK. Уже стартовавшее фоновое воспроизведение не прерывается. | По факту разговора |
| Нет, прослушивать медиа-поток | Только после ответа абонента | Сигнал с внешней линии, а не мелодию. Фоновое воспроизведение прерывается. | Коммутация и запись начинаются с момента 200 OK. |
В режиме «Да» возврат из компонента происходит сразу по ветке «Переход»; ветки «Занято» и «Не отвечает» в этом режиме недоступны. Сбой при наборе или коммутации уводит по ветке «Ошибка», отсутствие доступной линии — по ветке «Линий не найдено».
Столь же осмотрительно стоит задавать в компоненте последовательность линий из разных потоков, и тем более линий разного типа — E1, FXO, IP.
Ветки переходов
| Ветка | Когда срабатывает |
|---|---|
| Переход | Успешная коммутация. В режиме «коммутировать сразу» успехом считается момент соединения двух каналов — от внешнего абонента при этом ещё не получено никаких сигналов, КПВ, отбой или ответ придут позже. |
| Переход, занято | Номер занят. Недоступно в режиме «коммутировать сразу». |
| Переход, не отвечает | Истекло время ожидания. Недоступно в режиме «коммутировать сразу». |
| Переход, линия не найдена | Среди перечисленных нет доступной для вызова внешней линии. |
| Переход, прервано | Абонент прервал ожидание символами прерывания. |
| Переход, ошибка | Ошибка при проверке пароля, наборе номера, ожидании событий или коммутации каналов. |
Полный перечень возможных SIP-ответов приведён в спецификации протокола SIP — RFC 3261.