Рисунок 1.6.5.3.1 -
Рисунок. Диаграмма работы terminating кластера Adapter (Adapter Б).
Описание действий, выполняемых в функциональных блоках диаграммы:
Обработка 1.
В кластере Adapter Б получено сообщение о инициации вызова SetupReq. Выполняются следующие операции:
- анализ корректности и целостности полученного сообщения;
- проверка того, существует или нет активный вызов для интерфейса абонента Б:
...
- если вызов существует, то проверяется наличие ограничений на количество одновременных вызовов и если количество одновременных вызовов достигло установленного максимального уровня, производится отказ в обслуживании вызова, формируется и подготавливается к отправке в кластер Core сообщение о разъединении "ReleaseInd", обслуживание вызова прекращается;
- если ограничений на обработку вызова нет, то формируется и подготавливается к отправке в кластер Core сообщение "SetupReqAck";
- согласно правил целевого протокола, на основании данных полученных в "SetupReq", формируется и отправляется абоненту Б сообщение "Seize";
- процесс на ноде кластера Adapter Б переходит в состояние ожидания ответного сообщения от абонента/транка Б (STATE1);
- активируется таймер ожидания ответного сообщения от абонента Б (TResponse).
Обработка 2.
В состоянии ожидания ответного сообщения от абонента/транка Б получено промежуточное сообщение "Progress":
- анализ корректности и целостности полученного сообщения, извлечение параметров;
- формируется и подготавливается к отправке в кластер Core сообщение "CallProgressInd" с данными заполненными на базе сообщения "Progress";
- активируется таймер ожидания ответного сообщения от абонента Б (TResponse);
- процесс обработки вызова остается в том же логическом состоянии (STATE1).
Обработка 3.
В состоянии ожидания ответного сообщения от абонента/транка Б получено промежуточное сообщение "Progress" с индикатором "Alerting".:
- анализ корректности и целостности полученного сообщения, извлечение параметров;
- формируется и подготавливается к отправке в кластер Core сообщение "CallProgressInd" с данными заполненными на базе сообщения "Progress", устанавливается индикатор "BPtyAlerting";
- активируется таймер ожидания ответа абонента Б (TAnswer);
- процесс обработки вызова переводится в состояние ожидания ответа абонента Б (STATE2).
Обработка 4.
В состоянии ожидания ответного сообщения от абонента/транка Б (STATE1) или в состоянии ожидания ответа абонента Б (STATE2) получено сообщение об ответе абонента Б (Answer). Выполняется:
- анализ корректности и целостности полученного сообщения, извлечение параметров;
- формируется и подготавливается к отправке в кластер Core сообщение "SetupResp" с данными, заполненными на базе сообщения "Answer";
- активируется защитный таймер ограничения максимальной продолжительности разговора (TConverstaion);
- процесс обработки вызова переводится в состояние активного вызова (STATE3).
Обработка 5.
Получено сообщение о разъединении с кластера Adapter А:
- анализ корректности и целостности полученного сообщения;
- формируется и подготавливается к отправке абоненту/транк Б сообщение о разъединении (Release);
- очищаются ресурсы, занятые процессом обработки вызова.
Обработка 6.
Получено сообщение о разъединении от абонента/транка Б:
- анализ корректности и целостности полученного сообщения;
- формируется и подготавливается к отправке в кластер Core сообщение о разъединении (ReleaseInd);
- очищаются ресурсы, занятые процессом обработки вызова.
Обработка 7.
В состоянии ожидания ответа абонента Б получено промежуточное сообщение "Progress":
- анализ корректности и целостности полученного сообщения, извлечение параметров;
- формируется и подготавливается к отправке в кластер Core сообщение "CallProgressInd" с данными, заполненными на базе сообщения "Progress";
- процесс обработки остается в логическом состоянии ожидания ответа абонента Б (STATE2).