| 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 | |