X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fubus.git;a=blobdiff_plain;f=lua%2Ftest_client.lua;fp=lua%2Ftest_client.lua;h=f55c32742d390fc78282a8b0a95be7402c06dfdf;hp=0000000000000000000000000000000000000000;hb=73380e45c9c73a425b304a9081be62d2aeaa5a3f;hpb=c382792d9893ed1b0c1e1b0db2ad9a7eaa7a78e1 diff --git a/lua/test_client.lua b/lua/test_client.lua new file mode 100755 index 0000000..f55c327 --- /dev/null +++ b/lua/test_client.lua @@ -0,0 +1,39 @@ +#!/usr/bin/env lua + +require "ubus" +require "uloop" + +uloop.init() + +local conn = ubus.connect() +if not conn then + error("Failed to connect to ubusd") +end + +local namespaces = conn:objects() +for i, n in ipairs(namespaces) do + print("namespace=" .. n) + local signatures = conn:signatures(n) + for p, s in pairs(signatures) do + print("\tprocedure=" .. p) + for k, v in pairs(s) do + print("\t\tattribute=" .. k .. " type=" .. v) + end + end +end + +local status = conn:call("test", "hello", { msg = "eth0" }) + +for k, v in pairs(status) do + print("key=" .. k .. " value=" .. tostring(v)) +end + +local status = {conn:call("test", "hello1", { msg = "eth0" })} + +for a = 1, #status do + for k, v in pairs(status[a]) do + print("key=" .. k .. " value=" .. tostring(v)) + end +end + +uloop.run()