Changes for page 01 Lua Functions
Last modified by Theodore Xu on 2023/10/26 10:51
Summary
-
Page properties (3 modified, 0 added, 0 removed)
Details
- Page properties
-
- Parent
-
... ... @@ -1,1 +1,1 @@ 1 -V-BOX.V-Net.Manual.04 Lua Script.WebHome 1 +V-BOX.V-Net.1\.User Manual.04 Lua Script.WebHome - Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Hunter1 +XWiki.Stone - Content
-
... ... @@ -140,7 +140,7 @@ 140 140 141 141 Table 2-1 142 142 143 -(% class="box infomessage" %)143 +(% class="box errormessage" %) 144 144 ((( 145 145 **✎Note: **If HLword enters any other value, it will be treated as invalid. 146 146 ))) ... ... @@ -608,12 +608,11 @@ 608 608 Attempting to use a script to open a serial port in an unsupported mode will result in an error directly, as below. 609 609 610 610 |((( 611 -{{code language="LUA"}} 612 612 local setup = { 613 613 614 614 name = "COM2", 615 615 616 -mode = 422, -- COM2 does not support RS422 615 +mode = 422, ~-~- COM2 does not support RS422 617 617 618 618 ... 619 619 ... ... @@ -620,7 +620,6 @@ 620 620 } 621 621 622 622 serial.open(setup) 623 -{{/code}} 624 624 ))) 625 625 626 626 **Data bit:** ... ... @@ -1065,9 +1065,8 @@ 1065 1065 1066 1066 If there is no custom configuration, return an empty table, otherwise, return with "field name/field content" 1067 1067 1068 - **For example:**1066 +E.g: 1069 1069 1070 -{{code language="LUA"}} 1071 1071 { 1072 1072 1073 1073 [1]= {[1]=1234, [2]=1, [3]='temp', [4]='23.5', [5]={"fruit"="apple"}}, ... ... @@ -1080,8 +1080,7 @@ 1080 1080 1081 1081 } 1082 1082 1083 -Failed: table empty table 1084 -{{/code}} 1080 +Failed: //table// empty table 1085 1085 1086 1086 ((( 1087 1087 == **bns_get_config(string from)** == ... ... @@ -1161,15 +1161,13 @@ 1161 1161 1162 1162 Type (1: switch, 2: number, 3: string) 1163 1163 1164 -**For example:** 1160 +E.g: 1161 + { 1165 1165 1166 -{{code language="LUA"}} 1167 -{ 1163 +[1]={~-~-The first communication port 1168 1168 1169 -[1]={-- The first communication port1165 +[1]={~-~-monitoring point array of the first communication port 1170 1170 1171 -[1]={--monitoring point array of the first communication port 1172 - 1173 1173 [1]={[1]=11,[2]='data1',[3]=3,[4]=2}, 1174 1174 1175 1175 [2]={[1]=12,[2]='data2',[3]=3,[4]=2}, ... ... @@ -1176,23 +1176,23 @@ 1176 1176 1177 1177 ... 1178 1178 1179 -[n]={[1]=xx,[2]='datan',[3]=x,[4]=x},--n monitoring points 1173 +[n]={[1]=xx,[2]='datan',[3]=x,[4]=x},~-~-n monitoring points 1180 1180 1181 1181 }, 1182 1182 1183 -[2]=14, --ID 1177 +[2]=14, ~-~-ID 1184 1184 1185 -[3]='Modbus TCP' --n monitoring points 1179 +[3]='Modbus TCP' ~-~-n monitoring points 1186 1186 1187 1187 }, 1188 1188 1189 -[2]={--The second communication port 1183 +[2]={~-~-The second communication port 1190 1190 1191 -[1]={},--The monitoring point of the second communication port is not configured and is empty 1185 +[1]={},~-~-The monitoring point of the second communication port is not configured and is empty 1192 1192 1193 -[2]=15, --ID 1187 +[2]=15, ~-~-ID 1194 1194 1195 -[3]='WECON' --communication protocol name 1189 +[3]='WECON' ~-~-communication protocol name 1196 1196 1197 1197 }, 1198 1198 ... ... @@ -1199,7 +1199,6 @@ 1199 1199 ...n communication ports and so on 1200 1200 1201 1201 } 1202 -{{/code}} 1203 1203 1204 1204 Failed~:// table// empty table 1205 1205 ... ... @@ -1279,9 +1279,8 @@ 1279 1279 1280 1280 Succeed: //table// one-dimensional array 1281 1281 1282 - **For example:**1275 +E.g: 1283 1283 1284 -{{code language="LUA"}} 1285 1285 { 1286 1286 1287 1287 [1]="This is the oldest message", - the first is the oldest message ... ... @@ -1293,7 +1293,6 @@ 1293 1293 [n]="This is the latest message", - the last is the latest message 1294 1294 1295 1295 } 1296 -{{/code}} 1297 1297 1298 1298 Failede: nil 1299 1299 ... ... @@ -1311,7 +1311,7 @@ 1311 1311 1312 1312 == **https request** == 1313 1313 1314 - **For example:**1305 +Example: 1315 1315 1316 1316 {{code language="LUA"}} 1317 1317 local json = require("json") ... ... @@ -1367,7 +1367,7 @@ 1367 1367 1368 1368 **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.** 1369 1369 1370 - **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.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. 1371 1371 1372 1372 (% class="box infomessage" %) 1373 1373 ((( ... ... @@ -1389,7 +1389,7 @@ 1389 1389 1. Access in bit mode, the number range is: "@B_HDX0.0"-"@B_HDX299999.15". 1390 1390 1391 1391 ((( 1392 -== **Special data area (HSW/HSX)** == 1383 +== **8.2 Special data area (HSW/HSX)** == 1393 1393 1394 1394 (% class="box infomessage" %) 1395 1395 ((( ... ... @@ -1507,14 +1507,6 @@ 1507 1507 ** addr_getstring("@W_HSW191",17) 1508 1508 * Obtaining ICCID (read only) 1509 1509 ** addr_getstring("@W_HSW225",15) 1510 -* ((( 1511 -TSAP settings of Siemens LOGO PLC* ((( 1512 -addr_setword("@W_0#HSW1200",8192) means set the Local TSAP as 20.00 1513 -))) 1514 -* ((( 1515 -addr_setword("@W_0#HSW1201",4096) means set the Remote TSAP as 10.00 1516 -))) 1517 -))) 1518 1518 1519 1519 ((( 1520 1520 == **Power-down storage area (HAW/HAX)** == ... ... @@ -1551,7 +1551,7 @@ 1551 1551 Failed: multi 1552 1552 1553 1553 ((( 1554 -== **send_sms_ucs2(string number, string message)** == 1537 +== **9.2 send_sms_ucs2(string number, string message)** == 1555 1555 ))) 1556 1556 1557 1557 **Function:** ... ... @@ -1700,7 +1700,7 @@ 1700 1700 * number [prarm.refin]: whether each byte of the data to be measured is inverted by bit, true or false. 1701 1701 * number [prarm.refout]: after the calculation or before the heterodyning output, whether the whole data is inverted by bit, true or false. 1702 1702 1703 - **Return:**1686 +Return: 1704 1704 1705 1705 Success: crc object 1706 1706 ... ... @@ -1759,7 +1759,7 @@ 1759 1759 Failed: multi, error code 1760 1760 ))) 1761 1761 1762 - **For example:**1745 +Example: 1763 1763 1764 1764 {{code language="LUA"}} 1765 1765 function crcTest.main() ... ... @@ -1821,9 +1821,8 @@ 1821 1821 ** 2: timeout 1822 1822 * Customization returns an empty table if there is no configuration, otherwise returns "field name/field content" 1823 1823 1824 - **For example:**1807 +For example: 1825 1825 1826 -{{code language="LUA"}} 1827 1827 { 1828 1828 1829 1829 [1]= {[1]=1234, [2]=1, [3]='temp', [4]='23.5'}, ... ... @@ -1837,7 +1837,6 @@ 1837 1837 } 1838 1838 1839 1839 Failed: table, empty table 1840 -{{/code}} 1841 1841 1842 1842 == **normal_setdata_byname(string name, string data)** == 1843 1843 ... ... @@ -1853,10 +1853,11 @@ 1853 1853 1854 1854 Succeed: string: The value of the monitor point before it is written 1855 1855 1856 -Failed: nil1837 +Failed: mil 1857 1857 1858 1858 == **normal_getdata_byname(string name)** == 1859 1859 1841 + 1860 1860 **Function:** Read the data of the monitoring point name 1861 1861 1862 1862 **Parameter:** ... ... @@ -1867,262 +1867,8 @@ 1867 1867 1868 1868 Succeed: string 1869 1869 1870 -Failed: nil1852 +Failed: mil 1871 1871 1872 1872 = **11 MySQL database operation** = 1873 1873 1874 -== **luaMySql.init(string sourcename, string username, string password, string host, number port, string character)** == 1875 - 1876 -**Function:** Configure database connection parameters 1877 - 1878 -**Parameter:** 1879 - 1880 -sourcename: the name of database 1881 - 1882 -username: the username of the connection 1883 - 1884 -password: the password of the connection 1885 - 1886 -host: the host name of the connection 1887 - 1888 -port: the host port of the connection 1889 - 1890 -character: the character set of the connection 1891 - 1892 -**Return:** 1893 - 1894 -Succeed: string 1895 - 1896 -Failed: multi 1897 - 1898 -== **luaMySql.exec(string statement)** == 1899 - 1900 -**Function:** Execute the given SQL statement without returning the result set (add, delete, change) 1901 - 1902 -**Parameter:** 1903 - 1904 -statement: the given SQL statement 1905 - 1906 -**Return:** 1907 - 1908 -Succeed: status: returns the number of rows affected by SQL statement execution. 1909 - 1910 -Failed: nil, errorString 1911 - 1912 -== **luaMySql.execWithResult(string statement)** == 1913 - 1914 -**Function:** Execute the given SQL statement returning the result set (check) 1915 - 1916 -**Parameter:** 1917 - 1918 -statement: the given SQL statement 1919 - 1920 -**Return:** 1921 - 1922 -Succeed: table: returns the result set 1923 - 1924 -Failed: nil, errorString 1925 - 1926 -**For example:** 1927 - 1928 -{{code language="LUA"}} 1929 -mysql = require"mysqlclient" 1930 - 1931 -function DataInitRight() 1932 - 1933 -local dbName = "db_lua1" 1934 - 1935 -local user = "root" 1936 - 1937 -local pwd = "123456" 1938 - 1939 -local host = "192.168.56.186" 1940 - 1941 -local port = 3306 1942 -local character = "UTF8" 1943 - 1944 -mysql.init(dbName, user, pwd, host, port, character) 1945 - 1946 -end 1947 - 1948 -function ExecFunc() 1949 - 1950 -status, errorString = mysql.exec("delete from tb_lua1 where mykey = 1951 - 1952 -10;") 1953 - 1954 -if nil == status then 1955 - 1956 -print("ExecFunc() error:", errorString) 1957 - 1958 -return -1 1959 - 1960 -else 1961 - 1962 -print("the number of rows affected by the command:", status) 1963 - 1964 -end 1965 - 1966 -return 0 1967 - 1968 -end 1969 - 1970 -function ExecWithResultFunc() 1971 - 1972 -status, errorString = mysql.execWithResult("select * from tb_lua1;") 1973 - 1974 -if nil == status then 1975 - 1976 -print("ExecWithResultFunc() error:", errorString) 1977 - 1978 -return -1 1979 - 1980 -else 1981 - 1982 -print("ExecWithResultFunc() 1983 - 1984 -success 1985 - 1986 -: status 1987 - 1988 -type 1989 - 1990 -= 1991 - 1992 -", 1993 - 1994 -type(status)) 1995 - 1996 -print("ExecWithResultFunc() success : status len = ", #status) 1997 - 1998 -local num = #status 1999 - 2000 -local i = 1 2001 - 2002 -if num > 0 then 2003 - 2004 -for i = 1, num, 1 do 2005 - 2006 -local var = string.format("select result[%d] :mykey = %d, 2007 - 2008 -value = %s", i, status[i].mykey, status[i].value) 2009 - 2010 -print(var) 2011 - 2012 -end 2013 - 2014 -end 2015 - 2016 -print("---------------") 2017 - 2018 -end 2019 - 2020 -return 0 2021 -end 2022 - 2023 -function luaMysql_apiTest.main() 2024 - 2025 -print("script running ...") 2026 - 2027 -DataInitRight() 2028 - 2029 ---use exec demo 2030 - 2031 -if ExecFunc() < 0 then 2032 - 2033 -return 2034 - 2035 -end 2036 - 2037 ---use execWithResult demo 2038 - 2039 -if ExecWithResultFunc() < 0 then 2040 - 2041 -return 2042 - 2043 -end 2044 - 2045 -print("script running success") 2046 - 2047 -end 2048 -{{/code}} 2049 - 2050 -= **12 Message summary algorithm** = 2051 - 2052 -== **hmac(string hash_func, string key, string message)** == 2053 - 2054 -**Function:** HMAC calculate 2055 - 2056 -**Function name** 2057 - 2058 -hash_func: 2059 - 2060 -* [md5, sha1, sha224, sha256, sha384, sha512] 2061 -* [sha512_224, sha512_256, sha3_224, sha3_256] 2062 -* [sha3_384, sha3_512] 2063 - 2064 -**Parameter:** 2065 - 2066 -key: the key 2067 - 2068 -message: message content 2069 - 2070 -**Return:** 2071 - 2072 -Succeed: string, calculation result 2073 - 2074 -Failed: nil 2075 - 2076 -**For example:** 2077 - 2078 -{{code language="LUA"}} 2079 -local sha = require"sha2" 2080 - 2081 -function hmac_test.main() 2082 - 2083 -local hmac = sha.hmac 2084 - 2085 -print(hmac(sha.sha1, 2086 - 2087 -"your key", "your message")) 2088 - 2089 -end 2090 -{{/code}} 2091 - 2092 -== **sha(string message** == 2093 - 2094 -**Function:** SHA calculate 2095 - 2096 -**Function name:** 2097 - 2098 -sha: 2099 - 2100 -* sha1, sha224, sha256, sha384, sha512] 2101 -* [sha512_224, sha512_256, sha3_224, sha3_256] 2102 -* [sha3_384, sha3_512] 2103 - 2104 -**Parameter:** 2105 - 2106 -key: the key 2107 - 2108 -message: message content 2109 - 2110 -**Return:** 2111 - 2112 -Succeed: string, calculation result 2113 - 2114 -Failed: nil 2115 - 2116 -For example: 2117 - 2118 -{{code language="LUA"}} 2119 -local sha = require"sha2" 2120 - 2121 -function sha_test.main() 2122 - 2123 -local sha256 = sha.sha256 2124 - 2125 -print(sha256("your message")) 2126 - 2127 -end 2128 -{{/code}} 1856 +