参数读写
读写服务端配置参数(全局 / 设备作用域)。
ti_set_parameter
设置参数。
参数 Key 为注册表中的完整参数名(区分大小写,UTF-8 编码);全局 / 设备作用域由参数注册表定义。
- client: 客户端句柄。
- key: 参数名(区分大小写,UTF-8 编码),支持层级命名。
- value: 参数值(字符串格式,服务端负责类型解析)。
- 返回:
TI_OK— 设置成功 - 返回:
TI_ERR_NOT_CONNECTED— 未连接 - 返回:
TI_ERR_INVALID_ARG— client / key / value 为 NULL - 返回:
TI_ERR_SERVER— 服务端拒绝该参数
使用示例:
// 全局参数
ti_set_parameter(cli, "PRINT_SPEED_TIMER", "100");
// 设备参数
ti_set_parameter(cli, "SYSTEM_DATETIME", "2026-08-18 10:00:00");
参见: ti_get_parameter()
ti_get_parameter
获取参数(单次调用)。
不再需要"两次调用"模式——调用方预分配至少 TI_MAX_PARAM_VALUE 字节的缓冲区,
传入 buf_size 告知容量,一次调用即可获取参数值。
全局 / 设备作用域由参数注册表定义(同 set)。
client (输入): 客户端句柄。
key (输入): 参数名(UTF-8 编码),支持层级命名。
value_buf (输出): 输出缓冲区(调用方预分配)。
buf_size (输入): value_buf 的容量(字节)。建议 ≥
TI_MAX_PARAM_VALUE。返回:
TI_OK— 获取成功返回:
TI_ERR_NOT_CONNECTED— 未连接返回:
TI_ERR_INVALID_ARG— client / key / value_buf 为 NULL返回:
TI_ERR_BUFFER_TOO_SMALL— buf_size 不足,参数值被截断返回:
TI_ERR_SERVER— 服务端无此参数
使用示例:
char buf[TI_MAX_PARAM_VALUE];
int rc = ti_get_parameter(cli, "PRINT_SPEED_TIMER", buf, sizeof(buf));
if (rc == TI_OK) printf("PRINT_SPEED_TIMER = %s\n", buf);
参见: ti_set_parameter()
参见: `TI_MAX_PARAM_VALUE`