blob: 206c2ece553977cec127e14bda451159d9ab4415 [file] [log] [blame]
<?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="1076.4px" preserveAspectRatio="none" style="width:1831px;height:1076px;background:#FFFFFF;" version="1.1" viewBox="0 0 1831 1076" width="1831.2px" zoomAndPan="magnify"><defs><filter height="300%" id="f1lk1jg05qkyqm" 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="#DDDDDD" height="1063.1812" style="stroke:#A80036;stroke-width:1.2;" width="471" x="676.8" y="7.2"/><text fill="#000000" font-family="sans-serif" font-size="15.6" font-weight="bold" lengthAdjust="spacing" textLength="140.4" x="842.1" y="21.6803">Device Registry</text><rect fill="#FFFFFF" filter="url(#f1lk1jg05qkyqm)" height="864.6375" style="stroke:#A80036;stroke-width:1.2;" width="12" x="271.8" y="129.4313"/><rect fill="#FFFFFF" filter="url(#f1lk1jg05qkyqm)" height="34.9594" style="stroke:#A80036;stroke-width:1.2;" width="12" x="717" y="216.15"/><rect fill="#FFFFFF" filter="url(#f1lk1jg05qkyqm)" height="34.9594" style="stroke:#A80036;stroke-width:1.2;" width="12" x="866.4" y="948.3094"/><rect fill="#FFFFFF" filter="url(#f1lk1jg05qkyqm)" height="271.275" style="stroke:#A80036;stroke-width:1.2;" width="12" x="1077" y="337.8281"/><rect fill="#FFFFFF" filter="url(#f1lk1jg05qkyqm)" height="506.9625" style="stroke:#000000;stroke-width:2.4;" width="1654.8" x="156" y="355.8281"/><rect fill="#FFFFFF" height="191.3625" style="stroke:none;stroke-width:1.2;" width="1654.8" x="156" y="618.7031"/><rect fill="#FFFFFF" height="52.725" style="stroke:none;stroke-width:1.2;" width="1654.8" x="156" y="810.0656"/><line style="stroke:#A80036;stroke-width:1.2;stroke-dasharray:5.0,5.0;" x1="45.6" x2="45.6" y1="92.0719" y2="1004.8688"/><line style="stroke:#A80036;stroke-width:1.2;stroke-dasharray:5.0,5.0;" x1="277.2" x2="277.2" y1="92.0719" y2="1004.8688"/><line style="stroke:#A80036;stroke-width:1.2;stroke-dasharray:5.0,5.0;" x1="722.4" x2="722.4" y1="92.0719" y2="1004.8688"/><line style="stroke:#A80036;stroke-width:1.2;stroke-dasharray:5.0,5.0;" x1="872.4" x2="872.4" y1="92.0719" y2="1004.8688"/><line style="stroke:#A80036;stroke-width:1.2;stroke-dasharray:5.0,5.0;" x1="1083" x2="1083" y1="92.0719" y2="1004.8688"/><line style="stroke:#A80036;stroke-width:1.2;stroke-dasharray:5.0,5.0;" x1="1704" x2="1704" y1="92.0719" y2="1004.8688"/><rect fill="#FEFECE" filter="url(#f1lk1jg05qkyqm)" height="36.3562" style="stroke:#A80036;stroke-width:1.7999999999999998;" width="75.6" x="6" y="49.7156"/><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacing" textLength="58.8" x="14.4" y="73.7098">Device</text><rect fill="#FEFECE" filter="url(#f1lk1jg05qkyqm)" height="36.3562" style="stroke:#A80036;stroke-width:1.7999999999999998;" width="75.6" x="6" y="1003.6687"/><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacing" textLength="58.8" x="14.4" y="1027.6629">Device</text><rect fill="#FEFECE" filter="url(#f1lk1jg05qkyqm)" height="36.3562" style="stroke:#A80036;stroke-width:1.7999999999999998;" width="214.8" x="168" y="49.7156"/><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacing" textLength="198" x="176.4" y="73.7098">Hono Protocol Adapter</text><rect fill="#FEFECE" filter="url(#f1lk1jg05qkyqm)" height="36.3562" style="stroke:#A80036;stroke-width:1.7999999999999998;" width="214.8" x="168" y="1003.6687"/><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacing" textLength="198" x="176.4" y="1027.6629">Hono Protocol Adapter</text><rect fill="#FEFECE" filter="url(#f1lk1jg05qkyqm)" height="55.9125" style="stroke:#A80036;stroke-width:1.7999999999999998;" width="78" x="681.6" y="30.1594"/><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacing" textLength="61.2" x="690" y="54.1535">Tenant</text><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacing" textLength="27.6" x="706.8" y="73.7098">API</text><rect fill="#FEFECE" filter="url(#f1lk1jg05qkyqm)" height="55.9125" style="stroke:#A80036;stroke-width:1.7999999999999998;" width="78" x="681.6" y="1003.6687"/><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacing" textLength="61.2" x="690" y="1027.6629">Tenant</text><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacing" textLength="27.6" x="706.8" y="1047.2191">API</text><rect fill="#FEFECE" filter="url(#f1lk1jg05qkyqm)" height="55.9125" style="stroke:#A80036;stroke-width:1.7999999999999998;" width="187.2" x="776.4" y="30.1594"/><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacing" textLength="170.4" x="784.8" y="54.1535">Device Registration</text><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacing" textLength="27.6" x="856.2" y="73.7098">API</text><rect fill="#FEFECE" filter="url(#f1lk1jg05qkyqm)" height="55.9125" style="stroke:#A80036;stroke-width:1.7999999999999998;" width="187.2" x="776.4" y="1003.6687"/><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacing" textLength="170.4" x="784.8" y="1027.6629">Device Registration</text><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacing" textLength="27.6" x="856.2" y="1047.2191">API</text><rect fill="#FEFECE" filter="url(#f1lk1jg05qkyqm)" height="55.9125" style="stroke:#A80036;stroke-width:1.7999999999999998;" width="115.2" x="1023" y="30.1594"/><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacing" textLength="98.4" x="1031.4" y="54.1535">Credentials</text><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacing" textLength="27.6" x="1066.8" y="73.7098">API</text><rect fill="#FEFECE" filter="url(#f1lk1jg05qkyqm)" height="55.9125" style="stroke:#A80036;stroke-width:1.7999999999999998;" width="115.2" x="1023" y="1003.6687"/><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacing" textLength="98.4" x="1031.4" y="1027.6629">Credentials</text><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacing" textLength="27.6" x="1066.8" y="1047.2191">API</text><rect fill="#FEFECE" filter="url(#f1lk1jg05qkyqm)" height="36.3562" style="stroke:#A80036;stroke-width:1.7999999999999998;" width="183.6" x="1610.4" y="49.7156"/><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacing" textLength="166.8" x="1618.8" y="73.7098">Messaging Network</text><rect fill="#FEFECE" filter="url(#f1lk1jg05qkyqm)" height="36.3562" style="stroke:#A80036;stroke-width:1.7999999999999998;" width="183.6" x="1610.4" y="1003.6687"/><text fill="#000000" font-family="sans-serif" font-size="16.8" lengthAdjust="spacing" textLength="166.8" x="1618.8" y="1027.6629">Messaging Network</text><rect fill="#FFFFFF" filter="url(#f1lk1jg05qkyqm)" height="864.6375" style="stroke:#A80036;stroke-width:1.2;" width="12" x="271.8" y="129.4313"/><rect fill="#FFFFFF" filter="url(#f1lk1jg05qkyqm)" height="34.9594" style="stroke:#A80036;stroke-width:1.2;" width="12" x="717" y="216.15"/><rect fill="#FFFFFF" filter="url(#f1lk1jg05qkyqm)" height="34.9594" style="stroke:#A80036;stroke-width:1.2;" width="12" x="866.4" y="948.3094"/><rect fill="#FFFFFF" filter="url(#f1lk1jg05qkyqm)" height="271.275" style="stroke:#A80036;stroke-width:1.2;" width="12" x="1077" y="337.8281"/><polygon fill="#A80036" points="257.4,124.6313,269.4,129.4313,257.4,134.2313,262.2,129.4313" style="stroke:#A80036;stroke-width:1.2;"/><line style="stroke:#A80036;stroke-width:1.2;" x1="46.2" x2="264.6" y1="129.4313" y2="129.4313"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacing" textLength="202.8" x="54.6" y="123.3521">connect(X.509 Client Cert)</text><rect fill="#EEEEEE" filter="url(#f1lk1jg05qkyqm)" height="3.6" style="stroke:#EEEEEE;stroke-width:1.2;" width="1822.8" x="0" y="163.7109"/><line style="stroke:#000000;stroke-width:1.2;" x1="0" x2="1822.8" y1="163.7109" y2="163.7109"/><line style="stroke:#000000;stroke-width:1.2;" x1="0" x2="1822.8" y1="167.3109" y2="167.3109"/><rect fill="#EEEEEE" filter="url(#f1lk1jg05qkyqm)" height="27.7594" style="stroke:#000000;stroke-width:2.4;" width="147.6" x="837.6" y="151.0313"/><text fill="#000000" font-family="sans-serif" font-size="15.6" font-weight="bold" lengthAdjust="spacing" textLength="124.8" x="844.8" y="170.3115">Query Tenant</text><polygon fill="#A80036" points="702.6,211.35,714.6,216.15,702.6,220.95,707.4,216.15" style="stroke:#A80036;stroke-width:1.2;"/><line style="stroke:#A80036;stroke-width:1.2;" x1="283.8" x2="709.8" y1="216.15" y2="216.15"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacing" textLength="410.4" x="292.2" y="210.0709">transfer(subject: "get", body: {"subject-dn": $caDN})</text><polygon fill="#A80036" points="297,246.3094,285,251.1094,297,255.9094,292.2,251.1094" style="stroke:#A80036;stroke-width:1.2;"/><line style="stroke:#A80036;stroke-width:1.2;" x1="289.8" x2="721.8" y1="251.1094" y2="251.1094"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacing" textLength="339.6" x="304.2" y="245.0303">transfer(status: "200", ..., body: tenant info)</text><rect fill="#EEEEEE" filter="url(#f1lk1jg05qkyqm)" height="3.6" style="stroke:#EEEEEE;stroke-width:1.2;" width="1822.8" x="0" y="285.3891"/><line style="stroke:#000000;stroke-width:1.2;" x1="0" x2="1822.8" y1="285.3891" y2="285.3891"/><line style="stroke:#000000;stroke-width:1.2;" x1="0" x2="1822.8" y1="288.9891" y2="288.9891"/><rect fill="#EEEEEE" filter="url(#f1lk1jg05qkyqm)" height="27.7594" style="stroke:#000000;stroke-width:2.4;" width="184.8" x="819" y="272.7094"/><text fill="#000000" font-family="sans-serif" font-size="15.6" font-weight="bold" lengthAdjust="spacing" textLength="162" x="826.2" y="291.9896">Query Credentials</text><polygon fill="#A80036" points="1062.6,333.0281,1074.6,337.8281,1062.6,342.6281,1067.4,337.8281" style="stroke:#A80036;stroke-width:1.2;"/><line style="stroke:#A80036;stroke-width:1.2;" x1="283.8" x2="1069.8" y1="337.8281" y2="337.8281"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacing" textLength="770.4" x="292.2" y="331.749">transfer(subject: "get", body: {"type": "x509-cert", "auth-id": $subjectDN, "client-certificate": $cert})</text><path d="M156,355.8281 L235.2,355.8281 L235.2,364.2281 L223.2,376.2281 L156,376.2281 L156,355.8281 " fill="#EEEEEE" style="stroke:#000000;stroke-width:1.2;"/><rect fill="none" height="506.9625" style="stroke:#000000;stroke-width:2.4;" width="1654.8" x="156" y="355.8281"/><text fill="#000000" font-family="sans-serif" font-size="15.6" font-weight="bold" lengthAdjust="spacing" textLength="25.2" x="174" y="371.5084">alt</text><text fill="#000000" font-family="sans-serif" font-size="13.2" font-weight="bold" lengthAdjust="spacing" textLength="190.8" x="253.2" y="370.4807">[Credentials not found]</text><line style="stroke:#A80036;stroke-width:1.2;" x1="1089" x2="1139.4" y1="419.9063" y2="419.9063"/><line style="stroke:#A80036;stroke-width:1.2;" x1="1139.4" x2="1139.4" y1="419.9063" y2="435.5062"/><line style="stroke:#A80036;stroke-width:1.2;" x1="1090.2" x2="1139.4" y1="435.5062" y2="435.5062"/><polygon fill="#A80036" points="1102.2,430.7063,1090.2,435.5062,1102.2,440.3063,1097.4,435.5062" style="stroke:#A80036;stroke-width:1.2;"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacing" textLength="284.4" x="1097.4" y="395.6678">Create a new device registration and</text><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacing" textLength="236.4" x="1102.2" y="413.8271">update credentials information</text><path d="M712.8,393.2672 L712.8,423.2672 L1065.6,423.2672 L1065.6,405.2672 L1053.6,393.2672 L712.8,393.2672 " fill="#FBFB77" filter="url(#f1lk1jg05qkyqm)" style="stroke:#A80036;stroke-width:1.2;"/><path d="M1053.6,393.2672 L1053.6,405.2672 L1065.6,405.2672 L1053.6,393.2672 " fill="#FBFB77" style="stroke:#A80036;stroke-width:1.2;"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacing" textLength="327.6" x="720" y="413.7475">If device Registry does not find credentials</text><polygon fill="#A80036" points="1690.2,465.6656,1702.2,470.4656,1690.2,475.2656,1695,470.4656" style="stroke:#A80036;stroke-width:1.2;"/><line style="stroke:#A80036;stroke-width:1.2;" x1="1089" x2="1697.4" y1="470.4656" y2="470.4656"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacing" textLength="456" x="1097.4" y="464.3865">transfer("event/TENANT", hono_registration_status="NEW")</text><polygon fill="#A80036" points="1102.2,500.625,1090.2,505.425,1102.2,510.225,1097.4,505.425" style="stroke:#A80036;stroke-width:1.2;"/><line style="stroke:#A80036;stroke-width:1.2;" x1="1095" x2="1703.4" y1="505.425" y2="505.425"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacing" textLength="100.8" x="1109.4" y="499.3459">acknowledge</text><line style="stroke:#A80036;stroke-width:1.2;" x1="1089" x2="1139.4" y1="558.5437" y2="558.5437"/><line style="stroke:#A80036;stroke-width:1.2;" x1="1139.4" x2="1139.4" y1="558.5437" y2="574.1438"/><line style="stroke:#A80036;stroke-width:1.2;" x1="1090.2" x2="1139.4" y1="574.1438" y2="574.1438"/><polygon fill="#A80036" points="1102.2,569.3438,1090.2,574.1438,1102.2,578.9438,1097.4,574.1438" style="stroke:#A80036;stroke-width:1.2;"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacing" textLength="592.8" x="1097.4" y="534.3053">Update device registration indicating that the Device Provisioning Notification</text><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacing" textLength="109.2" x="1102.2" y="552.4646">has been sent</text><polygon fill="#A80036" points="297,604.3031,285,609.1031,297,613.9031,292.2,609.1031" style="stroke:#A80036;stroke-width:1.2;"/><line style="stroke:#A80036;stroke-width:1.2;" x1="289.8" x2="1081.8" y1="609.1031" y2="609.1031"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacing" textLength="349.2" x="304.2" y="603.024">transfer(status: "201", body: credentials info)</text><line style="stroke:#000000;stroke-width:1.2;stroke-dasharray:2.0,2.0;" x1="156" x2="1810.8" y1="619.9031" y2="619.9031"/><text fill="#000000" font-family="sans-serif" font-size="13.2" font-weight="bold" lengthAdjust="spacing" textLength="556.8" x="162" y="632.1557">[Credentials found but device provisioning notification not sent yet]</text><polygon fill="#A80036" points="1690.2,657.0281,1702.2,661.8281,1690.2,666.6281,1695,661.8281" style="stroke:#A80036;stroke-width:1.2;"/><line style="stroke:#A80036;stroke-width:1.2;" x1="1083" x2="1697.4" y1="661.8281" y2="661.8281"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacing" textLength="456" x="1091.4" y="655.749">transfer("event/TENANT", hono_registration_status="NEW")</text><polygon fill="#A80036" points="1096.2,691.9875,1084.2,696.7875,1096.2,701.5875,1091.4,696.7875" style="stroke:#A80036;stroke-width:1.2;"/><line style="stroke:#A80036;stroke-width:1.2;" x1="1089" x2="1703.4" y1="696.7875" y2="696.7875"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacing" textLength="100.8" x="1103.4" y="690.7084">acknowledge</text><line style="stroke:#A80036;stroke-width:1.2;" x1="1083" x2="1133.4" y1="749.9063" y2="749.9063"/><line style="stroke:#A80036;stroke-width:1.2;" x1="1133.4" x2="1133.4" y1="749.9063" y2="765.5063"/><line style="stroke:#A80036;stroke-width:1.2;" x1="1084.2" x2="1133.4" y1="765.5063" y2="765.5063"/><polygon fill="#A80036" points="1096.2,760.7063,1084.2,765.5063,1096.2,770.3063,1091.4,765.5063" style="stroke:#A80036;stroke-width:1.2;"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacing" textLength="592.8" x="1091.4" y="725.6678">Update device registration indicating that the Device Provisioning Notification</text><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacing" textLength="109.2" x="1096.2" y="743.8271">has been sent</text><polygon fill="#A80036" points="297,795.6656,285,800.4656,297,805.2656,292.2,800.4656" style="stroke:#A80036;stroke-width:1.2;"/><line style="stroke:#A80036;stroke-width:1.2;" x1="289.8" x2="1081.8" y1="800.4656" y2="800.4656"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacing" textLength="349.2" x="304.2" y="794.3865">transfer(status: "200", body: credentials info)</text><line style="stroke:#000000;stroke-width:1.2;stroke-dasharray:2.0,2.0;" x1="156" x2="1810.8" y1="811.2656" y2="811.2656"/><text fill="#000000" font-family="sans-serif" font-size="13.2" font-weight="bold" lengthAdjust="spacing" textLength="43.2" x="162" y="823.5182">[Else]</text><polygon fill="#A80036" points="297,848.3906,285,853.1906,297,857.9906,292.2,853.1906" style="stroke:#A80036;stroke-width:1.2;"/><line style="stroke:#A80036;stroke-width:1.2;" x1="289.8" x2="1081.8" y1="853.1906" y2="853.1906"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacing" textLength="349.2" x="304.2" y="847.1115">transfer(status: "200", body: credentials info)</text><rect fill="#EEEEEE" filter="url(#f1lk1jg05qkyqm)" height="3.6" style="stroke:#EEEEEE;stroke-width:1.2;" width="1822.8" x="0" y="895.8703"/><line style="stroke:#000000;stroke-width:1.2;" x1="0" x2="1822.8" y1="895.8703" y2="895.8703"/><line style="stroke:#000000;stroke-width:1.2;" x1="0" x2="1822.8" y1="899.4703" y2="899.4703"/><rect fill="#EEEEEE" filter="url(#f1lk1jg05qkyqm)" height="27.7594" style="stroke:#000000;stroke-width:2.4;" width="312" x="755.4" y="883.1906"/><text fill="#000000" font-family="sans-serif" font-size="15.6" font-weight="bold" lengthAdjust="spacing" textLength="289.2" x="762.6" y="902.4709">Query Registration Information</text><polygon fill="#A80036" points="852,943.5094,864,948.3094,852,953.1094,856.8,948.3094" style="stroke:#A80036;stroke-width:1.2;"/><line style="stroke:#A80036;stroke-width:1.2;" x1="283.8" x2="859.2" y1="948.3094" y2="948.3094"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacing" textLength="278.4" x="292.2" y="942.2303">transfer(subject: "assert", device-id)</text><polygon fill="#A80036" points="297,978.4688,285,983.2688,297,988.0687,292.2,983.2688" style="stroke:#A80036;stroke-width:1.2;"/><line style="stroke:#A80036;stroke-width:1.2;" x1="289.8" x2="871.2" y1="983.2688" y2="983.2688"/><text fill="#000000" font-family="sans-serif" font-size="15.6" lengthAdjust="spacing" textLength="396" x="304.2" y="977.1896">transfer(status: "200", ..., body: registration status)</text><!--MD5=[6e16c34eab088cada8da0d82206bdfd9]
@startuml
skinparam BoxPadding 10
scale 1.2
participant "Device"
participant "Hono Protocol Adapter" as PA
box "Device Registry"
participant "Tenant\nAPI" as tenant
participant "Device Registration\nAPI" as reg
participant "Credentials\nAPI" as cred
end box
participant "Messaging Network" as msgNetwork
Device -> PA++: connect(X.509 Client Cert)
== Query Tenant ==
PA -> tenant++: transfer(subject: "get", body: {"subject-dn": $caDN})
PA <- tenant- -: transfer(status: "200", ..., body: tenant info)
== Query Credentials ==
PA -> cred++: transfer(subject: "get", body: {"type": "x509-cert", "auth-id": $subjectDN, "client-certificate": $cert})
alt Credentials not found
cred -> cred: Create a new device registration and \n update credentials information
note left: If device Registry does not find credentials
cred -> msgNetwork: transfer("event/TENANT", hono_registration_status="NEW")
msgNetwork -> cred: acknowledge
cred -> cred: Update device registration indicating that the Device Provisioning Notification\n has been sent
PA <- cred- -: transfer(status: "201", body: credentials info)
else Credentials found but device provisioning notification not sent yet
cred -> msgNetwork: transfer("event/TENANT", hono_registration_status="NEW")
msgNetwork -> cred: acknowledge
cred -> cred: Update device registration indicating that the Device Provisioning Notification\n has been sent
PA <- cred- -: transfer(status: "200", body: credentials info)
else Else
PA <- cred- -: transfer(status: "200", body: credentials info)
end
== Query Registration Information ==
PA -> reg++: transfer(subject: "assert", device-id)
PA <- reg- -: transfer(status: "200", ..., body: registration status)
@enduml
PlantUML version 1.2021.7(Sun May 23 12:40:07 UTC 2021)
(GPL source distribution)
Java Runtime: Java(TM) SE Runtime Environment
JVM: Java HotSpot(TM) 64-Bit Server VM
Default Encoding: UTF-8
Language: en
Country: US
--></g></svg>