| <?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="427.2px" preserveAspectRatio="none" style="width:1316px;height:427px;" version="1.1" viewBox="0 0 1316 427" width="1316.4px" zoomAndPan="magnify"><defs><filter height="300%" id="f1o44wqsfudvsx" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.4"/><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.8" dy="4.8" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><rect fill="#FFFFFF" filter="url(#f1o44wqsfudvsx)" height="209.7563" style="stroke: #A80036; stroke-width: 1.2;" width="12" x="538.2" y="148.4344"/><rect fill="#FFFFFF" filter="url(#f1o44wqsfudvsx)" height="174.7969" style="stroke: #A80036; stroke-width: 1.2;" width="12" x="1246.2" y="183.3937"/><line style="stroke: #A80036; stroke-width: 1.2; stroke-dasharray: 5.0,5.0;" x1="148.8" x2="148.8" y1="45.9563" y2="379.7906"/><line style="stroke: #A80036; stroke-width: 1.2; stroke-dasharray: 5.0,5.0;" x1="543.6" x2="543.6" y1="45.9563" y2="379.7906"/><line style="stroke: #A80036; stroke-width: 1.2; stroke-dasharray: 5.0,5.0;" x1="1251.6" x2="1251.6" y1="45.9563" y2="379.7906"/><rect fill="#FEFECE" filter="url(#f1o44wqsfudvsx)" height="36.3562" style="stroke: #A80036; stroke-width: 1.7999999999999998;" width="73.2" x="110.4" y="3.6"/><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacingAndGlyphs" textLength="56.4" x="118.8" y="27.5941">Device</text><rect fill="#FEFECE" filter="url(#f1o44wqsfudvsx)" height="36.3562" style="stroke: #A80036; stroke-width: 1.7999999999999998;" width="73.2" x="110.4" y="378.5906"/><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacingAndGlyphs" textLength="56.4" x="118.8" y="402.5848">Device</text><rect fill="#FEFECE" filter="url(#f1o44wqsfudvsx)" height="36.3562" style="stroke: #A80036; stroke-width: 1.7999999999999998;" width="135.6" x="474" y="3.6"/><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacingAndGlyphs" textLength="118.8" x="482.4" y="27.5941">MQTT Adapter</text><rect fill="#FEFECE" filter="url(#f1o44wqsfudvsx)" height="36.3562" style="stroke: #A80036; stroke-width: 1.7999999999999998;" width="135.6" x="474" y="378.5906"/><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacingAndGlyphs" textLength="118.8" x="482.4" y="402.5848">MQTT Adapter</text><rect fill="#FEFECE" filter="url(#f1o44wqsfudvsx)" height="36.3562" style="stroke: #A80036; stroke-width: 1.7999999999999998;" width="106.8" x="1196.4" y="3.6"/><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacingAndGlyphs" textLength="90" x="1204.8" y="27.5941">Application</text><rect fill="#FEFECE" filter="url(#f1o44wqsfudvsx)" height="36.3562" style="stroke: #A80036; stroke-width: 1.7999999999999998;" width="106.8" x="1196.4" y="378.5906"/><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacingAndGlyphs" textLength="90" x="1204.8" y="402.5848">Application</text><rect fill="#FFFFFF" filter="url(#f1o44wqsfudvsx)" height="209.7563" style="stroke: #A80036; stroke-width: 1.2;" width="12" x="538.2" y="148.4344"/><rect fill="#FFFFFF" filter="url(#f1o44wqsfudvsx)" height="174.7969" style="stroke: #A80036; stroke-width: 1.2;" width="12" x="1246.2" y="183.3937"/><path d="M9.6,63.9563 L9.6,111.9563 L285.6,111.9563 L285.6,75.9563 L273.6,63.9563 L9.6,63.9563 " fill="#FBFB77" filter="url(#f1o44wqsfudvsx)" style="stroke: #A80036; stroke-width: 1.2;"/><path d="M273.6,63.9563 L273.6,75.9563 L285.6,75.9563 L273.6,63.9563 " fill="#FBFB77" style="stroke: #A80036; stroke-width: 1.2;"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacingAndGlyphs" textLength="217.2" x="16.8" y="84.4365">The device is connected and</text><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacingAndGlyphs" textLength="250.8" x="16.8" y="102.5959">authenticated with TENANT/4711</text><polygon fill="#A80036" points="523.8,143.6344,535.8,148.4344,523.8,153.2344,528.6,148.4344" style="stroke: #A80036; stroke-width: 1.2;"/><line style="stroke: #A80036; stroke-width: 1.2;" x1="149.4" x2="531" y1="148.4344" y2="148.4344"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacingAndGlyphs" textLength="354" x="157.8" y="142.3553">1. device subscribes to "command/+/+/req/#"</text><polygon fill="#A80036" points="1231.8,178.5938,1243.8,183.3937,1231.8,188.1938,1236.6,183.3937" style="stroke: #A80036; stroke-width: 1.2;"/><line style="stroke: #A80036; stroke-width: 1.2;" x1="550.2" x2="1239" y1="183.3937" y2="183.3937"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacingAndGlyphs" textLength="334.8" x="558.6" y="177.3146">2. transfer("event/TENANT","4711","ttd=-1")</text><polygon fill="#A80036" points="563.4,213.5531,551.4,218.3531,563.4,223.1531,558.6,218.3531" style="stroke: #A80036; stroke-width: 1.2;"/><line style="stroke: #A80036; stroke-width: 1.2;" x1="556.2" x2="1245" y1="218.3531" y2="218.3531"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacingAndGlyphs" textLength="380.4" x="570.6" y="212.274">3. transfer("command/TENANT/4711","light","ON")</text><polygon fill="#A80036" points="162.6,248.5125,150.6,253.3125,162.6,258.1125,157.8,253.3125" style="stroke: #A80036; stroke-width: 1.2;"/><line style="stroke: #A80036; stroke-width: 1.2;" x1="155.4" x2="537" y1="253.3125" y2="253.3125"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacingAndGlyphs" textLength="298.8" x="169.8" y="247.2334">4. "command///req/${reqId}/light":"ON"</text><polygon fill="#A80036" points="1231.8,283.4719,1243.8,288.2719,1231.8,293.0719,1236.6,288.2719" style="stroke: #A80036; stroke-width: 1.2;"/><line style="stroke: #A80036; stroke-width: 1.2;" x1="550.2" x2="1239" y1="288.2719" y2="288.2719"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacingAndGlyphs" textLength="176.4" x="558.6" y="282.1928">disposition("accepted")</text><polygon fill="#A80036" points="523.8,318.4313,535.8,323.2313,523.8,328.0313,528.6,323.2313" style="stroke: #A80036; stroke-width: 1.2;"/><line style="stroke: #A80036; stroke-width: 1.2;" x1="149.4" x2="531" y1="323.2313" y2="323.2313"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacingAndGlyphs" textLength="360" x="157.8" y="317.1521">5. "command///res/${reqId}/200":"lumen=100"</text><polygon fill="#A80036" points="1237.8,353.3906,1249.8,358.1906,1237.8,362.9906,1242.6,358.1906" style="stroke: #A80036; stroke-width: 1.2;"/><line style="stroke: #A80036; stroke-width: 1.2;" x1="544.2" x2="1245" y1="358.1906" y2="358.1906"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacingAndGlyphs" textLength="667.2" x="552.6" y="352.1115">6. transfer("command_response/TENANT/4711/${replyId}","status=200","lumen=100")</text><!-- |
| participant "MQTT Adapter" |
| The device is connected and |
| authenticated with TENANT/4711 |
| Device -> "MQTT Adapter": 1. device subscribes to "command/+/+/req/#" |
| "MQTT Adapter" -> Application: 2. transfer("event/TENANT","4711","ttd=-1") |
| Application -> "MQTT Adapter": 3. transfer("command/TENANT/4711","light","ON") |
| "MQTT Adapter" -> Device: 4. "command///req/${reqId}/light":"ON" |
| "MQTT Adapter" -> Application: disposition("accepted") |
| Device -> "MQTT Adapter": 5. "command///res/${reqId}/200":"lumen=100" |
| "MQTT Adapter" -> Application: 6. transfer("command_response/TENANT/4711/${replyId}","status=200","lumen=100") |
| deactivate "MQTT Adapter" |
| PlantUML version 1.2019.07beta1(Unknown compile time) |
| (GPL source distribution) |
| Java Runtime: Java(TM) SE Runtime Environment |
| JVM: Java HotSpot(TM) 64-Bit Server VM |
| Java Version: 1.7.0_25-b15 |