| | 114 | При получении сообщения INVITE канальное окончание R2DTMF занимает канал, передавая линейный сигнал "Занятие", переходит в состояние `Seizure` и ожидает линейный сигнал "Подтверждение занятия" от удаленной стороны. |
| | 115 | |
| | 116 | При получении сигнала "Подтверждение занятия" канальное окончание R2DTMF переходит в состояние `Dialing` и начинает передавать цифры номера вызываемого абонента. Передаваемый номер формируется из имени пользователя (username) вызываемого URI по следующим правилам: |
| | 117 | * передача номера выполняется в порядке следования символов слева направо; |
| | 118 | * символы '0'-'9', '*', '#', 'a'-'d', 'A'-'D' передаются в канал TDM соответствующими посылками DTMF; |
| | 119 | * остальные символы username игнорируются. |
| | 120 | |
| | 121 | После того как канальное окончание R2DTMF передало все цифры номера вызываемого абонента, оно передает вызывающей стороне ответ "183 Session Progress", содержащий ответ SDP, активирует медиапоток и переходит в состояние `Dialed`, ожидая линейный сигнал "Ответ" либо "Clear Back". |
| | 122 | |
| | 123 | При получении линейного сигнала "Ответ" в состояниях `Dialing` или `Dialed` канальное окончание R2DTMF передает вызывающей стороне ответ "200 OK" и переходит в состояние `Connected`. |
| | 124 | |
| | 125 | Пример исходящего вызова: |
| | 126 | |
| | 127 | {{{#!plantuml |
| | 128 | @startuml |
| | 129 | skinparam ParticipantPadding 80 |
| | 130 | skinparam sequenceMessageAlign center |
| | 131 | |
| | 132 | participant "Вызывающий абонент" as A |
| | 133 | participant "Окончание R2DTMF" as R2 |
| | 134 | participant АТС |
| | 135 | |
| | 136 | АТС <-[#red]> R2: <font color=red>исходное состояние (10) |
| | 137 | ... |
| | 138 | A --> R2: INVITE sip:12345@domain.org |
| | 139 | R2 --> A: 100 Trying |
| | 140 | R2 -[#red]> АТС: <font color=red>Занятие (00) |
| | 141 | АТС -[#red]> R2: <font color=red>Подтверждение занятия (11) |
| | 142 | R2 -> АТС: DTMF "1" |
| | 143 | R2 -> АТС: DTMF "2" |
| | 144 | R2 -> АТС: DTMF "3" |
| | 145 | R2 -> АТС: DTMF "4" |
| | 146 | R2 -> АТС: DTMF "5" |
| | 147 | R2 --> A: 183 Session Progress |
| | 148 | A <-[#blue]-> R2: <font color=blue>//медиапоток// |
| | 149 | note right of АТС: Вызываемый абонент слышит звонок |
| | 150 | АТС o-[#gray]> A: <font color=gray>КПВ |
| | 151 | ... |
| | 152 | note right of АТС: абонент ответил на вызов |
| | 153 | АТС -[#red]> R2: <font color=red>Ответ (01) |
| | 154 | R2 --> A: 200 OK |
| | 155 | A --> R2: ACK |
| | 156 | note over АТС, A: абоненты ведут разговор |
| | 157 | |
| | 158 | @enduml |
| | 159 | }}} |
| | 160 | |