Changes for page Connect Devices to ThingsEye
Last modified by Alec Chen on 2025/11/26 17:10
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 33 removed)
- 1728535775119-971.png
- 1728535857345-950.png
- 1728535941851-388.png
- 1728536142721-488.png
- 1728536305503-380.png
- 1728536374214-962.png
- 1728536420275-153.png
- 1728536524638-768.png
- 1728536541040-814.png
- 1728566363151-470.png
- 1729562069134-315.png
- 1732678750938-753.jpg
- 1732679080974-799.jpg
- 1732679444539-853.jpg
- 1732679647697-982.jpg
- 1758762334133-608.png
- 1758762371290-726.png
- 1758762634175-353.png
- 1758762919291-489.png
- 1758763019466-819.png
- 1758763061703-634.png
- 图片1.png
- 图片10.png
- 图片2.png
- 图片3.png
- 图片4.png
- 图片5.png
- 图片6.png
- 图片7.png
- 图片8.png
- 图片9.png
- 屏幕截图 2024-11-25 095805.png
- 屏幕截图 2024-11-27 113616.png
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Alec1 +XWiki.EdwinChen - Content
-
... ... @@ -1,490 +2,73 @@ 1 -(% _mstvisible="1" %) 2 2 3 3 4 -(% _mstvisible="1" %) 5 -(% _msthash="777" _msttexthash="303537" _mstvisible="2" %)**Table of Contents:** 3 +**Table of Contents:** 6 6 7 7 {{toc/}} 8 8 9 9 10 -(% _mstvisible="1" %) 11 -= (% _msthash="757" _msttexthash="149552" _mstvisible="2" %)1. Overview(%%) = 8 += 1. Overview = 12 12 13 -(% _msthash="756" _msttexthash="7978490" _mstvisible="1" %) 14 -This instructions will show you how to connect a device that has been registered to the server to the Thingseye platform. 15 15 16 16 17 -= (% _msthash="755" _msttexthash="40707030" _mstvisible="2" %)2. UDP Protocol–Direct Connection(%%)=12 += 2. UDP Procotol ~-~- Directly Connection = 18 18 19 -(% _msthash="755" _msttexthash="40707030" _mstvisible="2" %)2.1 UDP Interface 20 -**Server Address: server1.thingseye.io 21 -Port: 11560** 22 -Data sent to the above UDP interface will not directly enter the client's database. 14 +== 2.1 UDP Interface == 23 23 24 -(% _msthash="755" _msttexthash="40707030" _mstvisible="2" %)For detailed information on how to forward data to clients, please contact the ThingsEye team. 16 +* Server Address: server1.thingseye.io 17 +* Port: 11560 25 25 26 - (%_msthash="755"_msttexthash="40707030"_mstvisible="2"%)Note:Currently,UDPconnections requireport forwarding. Pleasecontactthe ThingsEye team beforeconnecting andprovidethemwith yourdevice'sIMEI.19 +The data sent to above UDP interface will not go directly to client's database. 27 27 21 +Please contact ThingsEye team for detail how to forward data to client. 28 28 29 -(% _mstvisible="1" %) 30 ----- 31 31 32 -== (% _msthash="748" _msttexthash="55449407" _mstvisible="2" %)2.2 TestingwithDragino NB Device(%%)==24 +== 2.2 Test UDP Interface via Socket Tool == 33 33 34 - ===(% _msthash="748"_msttexthash="55449407"_mstvisible="2" %)2.2.1ConfiguringtheNB-IoTEndNode(%%)===26 +Download the UDP Test Tool from: [[https:~~/~~/sourceforge.net/projects/sockettest/ >>https://sourceforge.net/projects/sockettest/]]. Run this tool, and input the server address and UDP port as below and click send. 35 35 36 - (% _msthash="748" _msttexthash="55449407"_mstvisible="2" %)Thedevice here is an S31-NB, and ithas been configured as follows:28 +[[image:1728362612869-443.png||height="454" width="540"]] 37 37 38 - (%_msthash="748" _msttexthash="55449407"_mstvisible="2"%)**Set tousetheThingsEye UDPserver: AT+SERVADDR=server1.thingseye.io,11560**30 +In server side, Tenant Administrator can check this in Tenant UDP Server location. 39 39 40 - (% _msthash="748" _msttexthash="55449407" _mstvisible="2"%)**Use UDP uplink andJSON protocol: AT+PRO=2,5**32 +[[image:1728362834430-749.png||height="510" width="1667"]] 41 41 42 - (%_msthash="748"_msttexthash="55449407"_mstvisible="2"%)Equippedwith anNB-IoTcard to accesstheNB-IoT network.34 +Click and see the debug info as below: 43 43 44 - (% _msthash="748" _msttexthash="55449407" _mstvisible="2" %)The S31-NB's cellular module IMEI is:86366306278948336 +[[image:1728363020699-203.png]] 45 45 46 -(% class="wikigeneratedid" _mstvisible="1" id="H2.2.268C067E54E0A884C6570636E" %) 47 -(% _msthash="741" _msttexthash="30173117" _mstvisible="2" %)2.2.2 Check Uplink Data 48 -Enable Debug Module 38 +We can see the message arrives, but it shows ERROR because the message doesn't follow with the UDP Server format. 49 49 50 -(% _mstvisible="1" %) 51 -(% _mstvisible="3" %)[[image:1758762334133-608.png||_mstalt="294801" _msthash="584" _mstvisible="5" height="494" width="1003"]] 52 52 53 -(% _mstvisible="1" %) 54 ----- 41 +== 2.3 Test with Dragino NB device == 55 55 56 -(% _msthash="739" _msttexthash="156775723" _mstvisible="1" %) 57 -After reactivating the S31-NB, we can see it in the debug window: 43 +=== 2.3.1 Configure NB-IoT End Node === 58 58 59 -(% _mstvisible="1" %) 60 -(% _mstvisible="3" %)[[image:1758762371290-726.png||_mstalt="296088" _msthash="586" _mstvisible="5" height="528" width="1005"]] 45 +Device here is **[[S31-NB>>https://www.dragino.com/products/temperature-humidity-sensor/item/288-s31-nb-s31b-nb.html]]** : and have been configure below 61 61 62 - (%_mstvisible="1" %)63 - (%_mstvisible="3"%)[[image:1728378218744-800.png||_mstalt="295269"_msthash="588" _mstvisible="5"height="431"width="1003"]]47 +* Set to use ThingsEye UDP server: **AT+SERVADDR=server1.thingseye.io,11560** 48 +* Equip with a NB-IoT SIM Card to access to NB-IoT Network. 64 64 65 -- ---50 +The S31-NB's cellular module has the IMEI: **863663062789483** 66 66 67 -=== 2.2.2 Automatic Device Creation === 68 68 69 -(% class="wikigeneratedid" %) 70 -The default tenant UDP server is already configured to decode Dragino-NB/-CB NB-IoT nodes. Therefore, each end node sends data to the server. The tenant will automatically create devices on the server. 53 +=== 2.3.2 Check Uplink Data === 71 71 72 -(% _mstvisible="1" %) 73 -(% _mstvisible="3" %)[[image:1728378968101-683.png||_mstalt="297154" _msthash="590" _mstvisible="5" height="210" width="1005"]] 55 +Re-activate the S31-NB, and we can see it in the debug window: 74 74 75 -(% _mstvisible="1" %) 76 -(% _mstvisible="3" %)[[image:1728379050044-764.png||_mstalt="295282" _msthash="592" _mstvisible="5" height="326" width="1009"]] 57 +[[image:1728378218744-800.png||height="431" width="1003"]] 77 77 78 78 79 -(% _mstvisible="1" %) 80 ----- 60 +=== 2.3.3 Auto-Create Device === 81 81 82 -(% _mstvisible="1" %) 83 -= (% _msthash="736" _msttexthash="622947" _mstvisible="2" %)3. Connect to The Things Stack(%%) = 62 +The default **Tenant UDP Server** has already been configured to decode the Dragino -NB / -CB NB-IoT node. So once each end node sends a data to server. Tenant will auto create the device in the server. 84 84 85 -(% _mstvisible="1" %) 86 -== (% _msthash="735" _msttexthash="410280" _mstvisible="2" %)3.1 Network Structure(%%) == 64 +[[image:1728378968101-683.png||height="273" width="1307"]] 87 87 88 -(% _msthash="734" _msttexthash="14835652" _mstvisible="1" %) 89 -The network diagram below illustrates the connection between the devices and The Things Stack, as well as how the data can be integrated with the ThingsEye IoT platform. 66 +[[image:1728379050044-764.png||height="424" width="1312"]] 90 90 91 -(% _mstvisible="1" %) 92 -(% _mstvisible="3" %)[[image:1732679444539-853.jpg||_mstalt="296933" _msthash="594" _mstvisible="5" height="388" width="1452"]] 93 93 94 -(% _mstvisible="1" %) 95 -== (% _msthash="733" _msttexthash="1191008" _mstvisible="2" %)3.2 Creat Integration for The Things Stack.(%%) == 69 +**So we have this device in the Tenant Device List. The next step will be how to use these value to make a nice dashboard for user's application.** 96 96 97 -(% class="lead" _msthash="732" _msttexthash="255775" _mstvisible="1" %) 98 -Add Integration 99 99 100 -(% _mstvisible="1" %) 101 -(% _mstvisible="3" %)[[image:1728535775119-971.png||_mstalt="297661" _msthash="596" _mstvisible="5" height="423" width="1007"]] 102 102 103 - 104 -(% class="lead" _msthash="731" _msttexthash="448994" _mstvisible="1" %) 105 -Choose Connection Type 106 - 107 -(% _mstvisible="1" %) 108 -(% _mstvisible="3" %)[[image:1728535857345-950.png||_mstalt="297154" _msthash="598" _mstvisible="5" height="257" width="403"]] 109 - 110 - 111 -(% class="lead" _msthash="730" _msttexthash="762996" _mstvisible="1" %) 112 -Input Uplink Data Converter Code 113 - 114 -(% _mstvisible="1" %) 115 -(% _mstvisible="3" %)[[image:1728535941851-388.png||_mstalt="297856" _msthash="600" _mstvisible="5" height="466" width="398"]] 116 - 117 -(% _msthash="729" _msttexthash="16454490" _mstvisible="1" %) 118 -Demo JavaScript Code: [[https:~~/~~/raw.githubusercontent.com/ThingsEye-io/te-platform/refs/heads/main/Data%20Converters/The_Things_Network_MQTT_Uplink_Converter.js >>https://raw.githubusercontent.com/ThingsEye-io/te-platform/refs/heads/main/Data%20Converters/The_Things_Network_MQTT_Uplink_Converter.js]] 119 - 120 - 121 -(% class="lead" _msthash="728" _msttexthash="532480" _mstvisible="1" %) 122 -Input Downlink Converter 123 - 124 -(% _mstvisible="1" %) 125 -(% _mstvisible="3" %)[[image:1728536142721-488.png||_mstalt="296127" _msthash="602" _mstvisible="5" height="470" width="407"]] 126 - 127 -(% _msthash="727" _msttexthash="19064695" _mstvisible="1" %) 128 -Example Javascript Code as below: [[https:~~/~~/raw.githubusercontent.com/ThingsEye-io/te-platform/refs/heads/main/Data%20Converters/The_Things_Network_MQTT_Downlink_Converter.js>>https://raw.githubusercontent.com/ThingsEye-io/te-platform/refs/heads/main/Data%20Converters/The_Things_Network_MQTT_Downlink_Converter.js]] 129 - 130 - 131 -(% class="lead" _msthash="726" _msttexthash="1724853" _mstvisible="1" %) 132 -Set up Connection to The Things Network application 133 - 134 -(% _mstvisible="1" %) 135 -(% _mstvisible="3" %)[[image:1728536305503-380.png||_mstalt="293254" _msthash="604" _mstvisible="5" height="431" width="1019"]] 136 - 137 - 138 - 139 -(% class="lead" _msthash="725" _msttexthash="851097" _mstvisible="1" %) 140 -Test Connection & Add iIntegration 141 - 142 -(% _mstvisible="1" %) 143 -(% _mstvisible="3" %)[[image:1728536374214-962.png||_mstalt="295893" _msthash="606" _mstvisible="5" height="380" width="1024"]] 144 - 145 -(% _msthash="724" _msttexthash="1177579" _mstvisible="1" %) 146 -After add , we can see the integration here: 147 - 148 -(% _mstvisible="1" %) 149 -(% _mstvisible="3" %)[[image:1728536420275-153.png||_mstalt="293748" _msthash="608" _mstvisible="5" height="152" width="1026"]] 150 - 151 - 152 -(% _mstvisible="1" %) 153 -== (% _msthash="723" _msttexthash="213447" _mstvisible="2" %)3.3 Test Uplink(%%) == 154 - 155 -(% _msthash="722" _msttexthash="7855835" _mstvisible="1" %) 156 -We can use Simulate Uplink to simulate an uplink in the things stack. Then we should be able to see the message in ThingsEye 157 - 158 -(% _mstvisible="1" %) 159 -(% _mstvisible="3" %)[[image:1728536524638-768.png||_mstalt="298870" _msthash="610" _mstvisible="5" height="473" width="1028"]] 160 - 161 - 162 -(% _mstvisible="1" %) 163 -(% _mstvisible="3" %)[[image:1728536541040-814.png||_mstalt="293215" _msthash="612" _mstvisible="5" height="424" width="1026"]] 164 - 165 - 166 -(% _mstvisible="1" %) 167 ----- 168 - 169 -(% _mstvisible="1" %) 170 -= (% _msthash="721" _msttexthash="1472211" _mstvisible="2" %)4.Connect chirpstack to Thingseye by way of MQTT(%%) = 171 - 172 -(% _mstvisible="1" %) 173 -* (% _msthash="720" _msttexthash="4693741" _mstvisible="3" %)**How to connect chirpstack to Thingseye by way of MQTT? The following tutorial will show you** 174 - 175 -(% _mstvisible="1" %) 176 -== (% _msthash="719" _msttexthash="410371" _mstvisible="2" %)4.1 Network Structure(%%) == 177 - 178 -(% _msthash="718" _msttexthash="14117480" _mstvisible="1" %) 179 -The network diagram below illustrates the connection between the devices andchirpstack, as well as how the data can be integrated with the ThingsEye IoT platform. 180 - 181 -(% _mstvisible="1" %) 182 -(% _mstvisible="3" %)[[image:1732679647697-982.jpg||_mstalt="299884" _msthash="614" _mstvisible="5" height="399" width="1492"]] 183 - 184 -(% _mstvisible="1" %) 185 -== (% _msthash="717" _msttexthash="897286" _mstvisible="2" %)4.2 Thingseye adds MQTT integration(%%) == 186 - 187 -(% _msthash="716" _msttexthash="15186782" _mstvisible="1" %) 188 -Go to the Integrations page in the Integrations center section. Click the plus button to start adding a new integration. Select the type "MQTT" integration and click "Next"; 189 - 190 -(% _mstvisible="1" %) 191 -(% _mstvisible="3" %)[[image:1758762634175-353.png||_mstalt="295893" _msthash="616" _mstvisible="5" height="783" width="1020"]] 192 - 193 -(% _mstvisible="1" %) 194 -== (% _msthash="715" _msttexthash="1329445" _mstvisible="2" %)4.3 Add an uplink and downlink data converter(%%) == 195 - 196 -(% _msthash="714" _msttexthash="4516408" _mstvisible="1" %) 197 -In the function decoder field, specify the uplink script to parse and transform the data. 198 - 199 -(% _mstvisible="1" %) 200 -(% _mstvisible="3" %)[[image:1758763061703-634.png||_mstalt="294671" _msthash="618" _mstvisible="5" height="783" width="1020"]] 201 - 202 -(% _mstvisible="1" %) 203 -* (% _msthash="713" _msttexthash="24445408" _mstvisible="3" %)**Uplink——JavaScript:** 204 - 205 -(% _msthash="712" _msttexthash="792233" _mstvisible="1" %) 206 -var data = decodeToJson(payload); 207 - 208 -(% _msthash="711" _msttexthash="1379794" _mstvisible="1" %) 209 -var deviceName = data.deviceInfo.deviceName; 210 - 211 -(% _msthash="710" _msttexthash="1079247" _mstvisible="1" %) 212 -var deviceType = data.applicationName; 213 - 214 -(% _msthash="709" _msttexthash="909376" _mstvisible="1" %) 215 -var devEui = data.deviceInfo.devEui 216 - 217 -(% _msthash="708" _msttexthash="861510" _mstvisible="1" %) 218 -var label = data.deviceInfo.devEui 219 - 220 -(% _msthash="707" _msttexthash="195442" _mstvisible="1" %) 221 -var model = {}; 222 - 223 -(% _msthash="706" _msttexthash="435448" _mstvisible="1" %) 224 -var data2 = data.object; 225 - 226 -(% _msthash="705" _msttexthash="326274" _mstvisible="1" %) 227 -var flg = data.fPort 228 - 229 -(% _msthash="704" _msttexthash="380965" _mstvisible="1" %) 230 -for (var key in data2) { 231 - 232 -(% _msthash="703" _msttexthash="43058977" _mstvisible="1" %) 233 - ~/~/ 将属性名存入新对象中 234 - 235 -(% _msthash="702" _msttexthash="475553" _mstvisible="1" %) 236 - model[key] = data2[key]; 237 - 238 -(% _mstvisible="1" %) 239 -} 240 - 241 -(% _msthash="701" _msttexthash="757653" _mstvisible="1" %) 242 -~/~/var obj = {"devid":deviceName} 243 - 244 -(% _msthash="700" _msttexthash="183287" _mstvisible="1" %) 245 -var result = { 246 - 247 -(% _msthash="699" _msttexthash="473265" _mstvisible="1" %) 248 - deviceName: deviceName, 249 - 250 -(% _msthash="698" _msttexthash="489918" _mstvisible="1" %) 251 - deviceType: deviceType, 252 - 253 -(% _msthash="697" _msttexthash="297271" _mstvisible="1" %) 254 - telemetry: model, 255 - 256 -(% _msthash="696" _msttexthash="446498" _mstvisible="1" %) 257 - groupName: "Case Study", 258 - 259 -(% _msthash="695" _msttexthash="217633" _mstvisible="1" %) 260 - ~/~/label:label, 261 - 262 -(% _msthash="694" _msttexthash="685984" _mstvisible="1" %) 263 - attributes:{"devEui":devEui, 264 - 265 -(% _msthash="693" _msttexthash="386308" _mstvisible="1" %) 266 - ~/~/"timevalue":"test", 267 - 268 -(% _msthash="692" _msttexthash="551772" _mstvisible="1" %) 269 - "inactivityTimeout":1260000 270 - 271 -(% _msthash="691" _msttexthash="894530" _mstvisible="1" %) 272 - ~/~/ "High_humidity_alarm":"not set", 273 - 274 -(% _msthash="690" _msttexthash="1052753" _mstvisible="1" %) 275 - ~/~/ "High_temperature_alarm":"not set", 276 - 277 -(% _msthash="689" _msttexthash="848783" _mstvisible="1" %) 278 - ~/~/ "Low_humidity_alarm":"not set", 279 - 280 -(% _msthash="688" _msttexthash="1002833" _mstvisible="1" %) 281 - ~/~/ "Low_temperature_alarm":"not set", 282 - 283 -(% _msthash="687" _msttexthash="773682" _mstvisible="1" %) 284 - ~/~/ "Low_voltage_alarm":"not set" 285 - 286 -(% _msthash="686" _msttexthash="2381015" _mstvisible="1" %) 287 - ~/~/"customerName": "Civionic Engineering & Consulting (2014) Inc." 288 - 289 -(% _mstvisible="1" %) 290 - } 291 - 292 -(% _mstvisible="1" %) 293 -}; 294 - 295 -(% _msthash="685" _msttexthash="937586" _mstvisible="1" %) 296 -function decodeToString(payload) { 297 - 298 -(% _msthash="684" _msttexthash="1818154" _mstvisible="1" %) 299 - return String.fromCharCode.apply(String, payload); 300 - 301 -(% _mstvisible="1" %) 302 -} 303 - 304 -(% _msthash="683" _msttexthash="834496" _mstvisible="1" %) 305 -function decodeToJson(payload) { 306 - 307 -(% _msthash="682" _msttexthash="850616" _mstvisible="1" %) 308 - var str = decodeToString(payload); 309 - 310 -(% _msthash="681" _msttexthash="512044" _mstvisible="1" %) 311 - var data = JSON.parse(str); 312 - 313 -(% _msthash="680" _msttexthash="173511" _mstvisible="1" %) 314 - return data; 315 - 316 -(% _mstvisible="1" %) 317 -} 318 - 319 -(% _msthash="679" _msttexthash="233116" _mstvisible="1" %) 320 -return result; 321 - 322 -(% _mstvisible="1" %) 323 ----- 324 - 325 -(% _msthash="678" _msttexthash="4743882" _mstvisible="1" %) 326 -In the function decoder field, specify the downlink script to parse and transform the data. 327 - 328 -(% _mstvisible="1" %) 329 -(% _mstvisible="3" %)[[image:1758763019466-819.png||_mstalt="298311" _msthash="620" _mstvisible="5" height="787" width="1022"]] 330 - 331 -(% _mstvisible="1" %) 332 -* (% _msthash="677" _msttexthash="26632970" _mstvisible="3" %)**Dowblink——JavaScript:** 333 - 334 -(% _msthash="676" _msttexthash="2052284" _mstvisible="1" %) 335 -~/~/ Encode downlink data from incoming Rule Engine message 336 - 337 -(% _msthash="675" _msttexthash="1638546" _mstvisible="1" %) 338 -~/~/ msg - JSON message payload downlink message json 339 - 340 -(% _msthash="674" _msttexthash="3854773" _mstvisible="1" %) 341 -~/~/ msgType - type of message, for ex. 'ATTRIBUTES_UPDATED', 'POST_TELEMETRY_REQUEST', etc. 342 - 343 -(% _msthash="673" _msttexthash="3368742" _mstvisible="1" %) 344 -~/~/ metadata - list of key-value pairs with additional data about the message 345 - 346 -(% _msthash="672" _msttexthash="8087157" _mstvisible="1" %) 347 -~/~/ integrationMetadata - list of key-value pairs with additional data defined in Integration executing this converter 348 - 349 -(% _msthash="671" _msttexthash="199069" _mstvisible="1" %) 350 -~/~/ /~*~* Encoder ~*~*/ 351 - 352 -(% _msthash="670" _msttexthash="455715" _mstvisible="1" %) 353 -~/~/var data = {"value":99}; 354 - 355 -(% _msthash="669" _msttexthash="1757431" _mstvisible="1" %) 356 -~/~/ ~/~/ Process data from incoming message and metadata 357 - 358 -(% _msthash="668" _msttexthash="1852279" _mstvisible="1" %) 359 -~/~/ data.tempFreq = msg.temperatureUploadFrequency; 360 - 361 -(% _msthash="667" _msttexthash="1572038" _mstvisible="1" %) 362 -~/~/ data.humFreq = msg.humidityUploadFrequency; 363 - 364 -(% _msthash="666" _msttexthash="2049957" _mstvisible="1" %) 365 -~/~/ data.devSerialNumber = metadata['ss_serialNumber']; 366 - 367 -(% _msthash="665" _msttexthash="1576731" _mstvisible="1" %) 368 -~/~/ ~/~/ Result object with encoded downlink payload 369 - 370 -(% _msthash="664" _msttexthash="183287" _mstvisible="1" %) 371 -var result = { 372 - 373 -(% _msthash="663" _msttexthash="2331082" _mstvisible="1" %) 374 - ~/~/ downlink data content type: JSON, TEXT or BINARY (base64 format) 375 - 376 -(% _msthash="662" _msttexthash="322049" _mstvisible="1" %) 377 - contentType: "TEXT", 378 - 379 -(% _msthash="661" _msttexthash="249210" _mstvisible="1" %) 380 - ~/~/ downlink data 381 - 382 -(% _msthash="660" _msttexthash="1524952" _mstvisible="1" %) 383 - data: msg.shared_value ,~/~/JSON.stringify(data), 384 - 385 -(% _msthash="659" _msttexthash="2147704" _mstvisible="1" %) 386 - ~/~/ Optional metadata object presented in key/value format 387 - 388 -(% _msthash="658" _msttexthash="150189" _mstvisible="1" %) 389 - metadata: { 390 - 391 -(% _msthash="657" _msttexthash="1241370" _mstvisible="1" %) 392 - topic: '/test/down/'+metadata.deviceName 393 - 394 -(% _mstvisible="1" %) 395 - } 396 - 397 -(% _mstvisible="1" %) 398 -}; 399 - 400 -(% _msthash="656" _msttexthash="233116" _mstvisible="1" %) 401 -return result; 402 - 403 -(% _mstvisible="1" %) 404 ----- 405 - 406 -(% _mstvisible="1" %) 407 -== (% _msthash="655" _msttexthash="640094" _mstvisible="2" %)4.4 Configure the connection(%%) == 408 - 409 -(% _msthash="654" _msttexthash="1780675" _mstvisible="1" %) 410 -Generate MQTT certificate integrated on chirpstack 411 - 412 -(% _msthash="653" _msttexthash="3723447" _mstvisible="1" %) 413 -Chirpstack generates CA certificate, TLS certificate, and TLS key respectively 414 - 415 -(% _msthash="652" _msttexthash="5123092" _mstvisible="1" %) 416 -They correspond to the CA certificate file, Certificate file, and Private key file on thingseye 417 - 418 -(% _mstvisible="1" %) 419 -(% _mstvisible="3" %)[[image:图片4.png||_mstalt="5131737" _msthash="622" _mstvisible="5" height="504" width="1016"]] 420 - 421 -(% _mstvisible="1" %) 422 -(% _mstvisible="3" %)[[image:图片5.png||_mstalt="5131854" _msthash="624" _mstvisible="5" height="505" width="1017"]] 423 - 424 -(% _mstvisible="1" %) 425 -* Copy the contents of the certificates and paste them into the linked file below, a total of three certificates are required 426 - 427 -(% _mstvisible="1" %) 428 -(% _msthash="650" _msttexthash="44967858" _mstvisible="2" %)**Integrated Certificate File demo Download Address:** 429 - 430 -(% _mstvisible="1" %) 431 -[[https:~~/~~/github.com/ThingsEye-io/te-platform/tree/main/chirpstack>>https://github.com/ThingsEye-io/te-platform/tree/main/chirpstack||_msthash="649" _msttexthash="3132909" _mstvisible="2"]] 432 - 433 -(% _msthash="648" _msttexthash="4037631" _mstvisible="1" %) 434 -Enter the server address Host: lns1.thingseye.io on the Connection configuration 435 - 436 -(% _msthash="647" _msttexthash="93873" _mstvisible="1" %) 437 -Port: 8883 438 - 439 -(% _msthash="646" _msttexthash="380666" _mstvisible="1" %) 440 -Credentials type: PEM 441 - 442 -(% _msthash="645" _msttexthash="880399" _mstvisible="1" %) 443 -Upload the certificate and key file 444 - 445 -(% _mstvisible="1" %) 446 -(% _mstvisible="3" %)[[image:图片6.png||_mstalt="5131971" _msthash="626" _mstvisible="5" height="509" width="1026"]] 447 - 448 -(% _mstvisible="1" %) 449 -(% _mstvisible="3" %)[[image:图片7.png||_mstalt="5132088" _msthash="628" _mstvisible="5" height="509" width="1025"]] 450 - 451 -(% _mstvisible="1" %) 452 ----- 453 - 454 -(% _msthash="644" _msttexthash="472992" _mstvisible="1" %) 455 -The default for Topic is: 456 - 457 -(% _msthash="643" _msttexthash="2223559" _mstvisible="1" %) 458 -application/**chirpstack application id**/device/+/event/up 459 - 460 -(% _mstvisible="1" %) 461 -(% _mstvisible="3" %)[[image:图片8.png||_mstalt="5132205" _msthash="630" _mstvisible="5" height="508" width="1024"]] 462 - 463 - 464 -(% class="wikigeneratedid" _mstvisible="1" %) 465 -(% _mstvisible="3" %)[[image:屏幕截图 2024-11-25 095805.png||_mstalt="10831028" _msthash="632" _mstvisible="5" height="301" width="1024"]] 466 - 467 -(% _mstvisible="1" %) 468 ----- 469 - 470 -(% _mstvisible="1" %) 471 -== (% _msthash="642" _msttexthash="471978" _mstvisible="2" %)4.5 Check the connection(%%) == 472 - 473 -(% _mstvisible="1" %) 474 -(% _mstvisible="3" %)[[image:图片9.png||_mstalt="5132322" _msthash="634" _mstvisible="5" height="509" width="1025"]] 475 - 476 -(% _mstvisible="1" %) 477 -(% _mstvisible="3" %)[[image:图片10.png||_mstalt="5142449" _msthash="636" _mstvisible="5" height="509" width="1026"]] 478 - 479 - 480 -(% _mstvisible="1" %) 481 ----- 482 - 483 -(% _mstvisible="1" %) 484 -= (% _msthash="641" _msttexthash="418145" _mstvisible="2" %)5. Check Data Uplink Log(%%) = 485 - 486 -(% _msthash="640" _msttexthash="1422681" _mstvisible="1" %) 487 -User can check the devices log in Intergration. 488 - 489 -(% _mstvisible="1" %) 490 -(% _mstvisible="3" %)[[image:1729562069134-315.png||_mstalt="294190" _msthash="638" _mstvisible="5" height="587" width="723"]] 73 +
- 1728535775119-971.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.EdwinChen - Size
-
... ... @@ -1,1 +1,0 @@ 1 -84.1 KB - Content
- 1728535857345-950.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.EdwinChen - Size
-
... ... @@ -1,1 +1,0 @@ 1 -29.4 KB - Content
- 1728535941851-388.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.EdwinChen - Size
-
... ... @@ -1,1 +1,0 @@ 1 -50.3 KB - Content
- 1728536142721-488.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.EdwinChen - Size
-
... ... @@ -1,1 +1,0 @@ 1 -55.5 KB - Content
- 1728536305503-380.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.EdwinChen - Size
-
... ... @@ -1,1 +1,0 @@ 1 -135.2 KB - Content
- 1728536374214-962.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.EdwinChen - Size
-
... ... @@ -1,1 +1,0 @@ 1 -11.8 KB - Content
- 1728536420275-153.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.EdwinChen - Size
-
... ... @@ -1,1 +1,0 @@ 1 -35.3 KB - Content
- 1728536524638-768.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.EdwinChen - Size
-
... ... @@ -1,1 +1,0 @@ 1 -46.6 KB - Content
- 1728536541040-814.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.EdwinChen - Size
-
... ... @@ -1,1 +1,0 @@ 1 -29.0 KB - Content
- 1728566363151-470.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.EdwinChen - Size
-
... ... @@ -1,1 +1,0 @@ 1 -61.9 KB - Content
- 1729562069134-315.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.EdwinChen - Size
-
... ... @@ -1,1 +1,0 @@ 1 -67.5 KB - Content
- 1732678750938-753.jpg
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -173.5 KB - Content
- 1732679080974-799.jpg
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -176.4 KB - Content
- 1732679444539-853.jpg
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -180.5 KB - Content
- 1732679647697-982.jpg
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -179.2 KB - Content
- 1758762334133-608.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -161.4 KB - Content
- 1758762371290-726.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -215.2 KB - Content
- 1758762634175-353.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -213.8 KB - Content
- 1758762919291-489.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -209.4 KB - Content
- 1758763019466-819.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -227.9 KB - Content
- 1758763061703-634.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -222.0 KB - Content
- 图片1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -123.1 KB - Content
- 图片10.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -173.4 KB - Content
- 图片2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -163.3 KB - Content
- 图片3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -124.8 KB - Content
- 图片4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -68.8 KB - Content
- 图片5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -98.5 KB - Content
- 图片6.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -136.5 KB - Content
- 图片7.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -143.5 KB - Content
- 图片8.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -151.0 KB - Content
- 图片9.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -134.6 KB - Content
- 屏幕截图 2024-11-25 095805.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -45.7 KB - Content
- 屏幕截图 2024-11-27 113616.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.hera - Size
-
... ... @@ -1,1 +1,0 @@ 1 -117.5 KB - Content