Files
herolib/lib/mycelium/grid3/rmb/rmb_calls_zos.v
2025-12-01 20:53:20 +01:00

31 lines
914 B
V

module rmb
import encoding.base64
import json
// if true the ZOS has a public ip address
pub fn (mut z RMBClient) zos_has_public_ipaddr(dst u32) !bool {
response := z.rmb_request('zos.network.public_config_get', dst, '')!
if response.err.message != '' {
return false
}
return true
}
pub fn (mut z RMBClient) get_zos_system_version(dst u32) !string {
response := z.rmb_request('zos.system.version', dst, '')!
if response.err.message != '' {
return error('${response.err.message}')
}
return base64.decode_str(response.dat)
}
// TODO: point to documentation where it explains what this means, what is zos_wg_port and why do we need it
pub fn (mut z RMBClient) get_zos_wg_ports(dst u32) ![]u16 {
response := z.rmb_request('zos.network.list_wg_ports', dst, '')!
if response.err.message != '' {
return error('${response.err.message}')
}
return json.decode([]u16, base64.decode_str(response.dat))
}