Crates.io | mlua-arete-sdk |
lib.rs | mlua-arete-sdk |
version | 0.1.3 |
created_at | 2025-09-04 22:31:31.247198+00 |
updated_at | 2025-09-19 17:57:43.701973+00 |
description | Lua bindings for the Arete SDK for smart buildings. |
homepage | https://on-prem.net |
repository | https://gitlab.com/megalithic-llc/mlua-arete-sdk.git |
max_upload_size | |
id | 1824875 |
size | 7,783,181 |
Lua bindings for the Arete SDK for smart buildings.
Add to your Rust project using one of MLua's features: [lua51, lua52, lua53, lua54, luajit, luajit52].
$ cargo add mlua-arete-sdk --features luajit
use mlua::Lua;
let lua = Lua::new();
mlua_arete_sdk::preload(&lua);
let script = r#"
local arete_sdk = require('arete-sdk')
local NODE_ID = 'ozr9fZbU8i7hMdjEjuTS2o'
local NODE_NAME = 'arete-sdk-01-switch'
local CONTEXT_ID = 'uRLoYsXEY7nsbs9fRdjM8A'
local CONTEXT_NAME = 'Building 23, Office 41-B'
local PADI_LIGHT_PROFILE = 'padi.light'
local client = arete_sdk.Client:new('wss://dashboard.test.cns.dev:443')
client:waitForOpen()
local system = client:system()
local node = system:node(NODE_ID, NODE_NAME, false)
local context = node:context(CONTEXT_ID, CONTEXT_NAME)
local provider = context:provider(PADI_LIGHT_PROFILE)
provider:put('sOut', 1)
"#;
lua.load(script).exec().unwrap();
$ make check