[[PageOutline(2-5,Содержание:)]] [[span(style=color: #FF0000, Статья находится в стадии создания! Представленная информация может быть неполной и/или неточной.)]] = Канальное окончание EM (интерфейс E&M) = Канальное окончание EM предназначено для работы с интерфейсами E&M. Интерфейс E&M имеет аналоговый (двух- или четырехпроводный) канал ТЧ для передачи речи и один (двух- или четырехпроводный) сигнальный канал. Плата VE-01 (VE-02) предполагает, что сигнальный канал интерфейса E&M использует СУВ A шины TDM. В конфигурации по умолчанию значение 1 СУВ A соответствует состоянию сигнального канала "on-hook", значение 0 - состоянию "off-hook". Однако конфигурационный параметр "Инверсия СУВ" позволяет изменить это соответствие на противоположное. == Описание работы канального окончания == Существует несколько вариантов протокола сигнализации E&M, в основном различающихся способом занятия канала. Канальное окончание EM поддерживает три варианта: "немедленный старт" (Immediate Start), "wink" и "задержка старта" (Delay Start). Выбор варианта протокола осуществляется конфигурационным параметром "Вариант сигнализации". Кроме этого в каждом из вариантов передача адресной информации (номера вызываемого абонента) может осуществляться декадно-импульсным или двухчастотным (DTMF) способами. Способ передачи адресной информации выбирается конфигурационным параметром "Набор номера DTMF". === Прием вызова со стороны сети IP === ==== Вариант "немедленный старт" ==== В варианте "немедленный старт" при получении INVITE со стороны сети IP канальное окончание EM занимает канал, переводя сигнальный канал в состояние "off-hook", и переходит в состояние `Dialing`. После этого канальное окончание выполняет задержку 150 мс и начинает передавать в канал номер вызываемого абонента. После окончания передачи номера окончание EM переходит в состояние `Dialed`, передает ответ "183 Session progress" в сторону вызывающего абонента и активирует медиапоток, благодаря чему вызывающий абонент может слышать акустические сигналы из канала ТЧ. При ответе вызываемого абонента СУВ A на входе канального окончания переходит в состояние "off-hook". обнаружив это, окончание EM передает ответ "200 OK" вызывающему абоненту и переходит в состояние `Connected`. Пример сценария вызова приведен на следующей диаграмме: {{{#!PlantUml @startuml title Cценарий вызова "немедленный старт" со стороны сети IP skinparam ParticipantPadding 80 skinparam sequenceMessageAlign center participant "Абонент А (IP)" as A participant "окончание EM" as B participant "Абонент Б (TDM)" as C A -> B: INVITE B -> A: 100 Trying B -> C: off-hook B -> C: набор номера B -> A: 183 Session Progress A <-[#0000ff]-> B: медиапоток note right of C: вызываемый абонент слышит звонок C o-[#gray]> A: // КПВ// ... note over C: абонент ответил на вызов C -> B: off-hook B -> A: 200 OK A -> B: ACK note over A, C: абоненты А и Б ведут разговор @enduml }}} ==== Вариант "wink" ==== Вариант сигнализации "wink" отличается от варианта "немедленный старт" тем, что в ответ на занятие канала удаленная сторона подтверждает занятие, передавая сигнал "wink" - короткий импульс (переход в состояние "off-hook" и обратно в "on-hook") в сигнальном канале длительностью 100...300 мс. Прием сигнала "wink" говорит о том, что удаленная сторона успешно распознала занятие канала и готова к приему адресной информации. При работе с вариантом сигнализации "wink" после занятия канала (перевода сигнального канала в состояние "off-hook") канальное окончание переходит в состояние `Seizure` и ожидает сигнал "wink". При получении сигнала "wink" канальное окончание переходит в состояние `Dialing` и начинает передачу номера. Если в течение 500 мс сигнал "wink" не принят, канальное окончание EM освобождает канал (переводит сигнальный канал в состояние "on-hook"), передает вызывающему абоненту ответ "480 Temporarily Unavailable" и переходит в исходное состояние (`Idle`). {{{#!PlantUml @startuml title Cценарий вызова "wink" со стороны сети IP skinparam ParticipantPadding 80 skinparam sequenceMessageAlign center participant "Абонент А (IP)" as A participant "окончание EM" as B participant "Абонент Б (TDM)" as C A -> B: INVITE B -> A: 100 Trying B -> C: off-hook C -> B: wink B -> C: набор номера B -> A: 183 Session Progress A <-[#0000ff]-> B: медиапоток note right of C: вызываемый абонент слышит звонок C o-[#gray]> A: // КПВ// ... note over C: абонент ответил на вызов C -> B: off-hook B -> A: 200 OK A -> B: ACK note over A, C: абоненты А и Б ведут разговор @enduml }}} Вариант сигнализации "wink" является более надежным по сравнению с вариантом "немедленный старт", так как позволяет обнаружить встречное занятие канала и/или неисправность канала (отсутствие прохождения сигналов). ==== Вариант "задержка старта" ==== Бывают ситуации, когда оборудование принимающей вызов стороны не успевает вовремя приготовиться к приему номера. Например в некоторых телефонных станциях из соображений экономии комплектов оборудования, принимающего номер, существенно меньше, чем абонентских комплектов. В таких станциях возможны ситуации, когда на момент занятия канала все комплекты приема номера уже заняты, и для продолжения процесса установки соединения необходимо ждать, когда один из них освободится. Вариант сигнализации "задержка старта" решает проблему задержки готовности к приему номера. В данном варианте сигнализации, если принимающая вызов сторона в момент занятия канала не готова к приему адресной информации, она переводит сигнальный канал в состояние "off-hook" и удерживает это состояние до готовности к приему номера. Когда принимающая сторона готова, сигнальный канал возвращается в состояние "on-hook", чем сигнализирует вызывающей стороне о возможности передавать номер. При работе с вариантом сигнализации "задержка старта" после занятия канала (перевода сигнального канала в состояние "off-hook") канальное окончание EM переходит в состояние `Seizure` и в течение 150 мс ожидает от удаленной стороны сигнал неготовности к приему номера. Если в течение этих 150 мс сигнальный канал на входе канального окончания оставался в состоянии "on-hook", окончание EM переходит в состояние `Dialing` и начинает передачу номера (в этом случае сценарий вызова ничем не отличается от варианта "немедленный старт"). Если же во время 150 мс ожидания от удаленной стороны принят сигнал "off-hook", канальное окончание EM ожидает возвращение сигнального канала в состояние "on-hook", после чего переходит в состояние `Dialing` и начинает передачу номера. Пример сценария с задержкой старта показан на следующей диаграмме: {{{#!PlantUml @startuml title Cценарий вызова "задержка старта" со стороны сети IP skinparam ParticipantPadding 80 skinparam sequenceMessageAlign center participant "Абонент А (IP)" as A participant "окончание EM" as B participant "Абонент Б (TDM)" as C A -> B: INVITE B -> A: 100 Trying B -> C: off-hook note right of C: станция не готова к приему номера C -> B: off-hook ... note right of C: станция готова к приему номера C -> B: on-hook B -> C: набор номера B -> A: 183 Session Progress A <-[#0000ff]-> B: медиапоток note right of C: вызываемый абонент слышит звонок C o-[#gray]> A: // КПВ// ... note over C: абонент ответил на вызов C -> B: off-hook B -> A: 200 OK A -> B: ACK note over A, C: абоненты А и Б ведут разговор @enduml }}}