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,
55 LINKAGE_CAP_E capability;
56 OPERATE_RET(*open)(LINKAGE_CAP_E cap);
57 OPERATE_RET(*close)(VOID);
58 OPERATE_RET(*reset)(IN GW_RESET_TYPE_E reset_type);
59 OPERATE_RET(*set)(IN LINKAGE_CFG_E cfg, IN VOID* data);
60 OPERATE_RET(*get)(IN LINKAGE_CFG_E cfg, OUT VOID* data);
67#define ACTIVATE_STAGE_START 0
68#define ACTIVATE_STAGE_SUCCESS 1
69#define ACTIVATE_STAGE_FAIL_URL 2
70#define ACTIVATE_STAGE_FAIL_ACTIVE 3
71#define ACTIVATE_STAGE_FAIL_RESULT 4
72#define ACTIVATE_STAGE_FAIL_UNKNOWN 5
73#define ACTIVATE_STAGE_STOP 0xFF
80#define ACTIVATE_TYPE_TOKEN 0
81#define ACTIVATE_TYPE_META 1
82#define ACTIVATE_TYPE_EXT_MODULE 2
83#define ACTIVATE_TYPE_3RD 255
Definition of activate data
Definition: tuya_svc_netmgr_linkage.h:88
UINT_T retry_cnt
Definition: tuya_svc_netmgr_linkage.h:115
ACTIVATE_TYPE_E type
Definition: tuya_svc_netmgr_linkage.h:99
UINT_T len
Definition: tuya_svc_netmgr_linkage.h:107
VOID * data
Definition: tuya_svc_netmgr_linkage.h:103
LINKAGE_TYPE_E linkage
Definition: tuya_svc_netmgr_linkage.h:111
ACTIVATE_STAGE_E stage
Definition: tuya_svc_netmgr_linkage.h:92
Definition: tuya_svc_netmgr_linkage.h:53
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:66
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:79