Neels Hofmeyr | 3b5de1b | 2018-06-16 16:08:55 +0200 | [diff] [blame^] | 1 | digraph G { |
| 2 | rankdir=TB |
| 3 | labelloc=t; label="MGW Endpoint FSM" |
| 4 | |
| 5 | gscon_ensure_mgw_endpoint [label="gscon_ensure_mgw_endpoint()",shape="box"] |
| 6 | UNUSED |
| 7 | WAIT_MGW_RESPONSE |
| 8 | IN_USE |
| 9 | terminate [shape=octagon] |
| 10 | mgcp [label="mgcp client FSM\n(libosmo-mgcp-client)",shape=box3d] |
| 11 | notify [label="notify target FI",shape=box3d] |
| 12 | gscon [label="parent FI\n(gscon)",shape=box3d] |
| 13 | |
| 14 | gscon_ensure_mgw_endpoint -> UNUSED |
| 15 | UNUSED -> WAIT_MGW_RESPONSE [label="first\nmgw_endpoint_ci_request(CRCX)"] |
| 16 | WAIT_MGW_RESPONSE -> mgcp [label="mgcp_conn_create()\nmgcp_conn_modify()\nmgcp_conn_delete()",style=dotted] |
| 17 | mgcp -> WAIT_MGW_RESPONSE [label="CI[i] event",style=dotted] |
| 18 | WAIT_MGW_RESPONSE -> IN_USE |
| 19 | IN_USE -> notify [label="notify event for\nindividual CI request",style=dotted] |
| 20 | IN_USE -> WAIT_MGW_RESPONSE [label="additional\nmgw_endpoint_ci_request()\nCRCX,MDCX,DLCX"] |
| 21 | |
| 22 | WAIT_MGW_RESPONSE -> terminate [label="all CI DLCX'd"] |
| 23 | terminate -> gscon [label="GSCON_EV_FORGET_MGW_ENDPOINT",style=dotted] |
| 24 | } |