TuyaOS
tuya_cloud_com_defs.h
1
10#ifndef TUYA_CLOUD_COM_DEFS_H
11#define TUYA_CLOUD_COM_DEFS_H
12
13#include "tuya_cloud_types.h"
14#include "ty_cJSON.h"
15
16#ifdef __cplusplus
17extern "C" {
18#endif
19
20// tuya sdk constants definitions
21#define ENCRYPT_KEY_LEN 16 // max string length of storage encrypt
22#define GW_UUID_LEN 25 // max string length of UUID
23#define AUTH_KEY_LEN 32 // max string length of AUTH_KEY
24#define PSK_KEY_LEN 64 // max string length of PSK_KEY
25#define PRODUCT_KEY_LEN 16 // max string length of PRODUCT_KEY
26#define SW_VER_LEN 10 // max string length of VERSION
27#define SW_MD5_LEN 32 // max string length of attatch MD5
28
29#define BT_HID_LEN 19 // max string length of HID
30#define BT_MAC_LEN 12 // max string length of MAC
31
32#define TUYA_PSK_LEN 32 // max string length of PSK
33#define TUYA_PSK21_LEN 44 // max string length of PSK21
34#define TUYA_IMEI_LEN 18 // max string length of IMEI
35#define TUYA_SN_LEN 20 // max string length of SN
36
37#define SYS_ENV_LEN 20 // max string length of ENV
38#define LOG_SEQ_PATH_LEN 128 // max string length of LOG SEQ PATH
39#define GW_ID_LEN 25 // max string length of GW_ID
40#define DEV_UUID_LEN 25 // max string length of DEV UUID
41#define DEV_ID_LEN 25 // max string length of DEV_ID
42#define SCHEMA_ID_LEN 16 // max string length of SCHEMA
43#define SCHEMA_VER_LEN 16 // max string length of SCHEMA VERSION
44#define BIND_TOKEN_LEN 16 // max string length of BIND_TOKEN
45#define TOKEN_LEN 8 // max string length of TOKEN
46#define REGION_LEN 2 // max string length of REGIN IN TOKEN
47#define REGIST_KEY_LEN 4 // max string length of REGIST_KEY IN TOKEN
48#define HTTP_URL_LMT 128 // max string length of URL
49#define MQ_URL_LMT 128 // max string length of MQTT_URL
50#define TIME_ZONE_LEN 10 // max string length of TIME_ZONE
51#define SUMMER_TM_ZONE_LEN 256 // max string length of SUMMER_TIME_ZONE
52#define COUNTRY_CODE_LEN 8 // max string length of COUNTRY_CODE
53#define COUNTRY_CODE_LEN 8 // max string length of COUNTRY_CODE
54#define IPV4_LEN 15 // max string length of IPV4_LEN 255.255.255.255
55
56#define SEC_KEY_LEN 16 // max string length of SECURITY_KEY
57#define LOCAL_KEY_LEN 16 // max string length of LOCAL_KEY
58
59#define WXAPPID_LEN 32 // max string length of wechat_appid
60#define WXUUID_LEN 32 // max string length of wechat_uuid
61
62#define GRP_ID_LEN 5 // max string length of group id range:1-65535
63#define SCENE_ID_LEN 3 // max string length of scene id range:1-255
64
65#define NET_MODE_LEN 32 // max string length of NET MODE
66
67
68#define LC_GW_SLEEP_HB_LMT_S 12*3600 // 12h
69//group and scene error code
70#define M_SCE_SUCCESS 0 // success
71#define M_SCE_ERR_EXCEED 1 // space not enough
72#define M_SCE_ERR_TIMEOUT 2 // timeout
73#define M_SCE_ERR_PARAM 3 // param not in range
74#define M_SCE_WRITE_FILE 4 // failed to write db
75#define M_SCE_ERR_OTHER 5 // other failure
76
77// Product Function Specification
78typedef BYTE_T GW_ABI;
79#define GW_VIRTUAL 0x00 // product doesn't have subdevices functions,it only has device function. For example: SOC or MCU
80#define GW_ENTITY_ATTH_DEV 0x01 // Product has subdevices functions and it also has device function.
81#define GW_ENTITY 0x02 // Product only has subdevices functions.
82
83// Product Network Connection
84typedef BYTE_T GW_NW_STAT_T;
85#define GNS_UNVALID 0 // product is offline in LAN and WAN
86#define GNS_LAN_VALID 1 // product is online in LAN but offline in WAN
87#define GNS_WAN_VALID 2 // product is online in LAN and WAN
88
89// Product Extend State
90typedef BYTE_T GW_EXT_STAT_T;
91#define EXT_UNAUTH 0 // UNAUTH
92#define EXT_PROD_TEST 1 // PROD_TEST
93#define EXT_NORMAL_S 2 // NORMAL_S
94#define EXT_GW_UPGRD 3 // GW_UPGRD
95#define EXT_DEV_UPGRD 4 // DEV_UPGRD
96#define EXT_DEV_ADD 5 // DEV_ADD
97#define EXT_REG_FAIL 6 // REG_FAIL
98#define EXT_NET_FAIL 7 // NET_FAIL
99#define EXT_CONFIG_BACK_UP 8 // CONFIG_BACK_UP
100#define EXT_CONFIG_RESTORE 9 // CONFIG_RESTORE
101
108typedef BYTE_T DEV_TYPE_T;
109#define DEV_NM_ATH_SNGL 0 // main netlink module
110#define DEV_BLE_SNGL 1 // ble
111#define DEV_ZB_SNGL 3 // ZigBee
112#define DEV_NM_NOT_ATH_SNGL 9 // MCU
113#define DEV_ATTACH_MOD_1 10 // attach 1
114#define DEV_ATTACH_MOD_2 11 // attach 2
115#define DEV_ATTACH_MOD_3 12 // attach 3
116#define DEV_ATTACH_MOD_4 13 // attach 4
117#define DEV_ATTACH_MOD_5 14 // attach 5
118#define DEV_ATTACH_MOD_6 15 // attach 6
119#define DEV_ATTACH_MOD_7 16 // attach 7
120#define DEV_ATTACH_MOD_8 17 // attach 8
121#define DEV_ATTACH_MOD_9 18 // attach 9
122#define DEV_ATTACH_MOD_10 19 // attach 10
123
124
125
126// sub-device detail type
127typedef UINT_T USER_DEV_DTL_DEF_T; // user detial type define
128
132typedef BYTE_T GW_PERMIT_DEV_TP_T;
133#define GP_DEV_DEF 0xFF // default device type
134#define GP_DEV_ZB DEV_ZB_SNGL // zigbee
135#define GP_DEV_BLE DEV_BLE_SNGL // ble
136#define GP_DEV_MCU DEV_NM_NOT_ATH_SNGL // mcu
137#define GP_DEV_ATH_1 DEV_ATTACH_MOD_1 // attach 1
138#define GP_DEV_ATH_2 DEV_ATTACH_MOD_2 // attach 2
139#define GP_DEV_ATH_3 DEV_ATTACH_MOD_3 // attach 3
140#define GP_DEV_ATH_4 DEV_ATTACH_MOD_4 // attach 4
141#define GP_DEV_ATH_5 DEV_ATTACH_MOD_5 // attach 5
142#define GP_DEV_ATH_6 DEV_ATTACH_MOD_6 // attach 6
143#define GP_DEV_ATH_7 DEV_ATTACH_MOD_7 // attach 7
144#define GP_DEV_ATH_8 DEV_ATTACH_MOD_8 // attach 8
145#define GP_DEV_ATH_9 DEV_ATTACH_MOD_9 // attach 9
146#define GP_DEV_ATH_10 DEV_ATTACH_MOD_10 // attach 10
147
148#define GP_DEV_SUPPORT_MAX GP_DEV_ATH_10 // max attach id
149
150typedef BYTE_T TY_DP_REPT_CHAN_TP_T;
151#define TY_DP_REPT_CHAN_LAN 0
152#define TY_DP_REPT_CHAN_MQTT 1
153#define TY_DP_REPT_CHAN_HTTP 2
154#define TY_DP_REPT_CHAN_BLE 3
155#define TY_DP_REPT_CHAN_SIGMESH 4
156#define TY_DP_REPT_CHAN_TUYA_MESH 5
157#define TY_DP_REPT_CHAN_BEACON 6
158#define TY_DP_REPT_CHAN_MAX 7
159
163typedef struct {
165 BOOL_T init_db;
167 CHAR_T sys_env[SYS_ENV_LEN];
169 CHAR_T log_seq_path[LOG_SEQ_PATH_LEN];
171
175typedef struct {
177 GW_PERMIT_DEV_TP_T tp;
179 CHAR_T ver[SW_VER_LEN + 1];
180 CHAR_T md5[SW_MD5_LEN + 1];
182
183#define CH_NAME_LMT 15 // max string length of operator name
184#define CH_CODE_LMT 20 // max string length of operator code
185#define CH_SN_LMT 20 // max string length of device sn
186#define CH_REPORT_CODE_LMT 20 // max string length of report code
187#define CH_MANU_ID_LMT 10 // max string length of manufacture id
188#define CH_VERSION_LMT 10 // max string length of sw version
189#define CH_ENCRYPT_KEY_LMT 20 // max string length of encrypt key
190
194typedef struct {
196 CHAR_T ch_name[CH_NAME_LMT + 1];
198 CHAR_T ch_code[CH_CODE_LMT + 1];
200 CHAR_T ch_sn[CH_SN_LMT + 1];
202 CHAR_T ch_report_code[CH_REPORT_CODE_LMT + 1];
204 CHAR_T ch_manu_id[CH_MANU_ID_LMT + 1];
206 CHAR_T ch_version[CH_VERSION_LMT + 1];
208 CHAR_T ch_encrype_key[CH_ENCRYPT_KEY_LMT + 1];
209} CH_CODE_ST;
210
214typedef struct {
216 USHORT_T sNodeID;
218 USHORT_T fNodeID;
220 CHAR_T rssi;
222 UCHAR_T lqi;
224 CHAR_T fid[DEV_ID_LEN + 1];
225} DEV_QOS_ST;
226
227#define GW_ATTACH_ATTR_LMT 10
228
232typedef BYTE_T DP_REPT_TYPE_E;
233#define T_OBJ_REPT 0 // dp is value,str,enum,bool,bitmap
234#define T_RAW_REPT 1 // raw type
235#define T_STAT_REPT 2 // stat type
236#define T_RE_TRANS_REPT 10 // repeat report
237
241typedef BYTE_T DP_TYPE_E;
242#define T_OBJ 0 // dp is value,str,enum,bool,bitmap
243#define T_RAW 1 // raw type
244#define T_FILE 2 // file type
245
249typedef BYTE_T DP_MODE_E;
250#define M_RW 0 // cloud/app can read and write
251#define M_WR 1 // cloud/app can only write to device
252#define M_RO 2 // cloud/app can only read from device
253
257typedef BYTE_T DP_PROP_TP_E;
258#define PROP_BOOL 0
259#define PROP_VALUE 1
260#define PROP_STR 2
261#define PROP_ENUM 3
262#define PROP_BITMAP 4
263
267typedef BYTE_T UP_MAP_TYPE_E;
268#define UP_CLEANER_MAP 0
269#define UP_CLEANER_PATH 1
270#define UP_CLEANER_MAP_PATH 2
271
275typedef BYTE_T UPGRADE_TYPE_T;
276#define UPGRADE_TYPE_NORMAL 0
277#define UPGRADE_TYPE_SILENT 1
278/*局域网升级,app发送升级包到wifi设备*/
279#define UPGRADE_TYPE_LAN 2
280
284typedef struct {
286 INT_T min;
288 INT_T max;
290 SHORT_T step;
292 USHORT_T scale;
294 INT_T value;
296
300typedef struct {
302 INT_T cnt;
304 CHAR_T **pp_enum;
306 INT_T value;
308
312typedef struct {
314 INT_T max_len;
316 INT_T cur_len;
320 CHAR_T *value;
322
326typedef struct {
328 BOOL_T value;
329} DP_BOOL_S;
330
334typedef struct {
336 UINT_T max_len;
338 UINT_T value;
340
344typedef union {
356
360typedef BYTE_T DP_TRIG_T_E;
361#define TRIG_PULSE 0 // upload when value changes
362#define TRIG_DIRECT 1 // upload without value change check
363
367typedef BYTE_T DP_PSV_E;
368#define PSV_FALSE 0 /* disabled */
369#define PSV_TRUE 1 /* app hasn't query yet */
370#define PSV_F_ONCE 2 /* app has queryed, shoulb report */
371
375typedef BYTE_T DP_STAT_TP_T;
376#define DST_NONE 0 // no need statistics
377#define DST_INC 1 // dp statistics increase
378#define DST_TOTAL 2 // dp statistics total
379
380//
384typedef BYTE_T DP_ROUTE_T_T;
385#define ROUTE_DEFAULT 0
386#define ROUTE_BLE_FIRST 1
387#define ROUTE_FORCE_BT 2 //dp transport force by ble
388
392typedef struct {
394 BYTE_T dp_id;
396 DP_MODE_E mode;
398 DP_PSV_E passive;
400 DP_TYPE_E type;
402 DP_PROP_TP_E prop_tp;
404 DP_TRIG_T_E trig_t;
406 DP_STAT_TP_T stat;
408 DP_ROUTE_T_T route_t;
410
414typedef BYTE_T DP_CMD_TYPE_E;
415#define DP_CMD_LAN 0 // cmd from LAN
416#define DP_CMD_MQ 1 // cmd from MQTT
417#define DP_CMD_TIMER 2 // cmd from Local Timer
418#define DP_CMD_SCENE_LINKAGE 3 // cmd from scene linkage
419#define DP_CMD_RELIABLE_TRANSFER 4 // cmd from reliable transfer
420#define DP_CMD_BT 5 // cmd from bt
421#define DP_CMD_SCENE_LINKAGE_LAN 6 // cmd from lan scene linkage
422#define DP_CMD_FFC 7 // cmd from ffc
423#define DP_CMD_EXT_APP 100 // 应用扩展预留范围[100,110],避免冲突
424
428typedef BYTE_T DP_TRANS_TYPE_T;
429#define DTT_SCT_UNC 0 // unicast
430#define DTT_SCT_BNC 1 // boardcast
431#define DTT_SCT_MNC 2 // multicast
432#define DTT_SCT_SCENE 3 // scene
433
437typedef union {
438 INT_T dp_value; // valid when dp type is value
439 UINT_T dp_enum; // valid when dp type is enum
440 CHAR_T *dp_str; // valid when dp type is str
441 BOOL_T dp_bool; // valid when dp type is bool
442 UINT_T dp_bitmap; // valid when dp type is bitmap
444
448typedef struct {
450 BYTE_T dpid;
452 DP_PROP_TP_E type;
458
462typedef BYTE_T DP_REPT_FORM_T;
463#define DP_REPT_FORM_ACTIVE 0 // active report
464#define DP_REPT_FORM_QUERY 1 // query report
465#define DP_REPT_FORM_SYNC 2 // sync report
466
467typedef struct {
469 DP_REPT_FORM_T rept_form;
471 BYTE_T force;
475 UINT_T rept_seq;
477
478typedef struct {
480 UINT_T timeout;
484 CHAR_T *time_str;
488 UINT_T rept_seq;
490
494typedef struct {
496 DP_CMD_TYPE_E cmd_tp;
498 DP_TRANS_TYPE_T dtt_tp;
500 CHAR_T *cid;
502 CHAR_T *mb_id;
504 UINT_T dps_cnt;
508
512typedef struct {
514 DP_CMD_TYPE_E cmd_tp;
516 DP_TRANS_TYPE_T dtt_tp;
518 CHAR_T *cid;
520 BYTE_T dpid;
522 CHAR_T *mb_id;
524 UINT_T len;
526 BYTE_T data[0];
528
532typedef struct {
534 BYTE_T dpid;
536 UINT_T len;
538 BYTE_T* data;
540
544typedef struct {
546 DP_CMD_TYPE_E cmd_tp;
548 DP_TRANS_TYPE_T dtt_tp;
550 CHAR_T *cid;
552 CHAR_T *mb_id;
553
555 UINT_T dps_cnt;
559
560
564typedef struct {
566 UINT_T cmd_tp;
568 CHAR_T *cid;
570 UINT_T cnt;
572 BYTE_T dpid[0];
574
575//add by sunkz
576#define DP_REPT_USER_REG_MAX_NUM 10
580typedef struct {
582 DP_REPT_TYPE_E dp_rept_type;
584 VOID_T* dp_data;
588 BYTE_T is_query;
590
594typedef struct {
596 UINT_T dp_id;
598 DP_CMD_TYPE_E cmd_from;
600 CHAR_T* cid;
602
610typedef BOOL_T(*DP_RECV_FILTER_HANDLE)(IN CONST DP_RECV_FILTER_PARA* dp_info);
611
619typedef OPERATE_RET(*DP_REPT_PRE_HANDLE)(IN CONST DP_REPT_CB_DATA* dp_data);
620
629typedef OPERATE_RET(*DP_REPT_POST_HANDLE)(IN CONST OPERATE_RET dp_rslt, IN CONST DP_REPT_CB_DATA* dp_data);
630
639typedef OPERATE_RET(*RAW_DP_ASYNC_REPT_CB)(OPERATE_RET rslt, CHAR_T* data);
640
644typedef struct {
646 DP_RECV_FILTER_HANDLE dp_recv_filter_cb;
648 DP_REPT_PRE_HANDLE dp_rept_pre_cb;
650 DP_REPT_POST_HANDLE dp_rept_post_cb;
654//add by sunkz
655
656#define FW_URL_LEN 255 // max length of firmware download url
657#define FW_MD5_LEN 32 // max length of firmware md5
658#define FW_HMAC_LEN 64 // max length of firmware hmac
659
663typedef struct {
665 DEV_TYPE_T tp;
667 UPGRADE_TYPE_T type;
669 CHAR_T fw_url[FW_URL_LEN + 1];
671 CHAR_T sw_ver[SW_VER_LEN + 1];
673 UINT_T file_size;
675 CHAR_T fw_hmac[FW_HMAC_LEN + 1];
677 CHAR_T fw_md5[FW_MD5_LEN + 1];
679 BOOL_T diff_ota;
680} FW_UG_S;
681
682
683
687typedef BYTE_T GW_STATUS_E;
688#define GW_RESET 0 // gw reset
689#define GW_ACTIVED 1 // gw actived
690#define GW_FIRST_START 2 // start tuya-sdk in the first time.
691#define GW_NORMAL 3 // tuya-sdk is actived and started
692#define GW_BLE_ACTIVED 4 // gw ble actived
698typedef VOID (*GW_STATUS_CHANGED_CB)(IN CONST GW_STATUS_E status);
699
705typedef VOID (*DEV_OBJ_DP_CMD_CB)(IN CONST TY_RECV_OBJ_DP_S *dp);
706
712typedef VOID (*DEV_RAW_DP_CMD_CB)(IN CONST TY_RECV_RAW_DP_S *dp);
713
719typedef VOID (*DEV_DP_QUERY_CB)(IN CONST TY_DP_QUERY_S *dp_qry);
720
728typedef int (*GW_UG_INFORM_CB)(IN CONST FW_UG_S *fw);
729
730
731/* tuya sdk gateway reset type */
732typedef enum {
733 GW_LOCAL_RESET_FACTORY = 0,//(cb/event)
734 GW_REMOTE_UNACTIVE,//(cb/event)
735 GW_LOCAL_UNACTIVE,//(cb/event)
736 GW_REMOTE_RESET_FACTORY,//(cb/event)
737 GW_RESET_DATA_FACTORY, //need clear local data when active(cb/event)
738 GW_REMOTE_RESET_DATA_FACTORY, //need clear local data when active(event only)
739}GW_RESET_TYPE_E;
740
741
747typedef VOID (*GW_RESET_IFM_CB)(GW_RESET_TYPE_E type);
748
757typedef int (*DEV_UG_INFORM_CB)(IN CONST CHAR_T *dev_id, IN CONST FW_UG_S *fw);
758
759typedef enum {
760 DEV_REMOTE_RESET_FACTORY,
761 DEV_RESET_DATA_FACTORY, //need clear local data when bind
762} DEV_RESET_TYPE_E;
763
770typedef VOID (*DEV_RESET_IFM_CB)(IN CONST CHAR_T *dev_id, IN DEV_RESET_TYPE_E type);
771
785typedef OPERATE_RET(*GET_FILE_DATA_CB)(IN CONST FW_UG_S *fw, IN CONST UINT_T total_len, IN CONST UINT_T offset,
786 IN CONST BYTE_T *data, IN CONST UINT_T len, OUT UINT_T *remain_len, IN PVOID_T pri_data);
787
793typedef VOID (*ACTIVE_SHORTURL_CB)(OUT CONST CHAR_T *shorturl);
794
802typedef OPERATE_RET(*UPGRADE_NOTIFY_CB)(IN CONST FW_UG_S *fw, IN CONST INT_T download_result, IN PVOID_T pri_data);
803
807typedef struct {
809 GW_STATUS_CHANGED_CB gw_status_cb;
811 GW_UG_INFORM_CB gw_ug_cb;
813 GW_RESET_IFM_CB gw_reset_cb;
815 DEV_OBJ_DP_CMD_CB dev_obj_dp_cb;
817 DEV_RAW_DP_CMD_CB dev_raw_dp_cb;
819 DEV_DP_QUERY_CB dev_dp_query_cb;
821 DEV_UG_INFORM_CB dev_ug_cb;
823 DEV_RESET_IFM_CB dev_reset_cb;
825 ACTIVE_SHORTURL_CB active_shorturl;
827 GW_UG_INFORM_CB pre_gw_ug_cb;
829 DEV_UG_INFORM_CB pre_dev_ug_cb;
831
832typedef OPERATE_RET(*GW_CLOUD_STREAM_MQTT_CB)(IN struct ty_cJSON *root_json);
833
834/* tuya-sdk gateway subdevices management callback functions */
835
836
837// mqtt media data interface
838typedef BYTE_T TRAN_STEP_T;
839#define TS_START 0
840#define TS_TRANSFER 1
841#define TS_END 2
842
843typedef BYTE_T CLEAR_TYPE_T;
844#define CLEAR_CONTINUE_ADD 0
845#define CLEAR_REMOVE_MAP 1
846
847typedef BYTE_T DATA_TYPE_T;
848#define DATA_INCREMENT_MAP 0
849#define DATA_COMPLETE_MAP 1
850
851#pragma pack(1)
852typedef struct {
853 USHORT_T id;
854 UINT_T posix;
855 TRAN_STEP_T step;
856 UINT_T offset;
857 USHORT_T len;
858 BYTE_T data[0];
860
861typedef struct {
862 USHORT_T id;
863 BYTE_T map_id;
864 BYTE_T clear_type;
865 BYTE_T data_type;
866 UINT_T posix;
867 UINT_T offset;
868 USHORT_T len;
869 BYTE_T data[0];
871
872#pragma pack()
873
874
878typedef struct {
880 CHAR_T region[REGION_LEN + 1];
882 CHAR_T time_zone[TIME_ZONE_LEN + 1];
884
888typedef enum {
890 CFG_DEVICE = 1,
892 CFG_PRODUCT = 2,
893 CFG_INVALID,
894} TY_CUSTOM_CFG_E;
895
896
900typedef struct {
902 CHAR_T country_code[COUNTRY_CODE_LEN + 1];
904 CHAR_T ip[IPV4_LEN + 1];
906
913typedef VOID (*GW_APP_LOG_PATH_CB)(OUT CHAR_T *path, IN CONST INT_T len);
914
918typedef struct {
920 GW_APP_LOG_PATH_CB gw_app_log_path_cb;
922
923#if 1//ext module
924typedef BYTE_T DEV_EXT_MODE_TYPE;
925#define DEV_EXT_MODE_MAIN 0
926#define DEV_EXT_MODE_NODEB 1
927#define DEV_EXT_MODE_WIFI 2
928#define DEV_EXT_MODE_CAT1 3
929
930/* Information of ext module */
931typedef struct {
932 DEV_EXT_MODE_TYPE emt;
933 CHAR_T uni_code[20]; //uni code of ext module, wifi:mac(len:6), cat1:imei(len:18)
935
936#endif
937
938
939#ifdef __cplusplus
940}
941#endif
942
943#endif
Definition of operator code info
Definition: tuya_cloud_com_defs.h:194
Definition: tuya_cloud_com_defs.h:931
Definition of device Quaility of Service
Definition: tuya_cloud_com_defs.h:214
USHORT_T sNodeID
Definition: tuya_cloud_com_defs.h:216
UCHAR_T lqi
Definition: tuya_cloud_com_defs.h:222
USHORT_T fNodeID
Definition: tuya_cloud_com_defs.h:218
CHAR_T rssi
Definition: tuya_cloud_com_defs.h:220
Definition of dp prop
Definition: tuya_cloud_com_defs.h:326
BOOL_T value
Definition: tuya_cloud_com_defs.h:328
Definition of dp description
Definition: tuya_cloud_com_defs.h:392
DP_TYPE_E type
Definition: tuya_cloud_com_defs.h:400
DP_MODE_E mode
Definition: tuya_cloud_com_defs.h:396
DP_ROUTE_T_T route_t
Definition: tuya_cloud_com_defs.h:408
DP_PSV_E passive
Definition: tuya_cloud_com_defs.h:398
DP_PROP_TP_E prop_tp
Definition: tuya_cloud_com_defs.h:402
DP_TRIG_T_E trig_t
Definition: tuya_cloud_com_defs.h:404
BYTE_T dp_id
Definition: tuya_cloud_com_defs.h:394
DP_STAT_TP_T stat
Definition: tuya_cloud_com_defs.h:406
Definition of dp prop
Definition: tuya_cloud_com_defs.h:334
UINT_T value
Definition: tuya_cloud_com_defs.h:338
UINT_T max_len
Definition: tuya_cloud_com_defs.h:336
Definition of dp prop
Definition: tuya_cloud_com_defs.h:300
INT_T cnt
Definition: tuya_cloud_com_defs.h:302
CHAR_T ** pp_enum
Definition: tuya_cloud_com_defs.h:304
INT_T value
Definition: tuya_cloud_com_defs.h:306
Definition of dp prop
Definition: tuya_cloud_com_defs.h:312
CHAR_T * value
Definition: tuya_cloud_com_defs.h:320
INT_T max_len
Definition: tuya_cloud_com_defs.h:314
INT_T cur_len
Definition: tuya_cloud_com_defs.h:316
void * dp_str_mutex
Definition: tuya_cloud_com_defs.h:318
Definition of dp prop
Definition: tuya_cloud_com_defs.h:284
INT_T min
Definition: tuya_cloud_com_defs.h:286
SHORT_T step
Definition: tuya_cloud_com_defs.h:290
INT_T max
Definition: tuya_cloud_com_defs.h:288
INT_T value
Definition: tuya_cloud_com_defs.h:294
USHORT_T scale
Definition: tuya_cloud_com_defs.h:292
Definition of DP filerting param
Definition: tuya_cloud_com_defs.h:594
UINT_T dp_id
Definition: tuya_cloud_com_defs.h:596
DP_CMD_TYPE_E cmd_from
Definition: tuya_cloud_com_defs.h:598
CHAR_T * cid
Definition: tuya_cloud_com_defs.h:600
Definition of DP report callbak
Definition: tuya_cloud_com_defs.h:580
CHAR_T * dp_data_json
Definition: tuya_cloud_com_defs.h:586
VOID_T * dp_data
Definition: tuya_cloud_com_defs.h:584
BYTE_T is_query
Definition: tuya_cloud_com_defs.h:588
DP_REPT_TYPE_E dp_rept_type
Definition: tuya_cloud_com_defs.h:582
Definition of DP handlers
Definition: tuya_cloud_com_defs.h:644
BOOL_T need_dp_force
Definition: tuya_cloud_com_defs.h:652
DP_RECV_FILTER_HANDLE dp_recv_filter_cb
Definition: tuya_cloud_com_defs.h:646
DP_REPT_POST_HANDLE dp_rept_post_cb
Definition: tuya_cloud_com_defs.h:650
DP_REPT_PRE_HANDLE dp_rept_pre_cb
Definition: tuya_cloud_com_defs.h:648
Definition: tuya_cloud_com_defs.h:852
Definition: tuya_cloud_com_defs.h:861
tuya sdk ota firmware info
Definition: tuya_cloud_com_defs.h:663
UINT_T file_size
Definition: tuya_cloud_com_defs.h:673
UPGRADE_TYPE_T type
Definition: tuya_cloud_com_defs.h:667
BOOL_T diff_ota
Definition: tuya_cloud_com_defs.h:679
DEV_TYPE_T tp
Definition: tuya_cloud_com_defs.h:665
Definition of attach moudule attribute
Definition: tuya_cloud_com_defs.h:175
GW_PERMIT_DEV_TP_T tp
Definition: tuya_cloud_com_defs.h:177
Definition of DP query
Definition: tuya_cloud_com_defs.h:564
CHAR_T * cid
Definition: tuya_cloud_com_defs.h:568
UINT_T cnt
Definition: tuya_cloud_com_defs.h:570
UINT_T cmd_tp
Definition: tuya_cloud_com_defs.h:566
Definition: tuya_cloud_com_defs.h:467
DP_REPT_FORM_T rept_form
Definition: tuya_cloud_com_defs.h:469
BYTE_T is_ble_roam
Definition: tuya_cloud_com_defs.h:473
UINT_T rept_seq
Definition: tuya_cloud_com_defs.h:475
BYTE_T force
Definition: tuya_cloud_com_defs.h:471
Definition: tuya_cloud_com_defs.h:478
BOOL_T enable_auto_retrans
Definition: tuya_cloud_com_defs.h:482
UINT_T timeout
Definition: tuya_cloud_com_defs.h:480
UINT_T rept_seq
Definition: tuya_cloud_com_defs.h:488
CHAR_T * time_str
Definition: tuya_cloud_com_defs.h:484
BYTE_T is_ble_roam
Definition: tuya_cloud_com_defs.h:486
Definition of TUYA DevOS init param
Definition: tuya_cloud_com_defs.h:163
BOOL_T init_db
Definition: tuya_cloud_com_defs.h:165
Definition of IoT callbacks used by APP
Definition: tuya_cloud_com_defs.h:918
GW_APP_LOG_PATH_CB gw_app_log_path_cb
Definition: tuya_cloud_com_defs.h:920
Definition of gateway callback funtions
Definition: tuya_cloud_com_defs.h:807
DEV_RESET_IFM_CB dev_reset_cb
Definition: tuya_cloud_com_defs.h:823
DEV_UG_INFORM_CB dev_ug_cb
Definition: tuya_cloud_com_defs.h:821
DEV_UG_INFORM_CB pre_dev_ug_cb
Definition: tuya_cloud_com_defs.h:829
GW_RESET_IFM_CB gw_reset_cb
Definition: tuya_cloud_com_defs.h:813
GW_UG_INFORM_CB pre_gw_ug_cb
Definition: tuya_cloud_com_defs.h:827
DEV_RAW_DP_CMD_CB dev_raw_dp_cb
Definition: tuya_cloud_com_defs.h:817
DEV_DP_QUERY_CB dev_dp_query_cb
Definition: tuya_cloud_com_defs.h:819
DEV_OBJ_DP_CMD_CB dev_obj_dp_cb
Definition: tuya_cloud_com_defs.h:815
ACTIVE_SHORTURL_CB active_shorturl
Definition: tuya_cloud_com_defs.h:825
GW_STATUS_CHANGED_CB gw_status_cb
Definition: tuya_cloud_com_defs.h:809
GW_UG_INFORM_CB gw_ug_cb
Definition: tuya_cloud_com_defs.h:811
Definition of region info
Definition: tuya_cloud_com_defs.h:878
Definition of location info
Definition: tuya_cloud_com_defs.h:900
Definition of structured dp
Definition: tuya_cloud_com_defs.h:448
DP_PROP_TP_E type
Definition: tuya_cloud_com_defs.h:452
BYTE_T dpid
Definition: tuya_cloud_com_defs.h:450
UINT_T time_stamp
Definition: tuya_cloud_com_defs.h:456
TY_OBJ_DP_VALUE_U value
Definition: tuya_cloud_com_defs.h:454
Definition of structured dp
Definition: tuya_cloud_com_defs.h:532
BYTE_T dpid
Definition: tuya_cloud_com_defs.h:534
BYTE_T * data
Definition: tuya_cloud_com_defs.h:538
UINT_T len
Definition: tuya_cloud_com_defs.h:536
Definition of recved raw dp
Definition: tuya_cloud_com_defs.h:544
UINT_T dps_cnt
Definition: tuya_cloud_com_defs.h:555
CHAR_T * mb_id
Definition: tuya_cloud_com_defs.h:552
DP_CMD_TYPE_E cmd_tp
Definition: tuya_cloud_com_defs.h:546
DP_TRANS_TYPE_T dtt_tp
Definition: tuya_cloud_com_defs.h:548
CHAR_T * cid
Definition: tuya_cloud_com_defs.h:550
Definition of recved structured dp
Definition: tuya_cloud_com_defs.h:494
UINT_T dps_cnt
Definition: tuya_cloud_com_defs.h:504
CHAR_T * cid
Definition: tuya_cloud_com_defs.h:500
CHAR_T * mb_id
Definition: tuya_cloud_com_defs.h:502
DP_CMD_TYPE_E cmd_tp
Definition: tuya_cloud_com_defs.h:496
DP_TRANS_TYPE_T dtt_tp
Definition: tuya_cloud_com_defs.h:498
Definition of recved raw dp
Definition: tuya_cloud_com_defs.h:512
CHAR_T * mb_id
Definition: tuya_cloud_com_defs.h:522
BYTE_T dpid
Definition: tuya_cloud_com_defs.h:520
CHAR_T * cid
Definition: tuya_cloud_com_defs.h:518
DP_TRANS_TYPE_T dtt_tp
Definition: tuya_cloud_com_defs.h:516
UINT_T len
Definition: tuya_cloud_com_defs.h:524
DP_CMD_TYPE_E cmd_tp
Definition: tuya_cloud_com_defs.h:514
Definition: ty_cJSON.h:104
Definition of dp prop value
Definition: tuya_cloud_com_defs.h:344
DP_PROP_VAL_S prop_value
Definition: tuya_cloud_com_defs.h:346
DP_PROP_BITMAP prop_bitmap
Definition: tuya_cloud_com_defs.h:354
DP_PROP_ENUM_S prop_enum
Definition: tuya_cloud_com_defs.h:348
DP_BOOL_S prop_bool
Definition: tuya_cloud_com_defs.h:352
DP_PROP_STR_S prop_str
Definition: tuya_cloud_com_defs.h:350
tuya sdk dp value union
Definition: tuya_cloud_com_defs.h:437