142 | | 1. Абонент А поднимает телефонную трубку, слышит сигнал готовности. |
143 | | 1. Абонент А набирает номер оператора. |
144 | | 1. Оператор слышит звонок, абонент А слышит контроль посылки вызова (КПВ). |
145 | | 1. Оператор снимает трубку, абонент А сообщает оператору о желании поговорить с абонентом Б. |
146 | | 1. Оператор нажимает клавишу Flash и слышит сигнал готовности. |
147 | | 1. Оператор набирает номер абонента Б. |
148 | | 1. Абонент Б слышит звонок, оператор слышит КПВ. |
149 | | 1. Абонент Б снимает трубку, оператор сообщает ему, что с ним хочет поговорить абонент А. |
150 | | 1. Оператор кладет трубку, происходит передача вызова абонента А абоненту Б, абоненты А и Б ведут разговор. |
151 | | |
152 | | ''Примечание: возможно выполнение передачи вызова не дожидаясь ответа второго абонента (пункт 8 приведенного выше сценария не является обязательным). Если оператор, услышав КПВ, сразу положит трубку, абоненту А будет передано соединение с абонентом Б в предответном состоянии, и абонент А будет слышать КПВ до ответа абонента Б. Успешность передачи вызова в этом случае зависит от корректности реализации такого сценария юзер-агентом абонента Б.'' |
| 146 | {{{#!PlantUml |
| 147 | @startuml |
| 148 | skinparam ParticipantPadding 80 |
| 149 | skinparam sequenceMessageAlign center |
| 150 | title Сценарий передачи вызова опусканием трубки |
| 151 | participant "Абонент А" as A |
| 152 | participant "Оператор" as O |
| 153 | participant "Абонент Б" as B |
| 154 | |
| 155 | note over A |
| 156 | Абонент А поднимает трубку, |
| 157 | слышит сигнал "Готовность" |
| 158 | end note |
| 159 | note over A |
| 160 | Абонент А набирает |
| 161 | номер оператора |
| 162 | end note |
| 163 | A -> O: INVITE |
| 164 | note right of O: Оператор слышит звонок |
| 165 | O -> A: 180 Ringing |
| 166 | note left: Абонент А слышит КПВ |
| 167 | note over O: Оператор снимает трубку |
| 168 | O -> A: 200 OK |
| 169 | A <-[#0000ff]-> O: <font color=blue>//медиапоток// |
| 170 | A -> O: ACK |
| 171 | note over A, O: Абонент А просит оператора соединить с абонентом Б |
| 172 | |
| 173 | note over O |
| 174 | Оператор нажимает Flash, |
| 175 | слышит сигнал готовности |
| 176 | end note |
| 177 | O -> A: INVITE <font color=#ff3030>a=inactive |
| 178 | A <-[#0000ff]-x O: <font color=blue>//нет мадиапотока// |
| 179 | A -> O: 200 OK <font color=#ff3030>a=inactive |
| 180 | O -> A: ACK |
| 181 | note over O |
| 182 | Оператор набирает |
| 183 | номер абонента Б |
| 184 | end note |
| 185 | O -> B: INVITE |
| 186 | B -> O: 180 Ringing |
| 187 | note left of O: Оператор слышит КПВ |
| 188 | note right: Абонент Б слышит звонок |
| 189 | note over B: Абонент Б снимает трубку |
| 190 | B -> O: 200 OK |
| 191 | O <-[#0000ff]-> B: <font color=blue>//медиапоток// |
| 192 | O -> B: ACK |
| 193 | note over O, B: Оператор сообщает абоненту Б, что с ним хочет говорить абонент А |
| 194 | note over O: Оператор кладет трубку |
| 195 | O -> B: REFER (to operator) |
| 196 | B -> O: 202 Accepted |
| 197 | B -> O: NOTIFY (100 Trying) |
| 198 | O -> B: 200 OK |
| 199 | B -> A: INVITE (Replaces: Operator) |
| 200 | A -> B: 200 OK |
| 201 | A <-[#0000ff]-> B: <font color=blue>//медиапоток// |
| 202 | B -> A: ACK |
| 203 | A -> O: BYE |
| 204 | O -> A: 200 OK |
| 205 | B -> O: NOTIFY (200 OK) |
| 206 | O -> B: 200 OK |
| 207 | O -> B: BYE |
| 208 | B -> O: 200 OK |
| 209 | note over A, B: Абонент А и абонент Б ведут разговор |
| 210 | @enduml |
| 211 | }}} |
| 212 | |
| 213 | ''Примечание: возможно выполнение передачи вызова не дожидаясь ответа второго абонента. Если оператор, услышав КПВ, сразу положит трубку, абоненту А будет передано соединение с абонентом Б в предответном состоянии, и абонент А будет слышать КПВ до ответа абонента Б. Успешность передачи вызова в этом случае зависит от корректности реализации такого сценария юзер-агентом абонента Б.'' |