~aleteoryx/muditaos

ref: b95894a8abc10cddf0b58dda4b2569b01eec0d7e muditaos/module-services/service-cellular/doc/connection_manager.svg -rw-r--r-- 24.1 KiB
b95894a8 — Lefucjusz [MOS-1064] Fix no input language selected for French/Spanish 1 year, 9 months ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="1442px" preserveAspectRatio="none" style="width:890px;height:1442px;background:#F0F0F0;" version="1.1" viewBox="0 0 890 1442" width="890px" zoomAndPan="magnify"><defs><filter height="300%" id="fr4ju0uxlqsyz" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.0"/><feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/><feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="91" x2="91" y1="38.2969" y2="1401.7422"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="429.5" x2="429.5" y1="38.2969" y2="1401.7422"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="785.5" x2="785.5" y1="38.2969" y2="1401.7422"/><rect fill="#FEFECE" filter="url(#fr4ju0uxlqsyz)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="163" x="8" y="3"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="145" x="15" y="22.9951">Connection manager</text><rect fill="#FEFECE" filter="url(#fr4ju0uxlqsyz)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="163" x="8" y="1400.7422"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="145" x="15" y="1420.7373">Connection manager</text><rect fill="#FEFECE" filter="url(#fr4ju0uxlqsyz)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="116" x="369.5" y="3"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="102" x="376.5" y="22.9951">Service cellular</text><rect fill="#FEFECE" filter="url(#fr4ju0uxlqsyz)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="116" x="369.5" y="1400.7422"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="102" x="376.5" y="1420.7373">Service cellular</text><rect fill="#FEFECE" filter="url(#fr4ju0uxlqsyz)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="172" x="697.5" y="3"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="154" x="704.5" y="22.9951">Phone mode observer</text><rect fill="#FEFECE" filter="url(#fr4ju0uxlqsyz)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="172" x="697.5" y="1400.7422"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="154" x="704.5" y="1420.7373">Phone mode observer</text><rect fill="#EEEEEE" filter="url(#fr4ju0uxlqsyz)" height="3" style="stroke: #EEEEEE; stroke-width: 1.0;" width="875.5" x="3" y="68.8633"/><line style="stroke: #000000; stroke-width: 1.0;" x1="3" x2="878.5" y1="68.8633" y2="68.8633"/><line style="stroke: #000000; stroke-width: 1.0;" x1="3" x2="878.5" y1="71.8633" y2="71.8633"/><rect fill="#EEEEEE" filter="url(#fr4ju0uxlqsyz)" height="23.1328" style="stroke: #000000; stroke-width: 2.0;" width="311" x="285.25" y="58.2969"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="297" x="291.25" y="74.3638">Phone is connected to the GSM network</text><polygon fill="#A80036" points="440.5,108.5625,430.5,112.5625,440.5,116.5625,436.5,112.5625" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="434.5" x2="784.5" y1="112.5625" y2="112.5625"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="323" x="446.5" y="107.4966">Phone mode change to Connected/ Do not Disturb</text><polygon fill="#A80036" points="102.5,137.6953,92.5,141.6953,102.5,145.6953,98.5,141.6953" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="96.5" x2="428.5" y1="141.6953" y2="141.6953"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="101" x="108.5" y="136.6294">onPhoneMode()</text><polygon fill="#A80036" points="417.5,166.8281,427.5,170.8281,417.5,174.8281,421.5,170.8281" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="91.5" x2="423.5" y1="170.8281" y2="170.8281"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="253" x="98.5" y="165.7622">isConnectedToTheNetwork() AT+CFUN?</text><polygon fill="#A80036" points="102.5,195.9609,92.5,199.9609,102.5,203.9609,98.5,199.9609" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="96.5" x2="428.5" y1="199.9609" y2="199.9609"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="63" x="108.5" y="194.895">+CFUN: 1</text><polygon fill="#A80036" points="440.5,225.0938,430.5,229.0938,440.5,233.0938,436.5,229.0938" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="434.5" x2="784.5" y1="229.0938" y2="229.0938"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="292" x="446.5" y="224.0278">Phone mode change to Offline / Message only</text><polygon fill="#A80036" points="102.5,254.2266,92.5,258.2266,102.5,262.2266,98.5,258.2266" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="96.5" x2="428.5" y1="258.2266" y2="258.2266"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="101" x="108.5" y="253.1606">onPhoneMode()</text><polygon fill="#A80036" points="417.5,283.3594,427.5,287.3594,417.5,291.3594,421.5,287.3594" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="91.5" x2="423.5" y1="287.3594" y2="287.3594"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="253" x="98.5" y="282.2935">isConnectedToTheNetwork() AT+CFUN?</text><polygon fill="#A80036" points="102.5,312.4922,92.5,316.4922,102.5,320.4922,98.5,316.4922" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="96.5" x2="428.5" y1="316.4922" y2="316.4922"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="63" x="108.5" y="311.4263">+CFUN: 1</text><polygon fill="#A80036" points="417.5,341.625,427.5,345.625,417.5,349.625,421.5,345.625" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="91.5" x2="423.5" y1="345.625" y2="345.625"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="136" x="98.5" y="340.5591">hangUpOngoingCall()</text><polygon fill="#A80036" points="417.5,370.7578,427.5,374.7578,417.5,378.7578,421.5,374.7578" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="91.5" x2="423.5" y1="374.7578" y2="374.7578"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="250" x="98.5" y="369.6919">disconnectFromNetwork() AT+CFUN=4</text><polygon fill="#A80036" points="417.5,399.8906,427.5,403.8906,417.5,407.8906,421.5,403.8906" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="91.5" x2="423.5" y1="403.8906" y2="403.8906"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="148" x="98.5" y="398.8247">clearNetworkIndicator()</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="91.5" x2="133.5" y1="433.0234" y2="433.0234"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="133.5" x2="133.5" y1="433.0234" y2="446.0234"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="92.5" x2="133.5" y1="446.0234" y2="446.0234"/><polygon fill="#A80036" points="102.5,442.0234,92.5,446.0234,102.5,450.0234,98.5,446.0234" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="243" x="98.5" y="427.9575">handle switch to selected oflline mode</text><rect fill="#EEEEEE" filter="url(#fr4ju0uxlqsyz)" height="3" style="stroke: #EEEEEE; stroke-width: 1.0;" width="875.5" x="3" y="474.5898"/><line style="stroke: #000000; stroke-width: 1.0;" x1="3" x2="878.5" y1="474.5898" y2="474.5898"/><line style="stroke: #000000; stroke-width: 1.0;" x1="3" x2="878.5" y1="477.5898" y2="477.5898"/><rect fill="#EEEEEE" filter="url(#fr4ju0uxlqsyz)" height="23.1328" style="stroke: #000000; stroke-width: 2.0;" width="340" x="270.75" y="464.0234"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="326" x="276.75" y="480.0903">Phone is not connected to the GSM network</text><polygon fill="#A80036" points="440.5,514.2891,430.5,518.2891,440.5,522.2891,436.5,518.2891" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="434.5" x2="784.5" y1="518.2891" y2="518.2891"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="332" x="446.5" y="513.2231">Phone mode change to CConnected/ Do not Disturb</text><polygon fill="#A80036" points="102.5,543.4219,92.5,547.4219,102.5,551.4219,98.5,547.4219" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="96.5" x2="428.5" y1="547.4219" y2="547.4219"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="101" x="108.5" y="542.356">onPhoneMode()</text><polygon fill="#A80036" points="417.5,572.5547,427.5,576.5547,417.5,580.5547,421.5,576.5547" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="91.5" x2="423.5" y1="576.5547" y2="576.5547"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="253" x="98.5" y="571.4888">isConnectedToTheNetwork() AT+CFUN?</text><polygon fill="#A80036" points="102.5,601.6875,92.5,605.6875,102.5,609.6875,98.5,605.6875" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="96.5" x2="428.5" y1="605.6875" y2="605.6875"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="63" x="108.5" y="600.6216">+CFUN: 4</text><polygon fill="#A80036" points="417.5,630.8203,427.5,634.8203,417.5,638.8203,421.5,634.8203" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="91.5" x2="423.5" y1="634.8203" y2="634.8203"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="237" x="98.5" y="629.7544">connectToTheNetwork() AT+CFUN=1</text><polygon fill="#A80036" points="440.5,659.9531,430.5,663.9531,440.5,667.9531,436.5,663.9531" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="434.5" x2="784.5" y1="663.9531" y2="663.9531"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="292" x="446.5" y="658.8872">Phone mode change to Offline / Message only</text><polygon fill="#A80036" points="102.5,689.0859,92.5,693.0859,102.5,697.0859,98.5,693.0859" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="96.5" x2="428.5" y1="693.0859" y2="693.0859"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="101" x="108.5" y="688.02">onPhoneMode()</text><polygon fill="#A80036" points="417.5,718.2188,427.5,722.2188,417.5,726.2188,421.5,722.2188" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="91.5" x2="423.5" y1="722.2188" y2="722.2188"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="253" x="98.5" y="717.1528">isConnectedToTheNetwork() AT+CFUN?</text><polygon fill="#A80036" points="102.5,747.3516,92.5,751.3516,102.5,755.3516,98.5,751.3516" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="96.5" x2="428.5" y1="751.3516" y2="751.3516"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="63" x="108.5" y="746.2856">+CFUN: 4</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="91.5" x2="133.5" y1="780.4844" y2="780.4844"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="133.5" x2="133.5" y1="780.4844" y2="793.4844"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="92.5" x2="133.5" y1="793.4844" y2="793.4844"/><polygon fill="#A80036" points="102.5,789.4844,92.5,793.4844,102.5,797.4844,98.5,793.4844" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="243" x="98.5" y="775.4185">handle switch to selected oflline mode</text><rect fill="#EEEEEE" filter="url(#fr4ju0uxlqsyz)" height="3" style="stroke: #EEEEEE; stroke-width: 1.0;" width="875.5" x="3" y="822.0508"/><line style="stroke: #000000; stroke-width: 1.0;" x1="3" x2="878.5" y1="822.0508" y2="822.0508"/><line style="stroke: #000000; stroke-width: 1.0;" x1="3" x2="878.5" y1="825.0508" y2="825.0508"/><rect fill="#EEEEEE" filter="url(#fr4ju0uxlqsyz)" height="23.1328" style="stroke: #000000; stroke-width: 2.0;" width="301" x="290.25" y="811.4844"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="287" x="296.25" y="827.5513">handle switch to selected oflline mode</text><rect fill="#EEEEEE" filter="url(#fr4ju0uxlqsyz)" height="3" style="stroke: #EEEEEE; stroke-width: 1.0;" width="875.5" x="3" y="865.1836"/><line style="stroke: #000000; stroke-width: 1.0;" x1="3" x2="878.5" y1="865.1836" y2="865.1836"/><line style="stroke: #000000; stroke-width: 1.0;" x1="3" x2="878.5" y1="868.1836" y2="868.1836"/><rect fill="#EEEEEE" filter="url(#fr4ju0uxlqsyz)" height="23.1328" style="stroke: #000000; stroke-width: 2.0;" width="280" x="300.75" y="854.6172"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="266" x="306.75" y="870.6841">handleModeChangeToOfflineMode()</text><polygon fill="#A80036" points="417.5,904.8828,427.5,908.8828,417.5,912.8828,421.5,908.8828" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="91.5" x2="423.5" y1="908.8828" y2="908.8828"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="167" x="98.5" y="903.8169">isConnectionTimerActive()</text><polygon fill="#A80036" points="102.5,934.0156,92.5,938.0156,102.5,942.0156,98.5,938.0156" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="96.5" x2="428.5" y1="938.0156" y2="938.0156"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="90" x="108.5" y="932.9497">timer is active</text><polygon fill="#A80036" points="417.5,963.1484,427.5,967.1484,417.5,971.1484,421.5,967.1484" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="91.5" x2="423.5" y1="967.1484" y2="967.1484"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="146" x="98.5" y="962.0825">stopConnectionTimer()</text><rect fill="#EEEEEE" filter="url(#fr4ju0uxlqsyz)" height="3" style="stroke: #EEEEEE; stroke-width: 1.0;" width="875.5" x="3" y="995.7148"/><line style="stroke: #000000; stroke-width: 1.0;" x1="3" x2="878.5" y1="995.7148" y2="995.7148"/><line style="stroke: #000000; stroke-width: 1.0;" x1="3" x2="878.5" y1="998.7148" y2="998.7148"/><rect fill="#EEEEEE" filter="url(#fr4ju0uxlqsyz)" height="23.1328" style="stroke: #000000; stroke-width: 2.0;" width="280" x="300.75" y="985.1484"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="266" x="306.75" y="1001.2153">handleModeChangeToOfflineMode()</text><polygon fill="#A80036" points="417.5,1035.4141,427.5,1039.4141,417.5,1043.4141,421.5,1039.4141" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="91.5" x2="423.5" y1="1039.4141" y2="1039.4141"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="167" x="98.5" y="1034.3481">isConnectionTimerActive()</text><polygon fill="#A80036" points="102.5,1064.5469,92.5,1068.5469,102.5,1072.5469,98.5,1068.5469" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="96.5" x2="428.5" y1="1068.5469" y2="1068.5469"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="115" x="108.5" y="1063.481">timer is not active</text><polygon fill="#A80036" points="417.5,1093.6797,427.5,1097.6797,417.5,1101.6797,421.5,1097.6797" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="91.5" x2="423.5" y1="1097.6797" y2="1097.6797"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="139" x="98.5" y="1092.6138">startonnectionTimer()</text><rect fill="#EEEEEE" filter="url(#fr4ju0uxlqsyz)" height="3" style="stroke: #EEEEEE; stroke-width: 1.0;" width="875.5" x="3" y="1126.2461"/><line style="stroke: #000000; stroke-width: 1.0;" x1="3" x2="878.5" y1="1126.2461" y2="1126.2461"/><line style="stroke: #000000; stroke-width: 1.0;" x1="3" x2="878.5" y1="1129.2461" y2="1129.2461"/><rect fill="#EEEEEE" filter="url(#fr4ju0uxlqsyz)" height="23.1328" style="stroke: #000000; stroke-width: 2.0;" width="346" x="267.75" y="1115.6797"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="332" x="273.75" y="1131.7466">Connection manager in Messages only mode</text><polygon fill="#A80036" points="102.5,1165.9453,92.5,1169.9453,102.5,1173.9453,98.5,1169.9453" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="96.5" x2="428.5" y1="1169.9453" y2="1169.9453"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="196" x="108.5" y="1164.8794">service timer tick (60 seconds)</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="91.5" x2="133.5" y1="1199.0781" y2="1199.0781"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="133.5" x2="133.5" y1="1199.0781" y2="1212.0781"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="92.5" x2="133.5" y1="1212.0781" y2="1212.0781"/><polygon fill="#A80036" points="102.5,1208.0781,92.5,1212.0781,102.5,1216.0781,98.5,1212.0781" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="324" x="98.5" y="1194.0122">offline period not expired, online period not expired</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="91.5" x2="133.5" y1="1241.2109" y2="1241.2109"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="133.5" x2="133.5" y1="1241.2109" y2="1254.2109"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="92.5" x2="133.5" y1="1254.2109" y2="1254.2109"/><polygon fill="#A80036" points="102.5,1250.2109,92.5,1254.2109,102.5,1258.2109,98.5,1254.2109" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="210" x="98.5" y="1236.145">offline period expired onTimTick()</text><polygon fill="#A80036" points="417.5,1279.3438,427.5,1283.3438,417.5,1287.3438,421.5,1283.3438" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="91.5" x2="423.5" y1="1283.3438" y2="1283.3438"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="128" x="98.5" y="1278.2778">connectToNetwork()</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="91.5" x2="133.5" y1="1312.4766" y2="1312.4766"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="133.5" x2="133.5" y1="1312.4766" y2="1325.4766"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="92.5" x2="133.5" y1="1325.4766" y2="1325.4766"/><polygon fill="#A80036" points="102.5,1321.4766,92.5,1325.4766,102.5,1329.4766,98.5,1325.4766" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="210" x="98.5" y="1307.4106">online period expired onTimTick()</text><polygon fill="#A80036" points="417.5,1350.6094,427.5,1354.6094,417.5,1358.6094,421.5,1354.6094" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="91.5" x2="423.5" y1="1354.6094" y2="1354.6094"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="164" x="98.5" y="1349.5435">disconnectFromNetwork()</text><polygon fill="#A80036" points="417.5,1379.7422,427.5,1383.7422,417.5,1387.7422,421.5,1383.7422" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="91.5" x2="423.5" y1="1383.7422" y2="1383.7422"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="148" x="98.5" y="1378.6763">clearNetworkIndicator()</text><!--MD5=[7b7194bf9c1ccad1d1fe508351e71d48]
@startuml
skinparam BackgroundColor F0F0F0

