【分享】TuyaOS 网关开发框架常用 API

网关设备, 语音中控设备等
Post Reply
Kyson
Posts: 189

本文介绍了 TuyaOS 网关开发框架的常用 API 接口, 您可以把本文当作 API 手册来参考。在开始之前,请确保您已经熟悉了 TuyaOS 网关开发框架的基本概念。

本文将按照功能分类,以下是 TuyaOS 网关开发框架主要功能和对应 API 接口说明。

基础接口

函数名说明
tuya_load_config加载 JSON 配置文件
tuya_get_config获取配置文件的句柄,用于获取配置文件的内容
tuya_iot_get_sdk_info获取 SDK 信息
tuya_iot_get_gw_id获取网关的设备 ID
tuya_iot_initIoT 模块初始化,初始化数据库、MQTT、局域网等业务
tuya_iot_set_wf_gw_prod_info设置产品授权信息 UUID&AUTHKEY,要求在网关初始化接口 tuya_iot_wr_wf_sdk_init 之前调用
tuya_iot_sdk_pre_init网关模块预初始化,要求在网关初始化接口 tuya_iot_wr_wf_sdk_init 之前调用
tuya_iot_wr_wf_sdk_init网关模块初始化,加载数据库、启动设备管理服务、启动配网服务、启动 DevOS 等
tuya_iot_sdk_start启动网关服务,主要功能是调度设备管理
tuya_iot_sdk_reg_netstat_cb注册网关状态回调
tuya_iot_reg_gw_app_cb注册网关应用回调
tuya_iot_wf_gw_unactive网关解绑,不清除本地数据
tuya_iot_wf_gw_reset网关解绑并清除本地数据
tuya_iot_get_gw_stat获取网关激活状态
tuya_iot_dev_join_permit允许子设备加入网关

子设备管理接口

函数名说明
tuya_subdev_user_sigle_type_reg注册设备管理回调
tuya_iot_gw_bind_dev把子设备绑定到涂鸦 IoT 平台
tuya_iot_gw_bind_dev_attr把子设备绑定到涂鸦 IoT 平台,支持额外的 OTA 通道
tuya_iot_gw_unbind_dev子设备从涂鸦 IoT 平台解绑
tuya_iot_dev_online_stat_update绕过心跳管理,强制更新子设备的在线状态
tuya_iot_get_dev_online_status获取子设备在离线状态
tuya_iot_set_dev_hb_cfg配置子设备心跳参数
tuya_iot_fresh_dev_hb刷新子设备心跳
tuya_iot_gw_subdevice_update更新子设备的固件版本
tuya_iot_gw_subdevice_update_versions更新子设备的固件版本,支持额外的 OTA 通道
tuya_iot_get_dev_if获取指定的子设备信息
tuya_iot_dev_traversal遍历所有子设备
tuya_iot_get_dp_prop_value获取指定设备的 DPID 的值
tuya_iot_get_dp_desc获取指定设备的 DPID 的物模型

功能点管理接口

函数名说明
dev_query_dp_json_async查询上报非 RAW 类型功能点,该上报不进行联动条件检测
dev_report_dp_json_async主动上报非 RAW 类型功能点
dev_report_dp_raw_sync主动上报 RAW 类型功能点
dev_report_dp_stat_sync统计上报非 RAW 类型功能点
tuya_iot_reg_dp_report_cb注册功能点上报回调
tuya_iot_dev_obj_cmd_send本地下发非 RAW 类型功能点
tuya_iot_dev_raw_cmd_send本地下发 RAW 类型功能点

OTA 接口

函数名说明
tuya_iot_upgrade_gw网关 OTA 固件下载
tuya_iot_upgrade_dev子设备 OTA 固件下载
tuya_iot_refuse_upgrade拒接 OTA
tuya_iot_dev_upgd_progress_rept上报 OTA 进度条
tuya_iot_dev_upgd_result_report上报 OTA 结果,结束 OTA

Zigbee 网关接口

函数名说明
tuya_zigbee_svc_init初始化 Tuya Zigbee 服务,要求在网关初始化接口 tuya_iot_wr_wf_sdk_init 之前调用
tuya_zigbee_svc_start启动 Tuya Zigbee 服务
tuya_zigbee_check_and_get_uart_speed检测 Zigbee 模组是否连通
tuya_zigbee_reg_permit_join_cb注册允许/禁止 Zigbee 入网回调
tuya_zigbee_reg_ncp_got_ver_cb注册获取 Zigbee 模组固件版本号回调
tuya_zigbee_custom_dev_mgr_init注册第三方 Zigbee 子设备接入管理回调
tuya_zigbee_upgrade_ncp注册 Zigbee 模组 OTA 结果回调
tuya_zigbee_reg_ncp_hard_ops_cb注册 Zigbee 模组异常回调
tuya_zigbee_send_data发送 ZCL 数据
tuya_zigbee_del_dev从 Zigbee 网络移除子设备
tuya_zigbee_upgrade_devZigbee 子设备 OTA
tuya_zigbee_set_tx_radio_power设置 Zigbee 模组的发射功率
tuya_zigbee_rftest产测 RF 测试
tuya_zigbee_print_debug_info打印调试信息,远程拉取本地日志的时候,建议调用该接口输出 Zigbee 调试信息

蓝牙网关接口

函数名说明
tuya_bt_svc_init初始化 Tuya 蓝牙服务,要求在网关初始化接口 tuya_iot_wr_wf_sdk_init 之前调用
tuya_bt_svc_start启动 Tuya 蓝牙服务
tuya_bt_ncp_check_exist检测蓝牙模组是否连通
tuya_bt_rssi_get获取信号质量
tuya_bt_ver_get获取蓝牙模组的固件版本号
tuya_bt_ncp_hard_reset_reg注册蓝牙模组异常回调

无网施工接口

函数名说明
tuya_engineer_sdk_init无网施工 SDK 初始化,无论是施工模式还是普通模式都需要调用
tuya_engineer_gw_init无网施工网关模块初始化,同 tuya_iot_wr_wf_sdk_init。施工模式调用该接口,普通模式则调用 tuya_iot_wr_wf_sdk_init
tuya_set_engineer_mode切换到施工模式
tuya_get_engineer_mode是否运行在施工模式

故障替换接口

函数名说明
tuya_gw_replacement_enable开启故障替换功能
tuya_gw_replacement_register_cb注册故障替换回调
tuya_gw_flt_rpl_get_cfg_file获取备份文件
tuya_gw_flt_rpl_put_cfg_file打包备份文件
tuya_iot_gw_fault_replace_set_path设置故障替换打包路径

联动接口

函数名说明
scene_linkage_load_all_rule_info_from_disk获取网关接管的联动,包含本地联动和局域网联动
scene_linkage_all_rule_info_free释放 scene_linkage_load_all_rule_info_from_disk 接口申请的内存
scene_linkage_scene_exe执行联动
Post Reply