<?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="1447px" preserveAspectRatio="none" style="width:899px;height:1447px;" version="1.1" viewBox="0 0 899 1447" width="899px" zoomAndPan="magnify"><defs><filter height="300%" id="fatert3ea1apr" 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="40.2969" y2="1403.7422"/><line style="stroke:#A80036;stroke-width:1.0;stroke-dasharray:5.0,5.0;" x1="441" x2="441" y1="40.2969" y2="1403.7422"/><line style="stroke:#A80036;stroke-width:1.0;stroke-dasharray:5.0,5.0;" x1="798" x2="798" y1="40.2969" y2="1403.7422"/><rect fill="#FEFECE" filter="url(#fatert3ea1apr)" height="30.2969" style="stroke:#A80036;stroke-width:1.5;" width="168" x="5" y="5"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="150" x="12" y="24.9951">Connection manager</text><rect fill="#FEFECE" filter="url(#fatert3ea1apr)" height="30.2969" style="stroke:#A80036;stroke-width:1.5;" width="168" x="5" y="1402.7422"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="150" x="12" y="1422.7373">Connection manager</text><rect fill="#FEFECE" filter="url(#fatert3ea1apr)" height="30.2969" style="stroke:#A80036;stroke-width:1.5;" width="124" x="377" y="5"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="110" x="384" y="24.9951">Service cellular</text><rect fill="#FEFECE" filter="url(#fatert3ea1apr)" height="30.2969" style="stroke:#A80036;stroke-width:1.5;" width="124" x="377" y="1402.7422"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="110" x="384" y="1422.7373">Service cellular</text><rect fill="#FEFECE" filter="url(#fatert3ea1apr)" height="30.2969" style="stroke:#A80036;stroke-width:1.5;" width="174" x="709" y="5"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="156" x="716" y="24.9951">Phone mode observer</text><rect fill="#FEFECE" filter="url(#fatert3ea1apr)" height="30.2969" style="stroke:#A80036;stroke-width:1.5;" width="174" x="709" y="1402.7422"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="156" x="716" y="1422.7373">Phone mode observer</text><rect fill="#EEEEEE" filter="url(#fatert3ea1apr)" height="3" style="stroke:#EEEEEE;stroke-width:1.0;" width="892" x="0" y="70.8633"/><line style="stroke:#000000;stroke-width:1.0;" x1="0" x2="892" y1="70.8633" y2="70.8633"/><line style="stroke:#000000;stroke-width:1.0;" x1="0" x2="892" y1="73.8633" y2="73.8633"/><rect fill="#EEEEEE" filter="url(#fatert3ea1apr)" height="23.1328" style="stroke:#000000;stroke-width:2.0;" width="310" x="291" y="60.2969"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="296" x="297" y="76.3638">Phone is connected to the GSM network</text><polygon fill="#A80036" points="452,110.5625,442,114.5625,452,118.5625,448,114.5625" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="446" x2="797" y1="114.5625" y2="114.5625"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="324" x="458" y="109.4966">Phone mode change to Connected/ Do not Disturb</text><polygon fill="#A80036" points="102,139.6953,92,143.6953,102,147.6953,98,143.6953" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="96" x2="440" y1="143.6953" y2="143.6953"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="101" x="108" y="138.6294">onPhoneMode()</text><polygon fill="#A80036" points="429,168.8281,439,172.8281,429,176.8281,433,172.8281" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="91" x2="435" y1="172.8281" y2="172.8281"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="260" x="98" y="167.7622">isConnectedToTheNetwork() AT+CFUN?</text><polygon fill="#A80036" points="102,197.9609,92,201.9609,102,205.9609,98,201.9609" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="96" x2="440" y1="201.9609" y2="201.9609"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="63" x="108" y="196.895">+CFUN: 1</text><polygon fill="#A80036" points="452,227.0938,442,231.0938,452,235.0938,448,231.0938" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="446" x2="797" y1="231.0938" y2="231.0938"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="298" x="458" y="226.0278">Phone mode change to Offline / Message only</text><polygon fill="#A80036" points="102,256.2266,92,260.2266,102,264.2266,98,260.2266" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="96" x2="440" y1="260.2266" y2="260.2266"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="101" x="108" y="255.1606">onPhoneMode()</text><polygon fill="#A80036" points="429,285.3594,439,289.3594,429,293.3594,433,289.3594" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="91" x2="435" y1="289.3594" y2="289.3594"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="260" x="98" y="284.2935">isConnectedToTheNetwork() AT+CFUN?</text><polygon fill="#A80036" points="102,314.4922,92,318.4922,102,322.4922,98,318.4922" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="96" x2="440" y1="318.4922" y2="318.4922"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="63" x="108" y="313.4263">+CFUN: 1</text><polygon fill="#A80036" points="429,343.625,439,347.625,429,351.625,433,347.625" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="91" x2="435" y1="347.625" y2="347.625"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="139" x="98" y="342.5591">hangUpOngoingCall()</text><polygon fill="#A80036" points="429,372.7578,439,376.7578,429,380.7578,433,376.7578" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="91" x2="435" y1="376.7578" y2="376.7578"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="255" x="98" y="371.6919">disconnectFromNetwork() AT+CFUN=4</text><polygon fill="#A80036" points="429,401.8906,439,405.8906,429,409.8906,433,405.8906" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="91" x2="435" y1="405.8906" y2="405.8906"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="154" x="98" y="400.8247">clearNetworkIndicator()</text><line style="stroke:#A80036;stroke-width:1.0;" x1="91" x2="133" y1="435.0234" y2="435.0234"/><line style="stroke:#A80036;stroke-width:1.0;" x1="133" x2="133" y1="435.0234" y2="448.0234"/><line style="stroke:#A80036;stroke-width:1.0;" x1="92" x2="133" y1="448.0234" y2="448.0234"/><polygon fill="#A80036" points="102,444.0234,92,448.0234,102,452.0234,98,448.0234" style="stroke:#A80036;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="252" x="98" y="429.9575">handle switch to selected oflline mode</text><rect fill="#EEEEEE" filter="url(#fatert3ea1apr)" height="3" style="stroke:#EEEEEE;stroke-width:1.0;" width="892" x="0" y="476.5898"/><line style="stroke:#000000;stroke-width:1.0;" x1="0" x2="892" y1="476.5898" y2="476.5898"/><line style="stroke:#000000;stroke-width:1.0;" x1="0" x2="892" y1="479.5898" y2="479.5898"/><rect fill="#EEEEEE" filter="url(#fatert3ea1apr)" height="23.1328" style="stroke:#000000;stroke-width:2.0;" width="339" x="276.5" y="466.0234"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="325" x="282.5" y="482.0903">Phone is not connected to the GSM network</text><polygon fill="#A80036" points="452,516.2891,442,520.2891,452,524.2891,448,520.2891" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="446" x2="797" y1="520.2891" y2="520.2891"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="333" x="458" y="515.2231">Phone mode change to CConnected/ Do not Disturb</text><polygon fill="#A80036" points="102,545.4219,92,549.4219,102,553.4219,98,549.4219" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="96" x2="440" y1="549.4219" y2="549.4219"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="101" x="108" y="544.356">onPhoneMode()</text><polygon fill="#A80036" points="429,574.5547,439,578.5547,429,582.5547,433,578.5547" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="91" x2="435" y1="578.5547" y2="578.5547"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="260" x="98" y="573.4888">isConnectedToTheNetwork() AT+CFUN?</text><polygon fill="#A80036" points="102,603.6875,92,607.6875,102,611.6875,98,607.6875" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="96" x2="440" y1="607.6875" y2="607.6875"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="63" x="108" y="602.6216">+CFUN: 4</text><polygon fill="#A80036" points="429,632.8203,439,636.8203,429,640.8203,433,636.8203" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="91" x2="435" y1="636.8203" y2="636.8203"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="243" x="98" y="631.7544">connectToTheNetwork() AT+CFUN=1</text><polygon fill="#A80036" points="452,661.9531,442,665.9531,452,669.9531,448,665.9531" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="446" x2="797" y1="665.9531" y2="665.9531"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="298" x="458" y="660.8872">Phone mode change to Offline / Message only</text><polygon fill="#A80036" points="102,691.0859,92,695.0859,102,699.0859,98,695.0859" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="96" x2="440" y1="695.0859" y2="695.0859"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="101" x="108" y="690.02">onPhoneMode()</text><polygon fill="#A80036" points="429,720.2188,439,724.2188,429,728.2188,433,724.2188" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="91" x2="435" y1="724.2188" y2="724.2188"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="260" x="98" y="719.1528">isConnectedToTheNetwork() AT+CFUN?</text><polygon fill="#A80036" points="102,749.3516,92,753.3516,102,757.3516,98,753.3516" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="96" x2="440" y1="753.3516" y2="753.3516"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="63" x="108" y="748.2856">+CFUN: 4</text><line style="stroke:#A80036;stroke-width:1.0;" x1="91" x2="133" y1="782.4844" y2="782.4844"/><line style="stroke:#A80036;stroke-width:1.0;" x1="133" x2="133" y1="782.4844" y2="795.4844"/><line style="stroke:#A80036;stroke-width:1.0;" x1="92" x2="133" y1="795.4844" y2="795.4844"/><polygon fill="#A80036" points="102,791.4844,92,795.4844,102,799.4844,98,795.4844" style="stroke:#A80036;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="252" x="98" y="777.4185">handle switch to selected oflline mode</text><rect fill="#EEEEEE" filter="url(#fatert3ea1apr)" height="3" style="stroke:#EEEEEE;stroke-width:1.0;" width="892" x="0" y="824.0508"/><line style="stroke:#000000;stroke-width:1.0;" x1="0" x2="892" y1="824.0508" y2="824.0508"/><line style="stroke:#000000;stroke-width:1.0;" x1="0" x2="892" y1="827.0508" y2="827.0508"/><rect fill="#EEEEEE" filter="url(#fatert3ea1apr)" height="23.1328" style="stroke:#000000;stroke-width:2.0;" width="298" x="297" y="813.4844"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="284" x="303" y="829.5513">handle switch to selected oflline mode</text><rect fill="#EEEEEE" filter="url(#fatert3ea1apr)" height="3" style="stroke:#EEEEEE;stroke-width:1.0;" width="892" x="0" y="867.1836"/><line style="stroke:#000000;stroke-width:1.0;" x1="0" x2="892" y1="867.1836" y2="867.1836"/><line style="stroke:#000000;stroke-width:1.0;" x1="0" x2="892" y1="870.1836" y2="870.1836"/><rect fill="#EEEEEE" filter="url(#fatert3ea1apr)" height="23.1328" style="stroke:#000000;stroke-width:2.0;" width="277" x="307.5" y="856.6172"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="263" x="313.5" y="872.6841">handleModeChangeToOfflineMode()</text><polygon fill="#A80036" points="429,906.8828,439,910.8828,429,914.8828,433,910.8828" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="91" x2="435" y1="910.8828" y2="910.8828"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="173" x="98" y="905.8169">isConnectionTimerActive()</text><polygon fill="#A80036" points="102,936.0156,92,940.0156,102,944.0156,98,940.0156" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="96" x2="440" y1="940.0156" y2="940.0156"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="94" x="108" y="934.9497">timer is active</text><polygon fill="#A80036" points="429,965.1484,439,969.1484,429,973.1484,433,969.1484" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="91" x2="435" y1="969.1484" y2="969.1484"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="149" x="98" y="964.0825">stopConnectionTimer()</text><rect fill="#EEEEEE" filter="url(#fatert3ea1apr)" height="3" style="stroke:#EEEEEE;stroke-width:1.0;" width="892" x="0" y="997.7148"/><line style="stroke:#000000;stroke-width:1.0;" x1="0" x2="892" y1="997.7148" y2="997.7148"/><line style="stroke:#000000;stroke-width:1.0;" x1="0" x2="892" y1="1000.7148" y2="1000.7148"/><rect fill="#EEEEEE" filter="url(#fatert3ea1apr)" height="23.1328" style="stroke:#000000;stroke-width:2.0;" width="277" x="307.5" y="987.1484"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="263" x="313.5" y="1003.2153">handleModeChangeToOfflineMode()</text><polygon fill="#A80036" points="429,1037.4141,439,1041.4141,429,1045.4141,433,1041.4141" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="91" x2="435" y1="1041.4141" y2="1041.4141"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="173" x="98" y="1036.3481">isConnectionTimerActive()</text><polygon fill="#A80036" points="102,1066.5469,92,1070.5469,102,1074.5469,98,1070.5469" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="96" x2="440" y1="1070.5469" y2="1070.5469"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="119" x="108" y="1065.481">timer is not active</text><polygon fill="#A80036" points="429,1095.6797,439,1099.6797,429,1103.6797,433,1099.6797" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="91" x2="435" y1="1099.6797" y2="1099.6797"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="142" x="98" y="1094.6138">startonnectionTimer()</text><rect fill="#EEEEEE" filter="url(#fatert3ea1apr)" height="3" style="stroke:#EEEEEE;stroke-width:1.0;" width="892" x="0" y="1128.2461"/><line style="stroke:#000000;stroke-width:1.0;" x1="0" x2="892" y1="1128.2461" y2="1128.2461"/><line style="stroke:#000000;stroke-width:1.0;" x1="0" x2="892" y1="1131.2461" y2="1131.2461"/><rect fill="#EEEEEE" filter="url(#fatert3ea1apr)" height="23.1328" style="stroke:#000000;stroke-width:2.0;" width="343" x="274.5" y="1117.6797"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacing" textLength="329" x="280.5" y="1133.7466">Connection manager in Messages only mode</text><polygon fill="#A80036" points="102,1167.9453,92,1171.9453,102,1175.9453,98,1171.9453" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="96" x2="440" y1="1171.9453" y2="1171.9453"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="201" x="108" y="1166.8794">service timer tick (60 seconds)</text><line style="stroke:#A80036;stroke-width:1.0;" x1="91" x2="133" y1="1201.0781" y2="1201.0781"/><line style="stroke:#A80036;stroke-width:1.0;" x1="133" x2="133" y1="1201.0781" y2="1214.0781"/><line style="stroke:#A80036;stroke-width:1.0;" x1="92" x2="133" y1="1214.0781" y2="1214.0781"/><polygon fill="#A80036" points="102,1210.0781,92,1214.0781,102,1218.0781,98,1214.0781" style="stroke:#A80036;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="336" x="98" y="1196.0122">offline period not expired, online period not expired</text><line style="stroke:#A80036;stroke-width:1.0;" x1="91" x2="133" y1="1243.2109" y2="1243.2109"/><line style="stroke:#A80036;stroke-width:1.0;" x1="133" x2="133" y1="1243.2109" y2="1256.2109"/><line style="stroke:#A80036;stroke-width:1.0;" x1="92" x2="133" y1="1256.2109" y2="1256.2109"/><polygon fill="#A80036" points="102,1252.2109,92,1256.2109,102,1260.2109,98,1256.2109" style="stroke:#A80036;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="222" x="98" y="1238.145">offline period expired onTimTick()</text><polygon fill="#A80036" points="429,1281.3438,439,1285.3438,429,1289.3438,433,1285.3438" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="91" x2="435" y1="1285.3438" y2="1285.3438"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="132" x="98" y="1280.2778">connectToNetwork()</text><line style="stroke:#A80036;stroke-width:1.0;" x1="91" x2="133" y1="1314.4766" y2="1314.4766"/><line style="stroke:#A80036;stroke-width:1.0;" x1="133" x2="133" y1="1314.4766" y2="1327.4766"/><line style="stroke:#A80036;stroke-width:1.0;" x1="92" x2="133" y1="1327.4766" y2="1327.4766"/><polygon fill="#A80036" points="102,1323.4766,92,1327.4766,102,1331.4766,98,1327.4766" style="stroke:#A80036;stroke-width:1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="220" x="98" y="1309.4106">online period expired onTimTick()</text><polygon fill="#A80036" points="429,1352.6094,439,1356.6094,429,1360.6094,433,1356.6094" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="91" x2="435" y1="1356.6094" y2="1356.6094"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="168" x="98" y="1351.5435">disconnectFromNetwork()</text><polygon fill="#A80036" points="429,1381.7422,439,1385.7422,429,1389.7422,433,1385.7422" style="stroke:#A80036;stroke-width:1.0;"/><line style="stroke:#A80036;stroke-width:1.0;" x1="91" x2="435" y1="1385.7422" y2="1385.7422"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacing" textLength="154" x="98" y="1380.6763">clearNetworkIndicator()</text><!--MD5=[e46c5ad7b3b5a2a99eecdfa0cfb63c20]
@startuml
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.2021.2(Sun Mar 07 12:10:27 CET 2021)
(GPL source distribution)
Java Runtime: OpenJDK Runtime Environment
JVM: OpenJDK 64-Bit Server VM
Default Encoding: UTF-8
Language: pl
Country: PL
--></g></svg>