participant "Connection manager " as manager
participant "Service cellular" as cellular
participant "Phone mode observer " as mode

== Phone is connected to the GSM network==

mode ->cellular : Phone mode change to Connected/ Do not Disturb
cellular -> manager : onPhoneMode()
manager -> cellular :isConnectedToTheNetwork() AT+CFUN?
cellular -> manager : +CFUN: 1

mode ->cellular : Phone mode change to Offline / Message only
cellular -> manager : onPhoneMode()
manager -> cellular :isConnectedToTheNetwork() AT+CFUN?
cellular -> manager : +CFUN: 1
manager -> cellular :hangUpOngoingCall()
manager -> cellular :disconnectFromNetwork() AT+CFUN=4
manager -> cellular :clearNetworkIndicator()
manager->manager : handle switch to selected oflline mode

== Phone is not connected to the GSM network==

mode ->cellular : Phone mode change to CConnected/ Do not Disturb
cellular -> manager : onPhoneMode()
manager -> cellular :isConnectedToTheNetwork() AT+CFUN?
cellular -> manager : +CFUN: 4
manager -> cellular :connectToTheNetwork() AT+CFUN=1

mode ->cellular : Phone mode change to Offline / Message only
cellular -> manager : onPhoneMode()
manager -> cellular :isConnectedToTheNetwork() AT+CFUN?
cellular -> manager : +CFUN: 4
manager->manager : handle switch to selected oflline mode

==handle switch to selected oflline mode==

==handleModeChangeToOfflineMode()==
manager -> cellular : isConnectionTimerActive()
cellular -> manager : timer is active
manager -> cellular : stopConnectionTimer()

==handleModeChangeToOfflineMode()==
manager -> cellular : isConnectionTimerActive()
cellular -> manager : timer is not active
manager -> cellular : startonnectionTimer()

==Connection manager in Messages only mode==
cellular -> manager : service timer tick (60 seconds)
manager -> manager : offline period not expired, online period not expired

manager -> manager : offline period expired onTimTick()
manager -> cellular : connectToNetwork()

manager -> manager : online period expired onTimTick()
manager -> cellular : disconnectFromNetwork()
manager -> cellular :clearNetworkIndicator()
@enduml

PlantUML version 1.2020.02(Sun Mar 01 05:22:07 EST 2020)
(GPL source distribution)
Java Runtime: OpenJDK Runtime Environment
JVM: OpenJDK 64-Bit Server VM
Java Version: 11.0.12+7-post-Debian-2
Operating System: Linux
Default Encoding: UTF-8
Language: en
Country: US
--></g></svg>