Changes between Version 3 and Version 4 of EndpointFXO
- Timestamp:
- Nov 18, 2017, 10:21:33 PM (7 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
EndpointFXO
v3 v4 12 12 === Входящий вызов === 13 13 14 При появлении сигнала вызова в телефонной линии канальное окончание переходит из исходного состояния ( Idle) в состояние Ringing. В состоянии Ringing окончание FXO производит подсчет посылок вызова. Как только число полученных посылок вызова достигает значения, установленного конфигурационным параметром "Число звонков", выполняется вызов URI, заданного конфигурационным параметром "Вызывать URI", и канальное окончание переходит в состояние Calling.14 При появлении сигнала вызова в телефонной линии канальное окончание переходит из исходного состояния (`Idle`) в состояние `Ringing`. В состоянии `Ringing` окончание FXO производит подсчет посылок вызова. Как только число полученных посылок вызова достигает значения, установленного конфигурационным параметром "Число звонков", выполняется вызов URI, заданного конфигурационным параметром "Вызывать URI", и канальное окончание переходит в состояние `Calling`. 15 15 16 16 Окончание FXO принимает сообщения Caller ID, которые могут приходить из канала TDM как перед первой посылкой вызова, так и между посылками вызова. Поддерживается модуляция V.23. Поддерживается формат сообщений SDMF и MDMF. Если посылка Caller ID была принята, то при отправке INVITE в поле `From:` Display Name и username будут установлены в значения имени и номера вызывающего абонента соответственно. Если имя и/или номер вызывающего абонента определены не были, будут использованы имя из конфигурационного параметра "Реальное имя" и username из конфигурационного параметра "SIP URI". … … 20 20 Для приведенного выше случая приема посылки АОН можно установить параметру "Преобразование АОН" значение /^(.*)$/7342\1, в результате канальное окончание будет добавлять к принятому семизначному номеру префикс "7342". 21 21 22 В состояниях Ringing и Calling окончание FXO контролирует паузы между посылками вызова: в момент окончания каждой посылки вызова канальное окончание запускает таймер. Если в течение времени, заданного конфигурационным параметром "Таймаут звонка", не начинается новая посылка вызова, канальное окончание переходит в исходное состояние. Если к этому времени уже был послан вызов (INVITE) в сторону сети IP (канальное окончание в состоянии Calling), вызов снимается (передается сообщение CANCEL).22 В состояниях `Ringing` и `Calling` окончание FXO контролирует паузы между посылками вызова: в момент окончания каждой посылки вызова канальное окончание запускает таймер. Если в течение времени, заданного конфигурационным параметром "Таймаут звонка", не начинается новая посылка вызова, канальное окончание переходит в исходное состояние. Если к этому времени уже был послан вызов (INVITE) в сторону сети IP (канальное окончание в состоянии `Calling`), вызов снимается (передается сообщение CANCEL). 23 23 24 ''Примечение: если значением конфигурационного параметра "Вызывать URI" является пустая строка, вызов в направлении сети IP не передается, и конфигурационный параметр "Число звонков" игнорируется. В этом случае канальное окончание будет оставаться в состоянии Ringingдо тех пор, пока не прекратятся посылки вызова (пока не будет обнаружен "Таймаут звонка").''24 ''Примечение: если значением конфигурационного параметра "Вызывать URI" является пустая строка, вызов в направлении сети IP не передается, и конфигурационный параметр "Число звонков" игнорируется. В этом случае канальное окончание будет оставаться в состоянии `Ringing` до тех пор, пока не прекратятся посылки вызова (пока не будет обнаружен "Таймаут звонка").'' 25 25 26 При получении успешного ответа на вызов ("200 OK") со стороны сети IP канальное окончание FXO замыкает абонентский шлейф и переходит в состояние Connected.26 При получении успешного ответа на вызов ("200 OK") со стороны сети IP канальное окончание FXO замыкает абонентский шлейф и переходит в состояние `Connected`. 27 27 28 Если отправленный в направлении сети IP вызов отклонен (на INVITE получен ответ с кодом 4xx, 5xx или 6xx), канальное окончание FXO выполняет сброс вызова путем кратковременного (500 мс) замыкания абонентского шлейфа, после чего окончание FXO переходит в исходное состояние ( Idle).28 Если отправленный в направлении сети IP вызов отклонен (на INVITE получен ответ с кодом 4xx, 5xx или 6xx), канальное окончание FXO выполняет сброс вызова путем кратковременного (500 мс) замыкания абонентского шлейфа, после чего окончание FXO переходит в исходное состояние (`Idle`). 29 29 30 30 === Исходящий вызов === … … 32 32 Возможны два сценария исходящего занятия абонентской линии канальным окончанием FXO - занятие без набора номера и занятие с набором номера. 33 33 34 Если канальное окончание FXO, находящееся в исходном состоянии ( Idle), принимает вызов (INVITE), и вызываемый URI совпадает с URI канального окончания, выполняется занятие линии без набора номера: канальное окончание замыкает абонентский шлейф, передает ответ "200 OK" и переходит в состояние Connected.34 Если канальное окончание FXO, находящееся в исходном состоянии (`Idle`), принимает вызов (INVITE), и вызываемый URI совпадает с URI канального окончания, выполняется занятие линии без набора номера: канальное окончание замыкает абонентский шлейф, передает ответ "200 OK" и переходит в состояние `Connected`. 35 35 36 Если вызываемый URI не совпадает с URI канального окончания (вызов принят на втором проходе поиска совпадением имени с регулярным выражением, установленным конфигурационным параметром "Рег. выражение вызова"), канальное окончание замыкает абонентский шлейф, запускает таймер ожидания сигнала "Готовность" и переходит в состояние Connected. Если в течение времени, установленного конфигурационным параметром "Таймаут гудка", в канале TDM обнаружен сигнал "Готовность" (непрерывный гудок), в канал TDM передается номер вызываемого абонента. Передаваемый номер формируется из имени пользователя (username) вызываемого URI по следующим правилам:36 Если вызываемый URI не совпадает с URI канального окончания (вызов принят на втором проходе поиска совпадением имени с регулярным выражением, установленным конфигурационным параметром "Рег. выражение вызова"), канальное окончание замыкает абонентский шлейф, запускает таймер ожидания сигнала "Готовность" и переходит в состояние `Connected`. Если в течение времени, установленного конфигурационным параметром "Таймаут гудка", в канале TDM обнаружен сигнал "Готовность" (непрерывный гудок), в канал TDM передается номер вызываемого абонента. Передаваемый номер формируется из имени пользователя (username) вызываемого URI по следующим правилам: 37 37 * передача номера выполняется в порядке следования символов слева направо; 38 38 * символы '0'-'9', '*', '#', 'a'-'d', 'A'-'D' передаются в канал TDM соответствующими посылками DTMF; … … 43 43 После окончания набора номера вызывающему передается ответ "200 OK". 44 44 45 Если в течение времени, установленного конфигурационным параметром "Таймаут гудка", сигнал "Готовность" не обнаружен, канальное окончание размыкает абонентский шлейф, передает вызывающему ответ "603 Decline" и переходит в исходное состояние ( Idle).45 Если в течение времени, установленного конфигурационным параметром "Таймаут гудка", сигнал "Готовность" не обнаружен, канальное окончание размыкает абонентский шлейф, передает вызывающему ответ "603 Decline" и переходит в исходное состояние (`Idle`). 46 46 47 47 ''Примечание: при установке конфигурационного параметра "Игнорировать наличие гудка" канальное окончание FXO независимо от наличия или отсутствия в канале сигнала "Готовность" после замыкания шлейфа выдерживает паузу, установленную параметром "Таймаут гудка", после чего начинает набор номера.'' … … 51 51 Установленное соединение может быть разорвано как со стороны сети IP, так и со стороны канала TDM. 52 52 53 В случае отбоя со стороны сети IP (BYE) канальное окончание FXO размыкает абонентской шлейф и переходит в исходное состояние ( Idle).53 В случае отбоя со стороны сети IP (BYE) канальное окончание FXO размыкает абонентской шлейф и переходит в исходное состояние (`Idle`). 54 54 55 В процессе разговора канальное окончание FXO анализирует канал TDM на наличие в нем сигнала "Занято". Если значение конфигурационного параметра "Отбой после X циклов "Занято" больше нуля, то при обнаружении в канале сигнала "Занято" выполняется подсчет числа циклов (гудков) сигнала. При достижении числа циклов, установленного конфигурационным параметром, и если интервалы между циклами не превышают 1200 мс, выполняется отбой (в сторону сети IP посылается BYE, размыкается абонентский шлейф), и канальное окончание переходит в исходное состояние ( Idle).55 В процессе разговора канальное окончание FXO анализирует канал TDM на наличие в нем сигнала "Занято". Если значение конфигурационного параметра "Отбой после X циклов "Занято" больше нуля, то при обнаружении в канале сигнала "Занято" выполняется подсчет числа циклов (гудков) сигнала. При достижении числа циклов, установленного конфигурационным параметром, и если интервалы между циклами не превышают 1200 мс, выполняется отбой (в сторону сети IP посылается BYE, размыкается абонентский шлейф), и канальное окончание переходит в исходное состояние (`Idle`). 56 56 57 57 == Параметры конфигурации канального окончания == … … 63 63 Далее описаны параметры, специфичные для канального окончания FXO. Не указанные здесь конфигурационные параметры работают так же, как и во всех прочих существующих канальных окончаниях. См. EndpointParameters. 64 64 65 Таймаут звонка:: Параметр определяет максимальную длительность пауз между посылками вызова в абонентской линии в миллисекундах. Если при нахождении канального окончания в состояниях Ringing или Callingсигнал вызова отсутствует дольше заданного параметром времени, канальное окончание принимает решение о прекращении вызова (переходит в исходное состояние). Допустимые значения - от 1000 до 60000 мс. Значение по умолчанию - 5000 мс.65 Таймаут звонка:: Параметр определяет максимальную длительность пауз между посылками вызова в абонентской линии в миллисекундах. Если при нахождении канального окончания в состояниях `Ringing` или `Calling` сигнал вызова отсутствует дольше заданного параметром времени, канальное окончание принимает решение о прекращении вызова (переходит в исходное состояние). Допустимые значения - от 1000 до 60000 мс. Значение по умолчанию - 5000 мс. 66 66 67 67 Таймаут гудка:: Если параметр "Игнорировать наличие гудка" не включен, "Таймаут гудка" определяет время, в течение которого ожидается сигнал "Готовность" после исходящего занятия линии. Если параметр "Игнорировать наличие гудка" включен, "Таймаут гудка" устанавливает время между замыканием абонентского шлейфа и началом набора номера. Допустимые значения - от 1 до 60000 мс. Значение по умолчанию - 8000 мс. … … 79 79 Отбой после "X" циклов "Занято":: Параметр устанавливает длительность сигнала "занято", выраженная в циклах "гудок-пауза", после принятия которого канальное окончание разрывает текущее соединение. Допустимые значения - от 0 до 9. Значение 0 отключает отбой соединения по приему сигнала "Занято". Обратите внимание, что при уменьшении значения параметра увеличивается вероятность ложных положительных решений, когда сигнал разговора ошибочно принимается за сигнал "Занято", что приводит к обрыву соединения. С другой стороны, слишком большие значения могут приводить к ложным отрицательным результатам, когда сигнал "Занято" не детектируется (или детектируется очень долго) из-за спорадических помех и/или искажений сигнала в канале, что приводит к непроизводительному занятию линии. Значение по умолчанию - 3. 80 80 81 Вызывать URI:: Параметр определяет URI, которому направляется INVITE при получении входящего вызова из канала TDM. Значение параметра может быть задано с указанием либо имени пользователя и домена (например `john@192.168.5.24`), либо только имени пользователя (например `john`). В последнем случае в качестве домена при формировании вызываемого URI будет использован домен из конфигурационного параметра "SIP URI" канального окончания. Если значением параметра является пустая строка, при входящем вызове со стороны канала TDM вызов в направлении сети IP не передается, канальное окончание остается в состоянии Ringingдо прекращения посылок вызова в абонентской линии. Значение по умолчанию - пустая строка.81 Вызывать URI:: Параметр определяет URI, которому направляется INVITE при получении входящего вызова из канала TDM. Значение параметра может быть задано с указанием либо имени пользователя и домена (например `john@192.168.5.24`), либо только имени пользователя (например `john`). В последнем случае в качестве домена при формировании вызываемого URI будет использован домен из конфигурационного параметра "SIP URI" канального окончания. Если значением параметра является пустая строка, при входящем вызове со стороны канала TDM вызов в направлении сети IP не передается, канальное окончание остается в состоянии `Ringing` до прекращения посылок вызова в абонентской линии. Значение по умолчанию - пустая строка. 82 82 83 83 == Состояния канального окончания ==