Changes for page 01 Lua Functions

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

From version 5.38
edited by Stone Wu
on 2022/07/12 11:10
Change comment: (Autosaved)
To version 5.29
edited by Stone Wu
on 2022/07/12 10:40
Change comment: (Autosaved)

Summary

Details

Page properties
Content
... ... @@ -1781,9 +1781,9 @@
1781 1781  end
1782 1782  {{/code}}
1783 1783  
1784 -= **10 Special function for V-NET** =
1784 += **11 Special function for V-NET** =
1785 1785  
1786 -== **normal_get_alldata()** ==
1786 +**normal_get_alldata()**
1787 1787  
1788 1788  **Function: **Obtain the data of all the monitoring points
1789 1789  
... ... @@ -1793,255 +1793,7 @@
1793 1793  
1794 1794  Succeed: table two-dimensional arrays, as follows:
1795 1795  
1796 -* Each item is a monitoring point and contains 4 attributes:
1797 -** 1: ID
1798 -** 2: status
1799 -** 3: tag name
1800 -** 4: value
1801 -* Status contains 3 enumerated values
1802 -** 0: offline
1803 -** 1: online
1804 -** 2: timeout
1805 -* Customization returns an empty table if there is no configuration, otherwise returns "field name/field content"
1796 +* Each item is a monitoring point and contains 4 attributes: ID, status, tag name, value)
1797 +* Status contains 3 enumerated values (0: offline, 1: online, 2: timeout) Customization returns an empty table if there is no configuration, and vice versa, with "field name/field content"
1806 1806  
1807 -For example:
1808 -
1809 -{
1810 -
1811 -[1]= {[1]=1234, [2]=1, [3]='temp', [4]='23.5'},
1812 -
1813 -[2]= {[1]=1235, [2]=1, [3]='humi', [4]='67'},
1814 -
1815 -...
1816 -
1817 -[n]= {[1]=xxxx, [2]=x, [3]='xxxx', [4]='xx.x'},
1818 -
1819 -}
1820 -
1821 -Failed: table, empty table
1822 -
1823 -== **normal_setdata_byname(string name, string data)** ==
1824 -
1825 -**Function:** Write data to the monitoring point name
1826 -
1827 -**Parameter:**
1828 -
1829 -name: the name of monitoring point
1830 -
1831 -data: the data to be written
1832 -
1833 -**Return:**
1834 -
1835 -Succeed: string: The value of the monitor point before it is written
1836 -
1837 -Failed: mil
1838 -
1839 -== **normal_getdata_byname(string name)** ==
1840 -
1841 -
1842 -
1843 -**Function:** Read the data of the monitoring point name
1844 -
1845 -**Parameter:**
1846 -
1847 -name: the name of monitoring point
1848 -
1849 -**Return:**
1850 -
1851 -Succeed: string
1852 -
1853 -Failed: mil
1854 -
1855 -= **11 MySQL database operation** =
1856 -
1857 -== **luaMySql.init(string sourcename, string username, string password, string host, number port, string character)** ==
1858 -
1859 -**Function:** Configure database connection parameters
1860 -
1861 -**Parameter:**
1862 -
1863 -sourcename: the name of database
1864 -
1865 -username: the username of the connection
1866 -
1867 -password: the password of the connection
1868 -
1869 -host: the host name of the connection
1870 -
1871 -port: the host port of the connection
1872 -
1873 -character: the character set of the connection
1874 -
1875 -**Return:**
1876 -
1877 -Succeed: string
1878 -
1879 -Failed: multi
1880 -
1881 -== **luaMySql.exec(string statement)** ==
1882 -
1883 -**Function:** Execute the given SQL statement without returning the result set (add, delete, change)
1884 -
1885 -**Parameter:**
1886 -
1887 -statement: the given SQL statement
1888 -
1889 -**Return:**
1890 -
1891 -Succeed: status: returns the number of rows affected by SQL statement execution.
1892 -
1893 -Failed: mil, errorString
1894 -
1895 -== **luaMySql.execWithResult(string statement)** ==
1896 -
1897 -**Function:** Execute the given SQL statement returning the result set (check)
1898 -
1899 -**Parameter:**
1900 -
1901 -statement: the given SQL statement
1902 -
1903 -**Return:**
1904 -
1905 -Succeed: table: returns the result set
1906 -
1907 -Failed: mil, errorString
1908 -
1909 -For example:
1910 -
1911 -{{code language="LUA"}}
1912 -mysql = require"mysqlclient"
1913 -
1914 -function DataInitRight()
1915 -
1916 -local dbName = "db_lua1"
1917 -
1918 -local user = "root"
1919 -
1920 -local pwd = "123456"
1921 -
1922 -local host = "192.168.56.186"
1923 -
1924 -local port = 3306
1925 -local character = "UTF8"
1926 -
1927 -mysql.init(dbName, user, pwd, host, port, character)
1928 -
1929 -end
1930 -
1931 -function ExecFunc()
1932 -
1933 -status, errorString = mysql.exec("delete from tb_lua1 where mykey =
1934 -
1935 -10;")
1936 -
1937 -if nil == status then
1938 -
1939 -print("ExecFunc() error:", errorString)
1940 -
1941 -return -1
1942 -
1943 -else
1944 -
1945 -print("the number of rows affected by the command:", status)
1946 -
1947 -end
1948 -
1949 -return 0
1950 -
1951 -end
1952 -
1953 -function ExecWithResultFunc()
1954 -
1955 -status, errorString = mysql.execWithResult("select * from tb_lua1;")
1956 -
1957 -if nil == status then
1958 -
1959 -print("ExecWithResultFunc() error:", errorString)
1960 -
1961 -return -1
1962 -
1963 -else
1964 -
1965 -print("ExecWithResultFunc()
1966 -
1967 -success
1968 -
1969 -: status
1970 -
1971 -type
1972 -
1973 -=
1974 -
1975 -",
1976 -
1977 -type(status))
1978 -
1979 -print("ExecWithResultFunc() success : status len = ", #status)
1980 -
1981 -local num = #status
1982 -
1983 -local i = 1
1984 -
1985 -if num > 0 then
1986 -
1987 -for i = 1, num, 1 do
1988 -
1989 -local var = string.format("select result[%d] :mykey = %d,
1990 -
1991 -value = %s", i, status[i].mykey, status[i].value)
1992 -
1993 -print(var)
1994 -
1995 -end
1996 -
1997 -end
1998 -
1999 -print("---------------")
2000 -
2001 -end
2002 -
2003 -return 0
2004 -end
2005 -
2006 -function luaMysql_apiTest.main()
2007 -
2008 -print("script running ...")
2009 -
2010 -DataInitRight()
2011 -
2012 ---use exec demo
2013 -
2014 -if ExecFunc() < 0 then
2015 -
2016 -return
2017 -
2018 -end
2019 -
2020 ---use execWithResult demo
2021 -
2022 -if ExecWithResultFunc() < 0 then
2023 -
2024 -return
2025 -
2026 -end
2027 -
2028 -print("script running success")
2029 -
2030 -end
2031 -{{/code}}
2032 -
2033 -= **12 Message summary algorithm** =
2034 -
2035 -== **hmac(string hash_func, string key, string message)** ==
2036 -
2037 -**Function:** Execute the given SQL statement returning the result set (check)
2038 -
2039 -**Parameter:**
2040 -
2041 -statement: the given SQL statement
2042 -
2043 -**Return:**
2044 -
2045 -Succeed: table: returns the result set
2046 -
2047 -Failed: mil, errorString
1799 +Failed: multi, error code