Changes for page 01 Lua Functions

Last modified by Theodore Xu on 2023/10/26 10:51

From version 5.10
edited by Stone Wu
on 2022/07/12 09:30
Change comment: (Autosaved)
To version 5.15
edited by Stone Wu
on 2022/07/12 09:51
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -958,20 +958,17 @@
958 958  
959 959  Parameter:
960 960  
961 -//Topic//, topic name
961 +* //Topic//, topic name
962 +* //Message//, content
962 962  
963 -//Message//, content
964 +**2."arrived" is published by publish, this function will be called after the publication arrives**
964 964  
965 -**2.**"arrived" is published by publish, this function will be called after the publication arrives
966 -
967 967  //Callback// prototype~:// function ()//
968 968  
969 -Parameter:
968 +Parameter: None
970 970  
971 -None
970 +**3.This function will be called after the "offline" connection is lost**
972 972  
973 -**3.**This function will be called after the "offline" connection is lost
974 -
975 975  //Callback// prototype~:// function (string cause)//
976 976  
977 977  Parameter:
... ... @@ -985,17 +985,13 @@
985 985  Failed: multi
986 986  
987 987  (((
988 -== **4.11 mqtt:setup_cfg()** ==
985 +== **mqtt:setup_cfg()** ==
989 989  )))
990 990  
991 -**Function:**
988 +**Function:** Cloud mode interface, to obtain MQTT information configured by the cloud platform
992 992  
993 -Cloud mode interface, to obtain MQTT information configured by the cloud platform
990 +**Parameters:** None
994 994  
995 -**Parameters:**
996 -
997 -None
998 -
999 999  **Return:**
1000 1000  
1001 1001  //serverurl, clientid, conn, lwt, cart //(5 returns, respectively, server address, client ID, connection table, last word table, certificate table)
... ... @@ -1013,39 +1013,27 @@
1013 1013  Lua only has a table data structure, so all arrays and key-value objects of json will be returned as a table.
1014 1014  
1015 1015  (((
1016 -== **5.1 json.encode( lua_object )** ==
1009 +== **json.encode( lua_object )** ==
1017 1017  )))
1018 1018  
1019 -**Function:**
1012 +**Function: **Convert lua data type to json string
1020 1020  
1021 -Convert lua data type to json string
1014 +**Parameters: **Lua data type (including boolean, number, string, table)
1022 1022  
1023 -**Parameters:**
1016 +**Return:** Json format string
1024 1024  
1025 -Lua data type (including boolean, number, string, table)
1026 -
1027 -**Return:**
1028 -
1029 -Json format string
1030 -
1031 1031  (((
1032 -== **5.2 json.decode(string json_string)** ==
1019 +== **json.decode(string json_string)** ==
1033 1033  )))
1034 1034  
1035 -**Function:**
1022 +**Function:** Convert json string to lua data type
1036 1036  
1037 -Convert json string to lua data type
1024 +**Parameters: **//json_string//, string of json data structure
1038 1038  
1039 -**Parameters:**
1026 +**Return: **Lua data type
1040 1040  
1041 -//json_string//, string of json data structure
1042 -
1043 -**Return:**
1044 -
1045 -Lua data type
1046 -
1047 1047  (((
1048 -== **5.3 json.null** ==
1029 +== **json.null** ==
1049 1049  )))
1050 1050  
1051 1051  **Function:**
... ... @@ -1052,32 +1052,24 @@
1052 1052  
1053 1053  This method is used when assembling json data, which is equivalent to null in json. If the user directly uses json.null() to return the address of the function, it must be valid with the use of encode.
1054 1054  
1055 -**Parameters:**
1036 +**Parameters:** None
1056 1056  
1057 -None
1038 +**Return: **None
1058 1058  
1059 -**Return:**
1060 -
1061 -None
1062 -
1063 1063  = **6 Cloud mode** =
1064 1064  
1065 1065  The cloud interface is only used in cloud mode, and V-NET mode is not available.
1066 1066  
1067 1067  (((
1068 -== **6.1 bns_get_alldata()** ==
1045 +== **bns_get_alldata()** ==
1069 1069  )))
1070 1070  
1071 -**Function:**
1048 +**Function:** Obtain all monitoring points (point table) data configured by the end user
1072 1072  
1073 -Obtain all monitoring points (point table) data configured by the end user
1050 +**✎Note: **Assuming there are timing scripts A and B with a period of 1 second, if this function is called in script A, the data will not be obtained if called in script B
1074 1074  
1075 -Note: Assuming there are timing scripts A and B with a period of 1 second, if this function is called in script A, the data will not be obtained if called in script B
1052 +**Parameters:** None
1076 1076  
1077 -**Parameters:**
1078 -
1079 -None
1080 -
1081 1081  **Return:**
1082 1082  
1083 1083  Succeed: table two-dimensional array, the structure is as follows
... ... @@ -1107,13 +1107,11 @@
1107 1107  Failed: //table// empty table
1108 1108  
1109 1109  (((
1110 -== **6.2 bns_get_config(string from)** ==
1083 +== **bns_get_config(string from)** ==
1111 1111  )))
1112 1112  
1113 -**Function:**
1086 +**Function:** Obtain custom configuration parameters with the specified from type
1114 1114  
1115 -Obtain custom configuration parameters with the specified from type
1116 -
1117 1117  **parameter:**
1118 1118  
1119 1119  from type, there are the following two categories, the string must be all lowercase
... ... @@ -1131,13 +1131,11 @@
1131 1131  Failed~:// table// empty table
1132 1132  
1133 1133  (((
1134 -== **6.3 bns_get_data(string name, string data)** ==
1105 +== **bns_get_data(string name, string data)** ==
1135 1135  )))
1136 1136  
1137 -**Function:**
1108 +**Function:**write data to the name of the monitoring point
1138 1138  
1139 -write data to the name of the monitoring point
1140 -
1141 1141  **parameter:**
1142 1142  
1143 1143  //name //The name of the monitoring point
... ... @@ -1151,7 +1151,7 @@
1151 1151  Failed: nil
1152 1152  
1153 1153  (((
1154 -== **6.4 bns_get_data(string name)** ==
1123 +== **bns_get_data(string name)** ==
1155 1155  )))
1156 1156  
1157 1157  **Function:**
... ... @@ -1169,17 +1169,13 @@
1169 1169  Failed: nil
1170 1170  
1171 1171  (((
1172 -== **6.5 bns_get_datadesc()** ==
1141 +== **bns_get_datadesc()** ==
1173 1173  )))
1174 1174  
1175 -**Function:**
1144 +**Function: **Obtain all configured communication ports and monitoring point information
1176 1176  
1177 -Obtain all configured communication ports and monitoring point information
1146 +**Parameters:** None
1178 1178  
1179 -**Parameters:**
1180 -
1181 -None
1182 -
1183 1183  **Return:**
1184 1184  
1185 1185  Succeed: table three-dimensional array, the structure is as follows
... ... @@ -1232,17 +1232,13 @@
1232 1232  Failed~:// table// empty table
1233 1233  
1234 1234  (((
1235 -== **6.6 bns_get_machineinfo()** ==
1200 +== **bns_get_machineinfo()** ==
1236 1236  )))
1237 1237  
1238 -**Function:**
1203 +**Function:** get machine information
1239 1239  
1240 -get machine information
1205 +**Parameters:** None
1241 1241  
1242 -**Parameters:**
1243 -
1244 -None
1245 -
1246 1246  **Return:**
1247 1247  
1248 1248  Succeed: 3 string type results (model, machine code, software version)
... ... @@ -1250,13 +1250,11 @@
1250 1250  Failed: nil
1251 1251  
1252 1252  (((
1253 -== **6.7 bns_get_groupdata(string name)** ==
1214 +== **bns_get_groupdata(string name)** ==
1254 1254  )))
1255 1255  
1256 -**Function:**
1217 +**Function:** Get all monitoring point data under the specified group name
1257 1257  
1258 -Get all monitoring point data under the specified group name
1259 -
1260 1260  **parameter:**
1261 1261  
1262 1262  //Name  // group name
... ... @@ -1268,17 +1268,13 @@
1268 1268  Failed: //table// empty table
1269 1269  
1270 1270  (((
1271 -== **6.8 bns_get_groupdesc()** ==
1230 +== **bns_get_groupdesc()** ==
1272 1272  )))
1273 1273  
1274 -**Function:**
1233 +**Function:** Get all group information
1275 1275  
1276 -Get all group information
1235 +**Parameters:** None
1277 1277  
1278 -**Parameters:**
1279 -
1280 -None
1281 -
1282 1282  **Return:**
1283 1283  
1284 1284  Succeed: //table// two-dimensional array, the structure is as follows
... ... @@ -1292,17 +1292,13 @@
1292 1292  Failed: //table  // empty table
1293 1293  
1294 1294  (((
1295 -== **6.9 bns_get_onecache(string msg)** ==
1250 +== **bns_get_onecache(string msg)** ==
1296 1296  )))
1297 1297  
1298 -**Function:**
1253 +**Function:** Save a message to the cache file, which can be stored after power failure. Store up to 2000 items, delete the old and save the new in a rolling manner when it is full.
1299 1299  
1300 -Save a message to the cache file, which can be stored after power failure. Store up to 2000 items, delete the old and save the new in a rolling manner when it is full.
1255 +**Parameters: **//msg// String
1301 1301  
1302 -**Parameters:**
1303 -
1304 -//msg// String
1305 -
1306 1306  **Return:**
1307 1307  
1308 1308  Succeed: true
... ... @@ -1310,17 +1310,13 @@
1310 1310  Failed: nil
1311 1311  
1312 1312  (((
1313 -== **6.10 bns_get_allcache()** ==
1264 +== **bns_get_allcache()** ==
1314 1314  )))
1315 1315  
1316 -**Function:**
1267 +**Function:** Get all the cached content (once the internal cache file will be emptied)
1317 1317  
1318 -Get all the cached content (once the internal cache file will be emptied)
1269 +**Parameters:** None
1319 1319  
1320 -**Parameters:**
1321 -
1322 -None
1323 -
1324 1324  **Return:**
1325 1325  
1326 1326  Succeed: //table// one-dimensional array
... ... @@ -1348,182 +1348,211 @@
1348 1348  Network communication includes Http request interface, this document does not provide interface description, please refer to the online document for how to use it.
1349 1349  
1350 1350  (((
1351 -== **7.1 http request** ==
1298 +== **http request** ==
1352 1352  )))
1353 1353  
1354 1354  [[http:~~/~~/w3.impa.br/~~~~diego/software/luasocket/http.html#request>>url:http://w3.impa.br/~~diego/software/luasocket/http.html#request]]
1355 1355  
1356 -(((
1357 -= **8 Internal register** =
1358 -)))
1303 +== **https request** ==
1359 1359  
1360 -The internal registers of the box are divided into bit addresses and word addresses, which can be accessed in two ways (taking HDW as an example):
1305 +Example
1361 1361  
1362 -**~1. **Access by word, prefix @W_HDW,
1307 +{{code language="LUA"}}
1308 +local json = require("json")
1363 1363  
1364 -For example: @W_HDW0 represents the first word of the system data area, @W_HDW1 represents the second word of the system data area.
1310 +local https = require("https")
1365 1365  
1366 -**2. **Access in bit mode, the prefix is @B_HDX, the number in front of "." indicates the number of the word, and the number behind is the bit number of the word.
1312 +functions https_demo.main()
1367 1367  
1368 -For example: @B_HDX1020.12, its meaning is to access the system data area in bit mode, the specific location is the 13th bit of the 1020th word.
1314 +local url = "https://XXXXXXXXXXXXXXXXXXXXXXXXXX"
1369 1369  
1370 -**✎Note: **
1316 +local body = {}
1371 1371  
1372 -**~1. **The address in @B_HDX is taken from the word in @W_HDW, so pay special attention when using the address.
1318 +body["XXXXXX"] = "XXXXX"
1373 1373  
1374 -For example, @B_HDX1020.12 is to access the 13th bit of the 1020th word. The value of this bit is the same as the word obtained by @W_HDW001020. The 13th bit of this word is actually the same bit as @B_HDX1020.12.
1320 +body["XXXXXXX"] = "XXXXXXXXXXX"
1375 1375  
1376 -**2.**The address of the bit address @B_HDX has a decimal point, while the word address is an integer.
1322 +local bodyJson = json.encode(body)
1377 1377  
1378 -(((
1379 -== **8.1 Data storage area(HDW/HDX)** ==
1380 -)))
1324 +local header = {}
1381 1381  
1382 -The system storage area (HDW) of the V-BOX is used to store temporary data:
1326 +header["content-type"] = "application/json"
1383 1383  
1384 -~1. Access by word, the number range is: "@W_HDW0"-"@W_HDW299999".
1328 +local result_table, code, headers, status = https.request(url,
1385 1385  
1386 -2. Access in bit mode, the number range is: "@B_HDX0.0"-"@B_HDX299999.15".
1330 +bodyJson)
1387 1387  
1388 -(((
1389 -== **8.2 Special data area (HSW/HSX)** ==
1390 -)))
1332 +if code == 200 then
1391 1391  
1392 -**✎Note: **
1334 +print("https suc")
1393 1393  
1394 -//HSW// is a system special register, so please refer to the system special register table during use. Do not use addresses that are not mentioned in the table, and use the addresses stated in the table with caution (example: restart ("@W_HSW0") Writing a value of 1 will cause V-BOX to restart).
1336 +return true
1395 1395  
1396 -//Without any conditions. Direct use ("@W_HSW0") will cause the V-BOX to restart continuously.// When using ("@W_HSW0") address, please add judgment conditions, such as: connection to MQTT fails, there is no network, the value of a PLC address meets the condition or counts to a certain value.
1338 +else
1397 1397  
1398 -1.The system data area (HSW) of the box is used for system special registers (system reserved). Use //addr_getword// to obtain the following register information:
1340 +print("https fail")
1399 1399  
1400 -(% class="table-bordered" %)
1401 -|address|function|Read and write status: read only, write only, read and write
1402 -|@W_HSW0|restart|read and write
1403 -|@W_HSW1|Box time: year|read and write
1404 -|@W_HSW2|Box time: month|read and write
1405 -|@W_HSW3|Box time: day|read and write
1406 -|@W_HSW4|Box time: hour|read and write
1407 -|@W_HSW5|Box time: minute|read and write
1408 -|@W_HSW6|Box time: second|read and write
1409 -|@W_HSW7|Box time: week|read and write
1410 -|@W_HSW8|Ethernet IP1|read only
1411 -|@W_HSW9|Ethernet IP2|read only
1412 -|@W_HSW10|Ethernet IP3|read only
1413 -|@W_HSW11|Ethernet IP4|read only
1414 -|@W_HSW12|Ethernet Mask 1|read only
1415 -|@W_HSW13|Ethernet Mask 2|read only
1416 -|@W_HSW14|Ethernet Mask 3|read only
1417 -|@W_HSW15|Ethernet Mask 4|read only
1418 -|@W_HSW16|Ethernet Gateway 1|read only
1419 -|@W_HSW17|Ethernet Gateway 2|read only
1420 -|@W_HSW18|Ethernet Gateway 3|read only
1421 -|@W_HSW19|Ethernet Gateway 4|read only
1422 -|@W_HSW21|Ethernet MAC1|read only
1423 -|@W_HSW22|Ethernet MAC2|read only
1424 -|@W_HSW23|Ethernet MAC3|read only
1425 -|@W_HSW24|Ethernet MAC4|read only
1426 -|@W_HSW25|Ethernet MAC3|read only
1427 -|@W_HSW26|Ethernet MAC4|read only
1428 -|@W_HSW128|WIFI IP1|read only
1429 -|@W_HSW129|WIFI IP2|read only
1430 -|@W_HSW130|WIFI IP3|read only
1431 -|@W_HSW131|WIFI IP4|read only
1432 -|@W_HSW132|WIFI Mask 1|read only
1433 -|@W_HSW133|WIFI Mask 2|read only
1434 -|@W_HSW134|WIFI Mask 3|read only
1435 -|@W_HSW135|WIFI Mask 4|read only
1436 -|@W_HSW136|WIFI Gateway 1|read only
1437 -|@W_HSW137|WIFI Gateway 2|read only
1438 -|@W_HSW138|WIFI Gateway 3|read only
1439 -|@W_HSW139|WIFI Gateway 4|read only
1440 -|@W_HSW140|WIFI MAC1|read only
1441 -|@W_HSW141|WIFI MAC2|read only
1442 -|@W_HSW142|WIFI MAC3|read only
1443 -|@W_HSW143|WIFI MAC4|read only
1444 -|@W_HSW144|WIFI MAC5|read only
1445 -|@W_HSW145|WIFI MAC6|read only
1446 -|@W_HSW146|WIFI Signal value|read only
1447 -|@W_HSW148|4G IP1|read only
1448 -|@W_HSW149|4G IP2|read only
1449 -|@W_HSW150|4G IP3|read only
1450 -|@W_HSW151|4G IP4|read only
1451 -|@W_HSW152|4G Mask 1|read only
1452 -|@W_HSW153|4G Mask 2|read only
1453 -|@W_HSW154|4G Mask 3|read only
1454 -|@W_HSW155|4G Mask 4|read only
1455 -|@W_HSW156|4G Gateway 1|read only
1456 -|@W_HSW157|4G Gateway 2|read only
1457 -|@W_HSW158|4G Gateway 3|read only
1458 -|@W_HSW159|4G Gateway 4|read only
1459 -|@W_HSW160|4G MAC1|read only
1460 -|@W_HSW161|4G MAC2|read only
1461 -|@W_HSW162|4G MAC3|read only
1462 -|@W_HSW163|4G MAC4|read only
1463 -|@W_HSW164|4G MAC5|read only
1464 -|@W_HSW165|4G MAC6|read only
1465 -|@W_HSW166|4G Signal value|read only
1342 +return nil
1466 1466  
1467 -2. Other
1344 +end
1468 1468  
1469 -2.1 Access password: addr_getstring("@W_HSW27", 16)
1346 +end
1347 +{{/code}}
1470 1470  
1471 -2.2 Machine code: addr_getstring("@W_HSW60", 64)
1349 +(((
1350 += **8 Internal register** =
1351 +)))
1472 1472  
1473 -2.3 Positioning method (@W_HSW167): (read only)
1353 +The internal registers of the box are divided into bit addresses and word addresses, which can be accessed in two ways (taking HDW as an example):
1474 1474  
1475 -~1. Latitude and longitude
1355 +**Access by word, prefix @W_HDW.**
1476 1476  
1477 -Longitude: addr_getdouble("@W_HSW168") (read only)
1357 +For example: @W_HDW0 represents the first word of the system data area, @W_HDW1 represents the second word of the system data area.
1478 1478  
1479 -Latitude: addr_getdouble("@W_HSW172") (read only)
1359 +**Access in bit mode, the prefix is @B_HDX, the number in front of "." indicates the number of the word, and the number behind is the bit number of the word.**
1480 1480  
1481 -2. Base station positioning
1361 +For example: @B_HDX1020.12, its meaning is to access the system data area in bit mode, the specific location is the 13th bit of the 1020th word.
1482 1482  
1483 -LAC: addr_getdword("@W_HSW168") (read only)
1363 +(% class="box infomessage" %)
1364 +(((
1365 +**✎Note: **
1484 1484  
1485 -CI: addr_getdword("@W_HSW172") (read only)
1367 +* The address in @B_HDX is taken from the word in @W_HDW, so pay special attention when using the address.
1368 +** For example, @B_HDX1020.12 is to access the 13th bit of the 1020th word. The value of this bit is the same as the word obtained by @W_HDW001020. The 13th bit of this word is actually the same bit as @B_HDX1020.12.
1369 +* The address of the bit address @B_HDX has a decimal point, while the word address is an integer.
1370 +)))
1486 1486  
1487 -2.4 Convert base station to latitude and longitude via API
1488 1488  
1489 -Longitude: addr_getdouble("@W_HSW187") (read only)
1490 1490  
1491 -Latitude: addr_getdouble("@W_HSW183") (read only)
1374 +(((
1375 +== **Data storage area(HDW/HDX)** ==
1376 +)))
1492 1492  
1493 -2.5 Operator information: addr_getdword("@W_HSW181") (read only)
1378 +The system storage area (HDW) of the V-BOX is used to store temporary data:
1494 1494  
1495 -2.6 Networking mode: addr_getword("@W_HSW177") (read only)
1380 +1. Access by word, the number range is: "@W_HDW0"-"@W_HDW299999".
1381 +1. Access in bit mode, the number range is: "@B_HDX0.0"-"@B_HDX299999.15".
1496 1496  
1497 -0: Ethernet, 1: WIFI, 2: 4G, 3: 2G
1383 +(((
1384 +== **8.2 Special data area (HSW/HSX)** ==
1498 1498  
1499 -2.7 Map fence flag: addr_getword("@W_HSW178") (read only)
1386 +(% class="box infomessage" %)
1387 +(((
1388 +**✎Note: **
1500 1500  
1501 -0: No map fence is drawn
1390 +* //HSW// is a system special register, so please refer to the system special register table during use. Do not use addresses that are not mentioned in the table, and use the addresses stated in the table with caution (example: restart ("@W_HSW0") Writing a value of 1 will cause V-BOX to restart).
1391 +* //Without any conditions. Direct use ("@W_HSW0") will cause the V-BOX to restart continuously.// When using ("@W_HSW0") address, please add judgment conditions, such as: connection to MQTT fails, there is no network, the value of a PLC address meets the condition or counts to a certain value.
1392 +)))
1393 +)))
1502 1502  
1503 -1: Draw a map fence and the box is in the fence
1395 +The system data area (HSW) of the box is used for system special registers (system reserved). Use //addr_getword// to obtain the following register information:
1504 1504  
1505 -2: Draw a map fence and the box is not in the fence
1397 +(% class="table-bordered" %)
1398 +|=(% style="width: 151px;" %)address|=(% style="width: 169px;" %)function|=(% style="width: 456px;" %)Read and write status: read only, write only, read and write
1399 +|(% style="width:151px" %)@W_HSW0|(% style="width:169px" %)restart|(% style="width:456px" %)read and write
1400 +|(% style="width:151px" %)@W_HSW1|(% style="width:169px" %)Box time: year|(% style="width:456px" %)read and write
1401 +|(% style="width:151px" %)@W_HSW2|(% style="width:169px" %)Box time: month|(% style="width:456px" %)read and write
1402 +|(% style="width:151px" %)@W_HSW3|(% style="width:169px" %)Box time: day|(% style="width:456px" %)read and write
1403 +|(% style="width:151px" %)@W_HSW4|(% style="width:169px" %)Box time: hour|(% style="width:456px" %)read and write
1404 +|(% style="width:151px" %)@W_HSW5|(% style="width:169px" %)Box time: minute|(% style="width:456px" %)read and write
1405 +|(% style="width:151px" %)@W_HSW6|(% style="width:169px" %)Box time: second|(% style="width:456px" %)read and write
1406 +|(% style="width:151px" %)@W_HSW7|(% style="width:169px" %)Box time: week|(% style="width:456px" %)read and write
1407 +|(% style="width:151px" %)@W_HSW8|(% style="width:169px" %)Ethernet IP1|(% style="width:456px" %)read only
1408 +|(% style="width:151px" %)@W_HSW9|(% style="width:169px" %)Ethernet IP2|(% style="width:456px" %)read only
1409 +|(% style="width:151px" %)@W_HSW10|(% style="width:169px" %)Ethernet IP3|(% style="width:456px" %)read only
1410 +|(% style="width:151px" %)@W_HSW11|(% style="width:169px" %)Ethernet IP4|(% style="width:456px" %)read only
1411 +|(% style="width:151px" %)@W_HSW12|(% style="width:169px" %)Ethernet Mask 1|(% style="width:456px" %)read only
1412 +|(% style="width:151px" %)@W_HSW13|(% style="width:169px" %)Ethernet Mask 2|(% style="width:456px" %)read only
1413 +|(% style="width:151px" %)@W_HSW14|(% style="width:169px" %)Ethernet Mask 3|(% style="width:456px" %)read only
1414 +|(% style="width:151px" %)@W_HSW15|(% style="width:169px" %)Ethernet Mask 4|(% style="width:456px" %)read only
1415 +|(% style="width:151px" %)@W_HSW16|(% style="width:169px" %)Ethernet Gateway 1|(% style="width:456px" %)read only
1416 +|(% style="width:151px" %)@W_HSW17|(% style="width:169px" %)Ethernet Gateway 2|(% style="width:456px" %)read only
1417 +|(% style="width:151px" %)@W_HSW18|(% style="width:169px" %)Ethernet Gateway 3|(% style="width:456px" %)read only
1418 +|(% style="width:151px" %)@W_HSW19|(% style="width:169px" %)Ethernet Gateway 4|(% style="width:456px" %)read only
1419 +|(% style="width:151px" %)@W_HSW21|(% style="width:169px" %)Ethernet MAC1|(% style="width:456px" %)read only
1420 +|(% style="width:151px" %)@W_HSW22|(% style="width:169px" %)Ethernet MAC2|(% style="width:456px" %)read only
1421 +|(% style="width:151px" %)@W_HSW23|(% style="width:169px" %)Ethernet MAC3|(% style="width:456px" %)read only
1422 +|(% style="width:151px" %)@W_HSW24|(% style="width:169px" %)Ethernet MAC4|(% style="width:456px" %)read only
1423 +|(% style="width:151px" %)@W_HSW25|(% style="width:169px" %)Ethernet MAC3|(% style="width:456px" %)read only
1424 +|(% style="width:151px" %)@W_HSW26|(% style="width:169px" %)Ethernet MAC4|(% style="width:456px" %)read only
1425 +|(% style="width:151px" %)@W_HSW128|(% style="width:169px" %)WIFI IP1|(% style="width:456px" %)read only
1426 +|(% style="width:151px" %)@W_HSW129|(% style="width:169px" %)WIFI IP2|(% style="width:456px" %)read only
1427 +|(% style="width:151px" %)@W_HSW130|(% style="width:169px" %)WIFI IP3|(% style="width:456px" %)read only
1428 +|(% style="width:151px" %)@W_HSW131|(% style="width:169px" %)WIFI IP4|(% style="width:456px" %)read only
1429 +|(% style="width:151px" %)@W_HSW132|(% style="width:169px" %)WIFI Mask 1|(% style="width:456px" %)read only
1430 +|(% style="width:151px" %)@W_HSW133|(% style="width:169px" %)WIFI Mask 2|(% style="width:456px" %)read only
1431 +|(% style="width:151px" %)@W_HSW134|(% style="width:169px" %)WIFI Mask 3|(% style="width:456px" %)read only
1432 +|(% style="width:151px" %)@W_HSW135|(% style="width:169px" %)WIFI Mask 4|(% style="width:456px" %)read only
1433 +|(% style="width:151px" %)@W_HSW136|(% style="width:169px" %)WIFI Gateway 1|(% style="width:456px" %)read only
1434 +|(% style="width:151px" %)@W_HSW137|(% style="width:169px" %)WIFI Gateway 2|(% style="width:456px" %)read only
1435 +|(% style="width:151px" %)@W_HSW138|(% style="width:169px" %)WIFI Gateway 3|(% style="width:456px" %)read only
1436 +|(% style="width:151px" %)@W_HSW139|(% style="width:169px" %)WIFI Gateway 4|(% style="width:456px" %)read only
1437 +|(% style="width:151px" %)@W_HSW140|(% style="width:169px" %)WIFI MAC1|(% style="width:456px" %)read only
1438 +|(% style="width:151px" %)@W_HSW141|(% style="width:169px" %)WIFI MAC2|(% style="width:456px" %)read only
1439 +|(% style="width:151px" %)@W_HSW142|(% style="width:169px" %)WIFI MAC3|(% style="width:456px" %)read only
1440 +|(% style="width:151px" %)@W_HSW143|(% style="width:169px" %)WIFI MAC4|(% style="width:456px" %)read only
1441 +|(% style="width:151px" %)@W_HSW144|(% style="width:169px" %)WIFI MAC5|(% style="width:456px" %)read only
1442 +|(% style="width:151px" %)@W_HSW145|(% style="width:169px" %)WIFI MAC6|(% style="width:456px" %)read only
1443 +|(% style="width:151px" %)@W_HSW146|(% style="width:169px" %)WIFI Signal value|(% style="width:456px" %)read only
1444 +|(% style="width:151px" %)@W_HSW148|(% style="width:169px" %)4G IP1|(% style="width:456px" %)read only
1445 +|(% style="width:151px" %)@W_HSW149|(% style="width:169px" %)4G IP2|(% style="width:456px" %)read only
1446 +|(% style="width:151px" %)@W_HSW150|(% style="width:169px" %)4G IP3|(% style="width:456px" %)read only
1447 +|(% style="width:151px" %)@W_HSW151|(% style="width:169px" %)4G IP4|(% style="width:456px" %)read only
1448 +|(% style="width:151px" %)@W_HSW152|(% style="width:169px" %)4G Mask 1|(% style="width:456px" %)read only
1449 +|(% style="width:151px" %)@W_HSW153|(% style="width:169px" %)4G Mask 2|(% style="width:456px" %)read only
1450 +|(% style="width:151px" %)@W_HSW154|(% style="width:169px" %)4G Mask 3|(% style="width:456px" %)read only
1451 +|(% style="width:151px" %)@W_HSW155|(% style="width:169px" %)4G Mask 4|(% style="width:456px" %)read only
1452 +|(% style="width:151px" %)@W_HSW156|(% style="width:169px" %)4G Gateway 1|(% style="width:456px" %)read only
1453 +|(% style="width:151px" %)@W_HSW157|(% style="width:169px" %)4G Gateway 2|(% style="width:456px" %)read only
1454 +|(% style="width:151px" %)@W_HSW158|(% style="width:169px" %)4G Gateway 3|(% style="width:456px" %)read only
1455 +|(% style="width:151px" %)@W_HSW159|(% style="width:169px" %)4G Gateway 4|(% style="width:456px" %)read only
1456 +|(% style="width:151px" %)@W_HSW160|(% style="width:169px" %)4G MAC1|(% style="width:456px" %)read only
1457 +|(% style="width:151px" %)@W_HSW161|(% style="width:169px" %)4G MAC2|(% style="width:456px" %)read only
1458 +|(% style="width:151px" %)@W_HSW162|(% style="width:169px" %)4G MAC3|(% style="width:456px" %)read only
1459 +|(% style="width:151px" %)@W_HSW163|(% style="width:169px" %)4G MAC4|(% style="width:456px" %)read only
1460 +|(% style="width:151px" %)@W_HSW164|(% style="width:169px" %)4G MAC5|(% style="width:456px" %)read only
1461 +|(% style="width:151px" %)@W_HSW165|(% style="width:169px" %)4G MAC6|(% style="width:456px" %)read only
1462 +|(% style="width:151px" %)@W_HSW166|(% style="width:169px" %)4G Signal value|(% style="width:456px" %)read only
1506 1506  
1507 -2.8 SIM card status addr_getword("@W_HSW179") (read only)
1464 +**Others**
1508 1508  
1509 -1: No card detected
1466 +* Access password: addr_getstring("@W_HSW27", 16)
1467 +* Machine code: addr_getstring("@W_HSW60", 64)
1468 +* Positioning method (@W_HSW167): (read only)
1469 +** Latitude and longitude
1470 +*** Longitude: addr_getdouble("@W_HSW168") (read only)
1471 +*** Latitude: addr_getdouble("@W_HSW172") (read only)
1472 +** Base station positioning
1473 +*** LAC: addr_getdword("@W_HSW168") (read only)
1474 +*** CI: addr_getdword("@W_HSW172") (read only)
1475 +* Convert base station to latitude and longitude via API
1476 +** Longitude: addr_getdouble("@W_HSW187") (read only)
1477 +** Latitude: addr_getdouble("@W_HSW183") (read only)
1478 +* Operator information: addr_getdword("@W_HSW181") (read only)
1479 +* Networking mode: addr_getword("@W_HSW177") (read only)
1480 +** 0: Ethernet
1481 +** 1: WIFI
1482 +** 2: 4G
1483 +** 3: 2G
1484 +* Map fence flag: addr_getword("@W_HSW178") (read only)
1485 +** 0: No map fence is drawn
1486 +** 1: Draw a map fence and the box is in the fence
1487 +** 2: Draw a map fence and the box is not in the fence
1488 +* SIM card status addr_getword("@W_HSW179") (read only)
1489 +** 1: No card detected
1490 +** 2: Card insertion detected
1491 +** 3: The card status is abnormal
1492 +* MQTT status addr_getword("@W_HSW180") (read only)
1493 +** 1: online, 2: offline
1494 +* IO interface, X is read only, Y is read and write (H series)
1495 +** addr_getbit(addr1), addr_setbit(addr2)
1496 +** addr1:"@B_Y0" "@B_Y1" "@B_X0" "@B_X1"
1497 +** addr2:"@B_Y0" "@B_Y1"
1498 +* Obtaining IMEI (read only)
1499 +** addr_getstring("@W_HSW191",17)
1500 +* Obtaining ICCID (read only)
1501 +** addr_getstring("@W_HSW225",15)
1510 1510  
1511 -2: Card insertion detected
1512 -
1513 -3: The card status is abnormal
1514 -
1515 -2.9 MQTT status addr_getword("@W_HSW180") (read only)
1516 -
1517 -1: online, 2: offline
1518 -
1519 -2.10 IO interface, X is read only, Y is read and write (H series)
1520 -
1521 -addr_getbit(addr1), addr_setbit(addr2)
1522 -
1523 -addr1:"@B_Y0" "@B_Y1" "@B_X0" "@B_X1"
1524 -
1525 -addr2:"@B_Y0" "@B_Y1"
1526 -
1527 1527  (((
1528 1528  = **9 General Functions** =
1529 1529  )))