10#ifndef __TUYA_SVC_NETMGR_LINKAGE_H__
11#define __TUYA_SVC_NETMGR_LINKAGE_H__
14#include "tuya_cloud_com_defs.h"
20#define DEFAULT_ACTIVATE_RETRY_CNT (10)
22typedef UINT_T LINKAGE_CAP_E;
23#define LINKAGE_CAP_LINK_EVENT BIT(0)
24#define LINKAGE_CAP_ACTIVATE_TOKEN BIT(1)
25#define LINKAGE_CAP_ACTIVATE_META BIT(2)
26#define LINKAGE_CAP_ACTIVATE (LINKAGE_CAP_ACTIVATE_TOKEN | LINKAGE_CAP_ACTIVATE_META)
35 LINKAGE_TYPE_EXT_MODULE,
51 LINKAGE_CFG_IPV6_LINK,
57 LINKAGE_CAP_E capability;
58 OPERATE_RET(*open)(LINKAGE_CAP_E cap);
59 OPERATE_RET(*close)(VOID);
60 OPERATE_RET(*reset)(IN GW_RESET_TYPE_E reset_type);
61 OPERATE_RET(*set)(IN LINKAGE_CFG_E cfg, IN VOID* data);
62 OPERATE_RET(*get)(IN LINKAGE_CFG_E cfg, OUT VOID* data);
69#define ACTIVATE_STAGE_START 0
70#define ACTIVATE_STAGE_SUCCESS 1
71#define ACTIVATE_STAGE_FAIL_URL 2
72#define ACTIVATE_STAGE_FAIL_ACTIVE 3
73#define ACTIVATE_STAGE_FAIL_RESULT 4
74#define ACTIVATE_STAGE_FAIL_UNKNOWN 5
75#define ACTIVATE_STAGE_STOP 0xFF
82#define ACTIVATE_TYPE_TOKEN 0
83#define ACTIVATE_TYPE_META 1
84#define ACTIVATE_TYPE_EXT_MODULE 2
85#define ACTIVATE_TYPE_3RD 255
Definition of activate data
Definition: tuya_svc_netmgr_linkage.h:90
UINT_T retry_cnt
Definition: tuya_svc_netmgr_linkage.h:117
ACTIVATE_TYPE_E type
Definition: tuya_svc_netmgr_linkage.h:101
UINT_T len
Definition: tuya_svc_netmgr_linkage.h:109
VOID * data
Definition: tuya_svc_netmgr_linkage.h:105
LINKAGE_TYPE_E linkage
Definition: tuya_svc_netmgr_linkage.h:113
ACTIVATE_STAGE_E stage
Definition: tuya_svc_netmgr_linkage.h:94
Definition: tuya_svc_netmgr_linkage.h:55
OPERATE_RET tuya_svc_netmgr_linkage_register(IN netmgr_linkage_t *linkage)
Register a linkage to network manager
netmgr_linkage_t * tuya_svc_netmgr_linkage_get(IN LINKAGE_TYPE_E type)
Get a linkage with specific type
OPERATE_RET tuya_svc_netmgr_linkage_set_retry_cnt(IN UINT_T count)
Set retry count for activation
OPERATE_RET tuya_svc_netmgr_linkage_set_priority(IN LINKAGE_TYPE_E *types, IN UINT_T count)
Set priority for all linkages
OPERATE_RET tuya_svc_netmgr_linkage_set_default(IN LINKAGE_TYPE_E type)
Set and keep the default linkage
BOOL_T tuya_svc_netmgr_linkage_is_up(IN LINKAGE_TYPE_E type)
Is the linkage link-up or down
BYTE_T ACTIVATE_STAGE_E
Definition of linkage activate stage
Definition: tuya_svc_netmgr_linkage.h:68
OPERATE_RET tuya_svc_netmgr_linkage_switch(VOID)
Switch to next linkage
OPERATE_RET tuya_svc_netmgr_linkage_event(IN CONST netmgr_linkage_t *linkage, IN BOOL_T is_link_up)
Send linkage status to network manager
OPERATE_RET tuya_svc_netmgr_linkage_activate(IN CONST netmgr_linkage_t *linkage, IN activate_info_t *info)
Send linkage activation to network manager
BYTE_T ACTIVATE_TYPE_E
Definition of activate type
Definition: tuya_svc_netmgr_linkage.h:81