TuyaOS
结构体 | 宏定义 | 类型定义 | 枚举 | 函数
tuya_svc_lan.h 文件参考

TUYA LAN service 更多...

#include <stdint.h>
#include "tuya_cloud_types.h"
#include "ty_cJSON.h"
tuya_svc_lan.h 的引用(Include)关系图:

浏览源代码.

结构体

struct  LAN_EXT_CMD_PARAM_S
 

宏定义

#define FRM_ADD_SUB_DEV_CMD   0x0e
 
#define FRM_CFG_WIFI_INFO   0x0f
 
#define FRM_LAN_EXT_BEFORE_ACTIVATE   0x42
 
#define FRM_LAN_EXT_STREAM   0x40
 
#define FRM_LAN_QUERY_DP   0x12
 
#define FRM_LAN_UPD_LOG   0x30
 
#define FRM_QUERY_STAT   0x0a
 
#define FRM_QUERY_STAT_NEW   0x10
 
#define FRM_SCENE_EXEC   0x11
 
#define FRM_SECURITY_TYPE3   0x03
 
#define FRM_SECURITY_TYPE4   0x04
 
#define FRM_SECURITY_TYPE5   0x05
 
#define FRM_SSID_QUERY   0x0b
 
#define FRM_TP_ACTV   0x02
 
#define FRM_TP_BIND_DEV   0x03
 
#define FRM_TP_CFG_WF   0x01
 
#define FRM_TP_CMD   0x07
 
#define FRM_TP_HB   0x09
 
#define FRM_TP_NEW_CMD   0x0d
 
#define FRM_TP_STAT_REPORT   0x08
 
#define FRM_TP_UNBIND_DEV   0x06
 
#define FRM_TYPE_APP_UDP_BOARDCAST   0x25
 
#define FRM_TYPE_REG_CENTER   0x24
 
#define FRM_USER_BIND_REQ   0x0c
 
#define is_lan_connected()   (tuya_svc_lan_get_valid_connections() != 0)
 judge if lan connect 更多...
 

类型定义

typedef BOOL_T(* lan_canbe_closed) (VOID)
 check lan canbe closed 更多...
 
typedef OPERATE_RET(* lan_cmd_handler_cb) (IN CONST BYTE_T *data, OUT BYTE_T **out)
 lan cmd extersion 更多...
 
typedef OPERATE_RET(* lan_ext_protocol_handler_cb) (IN ty_cJSON *root_json)
 Callback to handle lan protocol data 更多...
 

枚举

enum  Lan_Cfg_e {
  CFG_UDP_DISCOVERY_FORCE , CFG_UDP_EXT_UPDATE , CFG_UDP_EXT_DELETE , CFG_SET_CLT_NUM ,
  CFG_UDP_DISCOVERY_INTERVAL , CFG_REV_BUF_SIZE , CFG_SET_LAN_CLOSED_CB , CFG_DEFAULT_LINKAGE ,
  CFG_HEART_BEAT_TIMEOUT , CFG_DEBUG_SWITCH , CFG_SEQ_ERR_THRESHOLD , CFG_WIFI_NETCFG ,
  CFG_MAX
}
 Definition of LAN configuration
 

函数

BOOL_T tuya_svc_lan_canbe_closed (VOID)
 check lan can be closed 更多...
 
OPERATE_RET tuya_svc_lan_cfg (IN CONST Lan_Cfg_e cfg, IN CONST VOID *data)
 lan configure 更多...
 
OPERATE_RET tuya_svc_lan_data_com_send (IN CONST INT_T socket, IN CONST UINT_T fr_num, IN CONST UINT_T fr_type, IN CONST UINT_T ret_code, IN CONST BYTE_T *data, IN CONST UINT_T len)
 
OPERATE_RET tuya_svc_lan_data_report (IN CONST UINT_T fr_type, IN CONST UINT_T ret_code, IN CONST BYTE_T *data, IN CONST UINT_T len)
 distribute data to all connections 更多...
 
OPERATE_RET tuya_svc_lan_disable (VOID)
 Disable LAN service 更多...
 
OPERATE_RET tuya_svc_lan_disconnect_all (VOID)
 disconnect all connections 更多...
 
OPERATE_RET tuya_svc_lan_dp_report (IN VOID *data, IN CONST UINT_T len)
 LAN dp report 更多...
 
OPERATE_RET tuya_svc_lan_enable (VOID)
 Enable LAN service 更多...
 
OPERATE_RET tuya_svc_lan_exit (VOID)
 Stop and uninit LAN service 更多...
 
OPERATE_RET tuya_svc_lan_ext_proto_data_report (IN CONST VOID *data, IN CONST UINT_T len)
 extend lan protocol data report 更多...
 
OPERATE_RET tuya_svc_lan_ext_proto_reg (CONST CHAR_T *ext_lan_pro, lan_ext_protocol_handler_cb handler)
 Register extend lan protocol 更多...
 
OPERATE_RET tuya_svc_lan_ext_proto_uninit (VOID)
 uninit extend lan protocol 更多...
 
OPERATE_RET tuya_svc_lan_ext_proto_unreg (CONST CHAR_T *ext_lan_pro)
 Unregister extend lan protocol 更多...
 
UINT_T tuya_svc_lan_get_client_num (VOID)
 get lan client number 更多...
 
INT_T tuya_svc_lan_get_valid_connections (VOID)
 get count of vaild connections 更多...
 
OPERATE_RET tuya_svc_lan_init (VOID)
 Init and start LAN service 更多...
 
OPERATE_RET tuya_svc_lan_pro_cntl_get_ext_cmd_param (LAN_EXT_CMD_PARAM_S *ext_cmd_param)
 
OPERATE_RET tuya_svc_lan_register_cb (IN UINT_T frame_type, IN lan_cmd_handler_cb handler)
 register callback 更多...
 
OPERATE_RET tuya_svc_lan_unregister_cb (IN UINT_T frame_type)
 unregister callback 更多...
 

详细描述

TUYA LAN service

版本
0.1
日期
2019-08-20

宏定义说明

◆ is_lan_connected

#define is_lan_connected ( )    (tuya_svc_lan_get_valid_connections() != 0)

judge if lan connect

返回
TRUE/FALSE

类型定义说明

◆ lan_canbe_closed

typedef BOOL_T(* lan_canbe_closed) (VOID)

check lan canbe closed

返回
TRUE:can be closed,FALSE:can't be closed

◆ lan_cmd_handler_cb

typedef OPERATE_RET(* lan_cmd_handler_cb) (IN CONST BYTE_T *data, OUT BYTE_T **out)

lan cmd extersion

参数
[in]datadata of frame type
[out]outdata to send back (shall be string const)
返回
OPRT_OK on success. Others on error, please refer to tuya_error_code.h

◆ lan_ext_protocol_handler_cb

typedef OPERATE_RET(* lan_ext_protocol_handler_cb) (IN ty_cJSON *root_json)

Callback to handle lan protocol data

参数
[in]root_jsonJson encoded protocol data
返回
OPRT_OK on success. Others on error, please refer to tuya_error_code.h

函数说明

◆ tuya_svc_lan_canbe_closed()

BOOL_T tuya_svc_lan_canbe_closed ( VOID  )

check lan can be closed

返回
TRUE: canbe closed,FALSE:can't be closed

◆ tuya_svc_lan_cfg()

OPERATE_RET tuya_svc_lan_cfg ( IN CONST Lan_Cfg_e  cfg,
IN CONST VOID *  data 
)

lan configure

参数
[in]cfgrefer to Lan_Cfg_e
[in]databuf
返回
OPRT_OK on success. Others on error, please refer to tuya_error_code.h

◆ tuya_svc_lan_data_report()

OPERATE_RET tuya_svc_lan_data_report ( IN CONST UINT_T  fr_type,
IN CONST UINT_T  ret_code,
IN CONST BYTE_T *  data,
IN CONST UINT_T  len 
)

distribute data to all connections

参数
[in]fr_typerefer to LAN_PRO_HEAD_APP_S
[in]ret_coderefer to LAN_PRO_HEAD_APP_S
[in]datarefer to LAN_PRO_HEAD_APP_S
[in]lenrefer to LAN_PRO_HEAD_APP_S
返回
OPRT_OK on success. Others on error, please refer to tuya_error_code.h

◆ tuya_svc_lan_disable()

OPERATE_RET tuya_svc_lan_disable ( VOID  )

Disable LAN service

返回
OPRT_OK on success. Others on error, please refer to tuya_error_code.h

◆ tuya_svc_lan_disconnect_all()

OPERATE_RET tuya_svc_lan_disconnect_all ( VOID  )

disconnect all connections

返回
OPRT_OK on success. Others on error, please refer to tuya_error_code.h

◆ tuya_svc_lan_dp_report()

OPERATE_RET tuya_svc_lan_dp_report ( IN VOID *  data,
IN CONST UINT_T  len 
)

LAN dp report

参数
[in]datadata buf
[in]lenbuf length
返回
OPRT_OK on success. Others on error, please refer to tuya_error_code.h

◆ tuya_svc_lan_enable()

OPERATE_RET tuya_svc_lan_enable ( VOID  )

Enable LAN service

返回
OPRT_OK on success. Others on error, please refer to tuya_error_code.h

◆ tuya_svc_lan_exit()

OPERATE_RET tuya_svc_lan_exit ( VOID  )

Stop and uninit LAN service

返回
OPRT_OK on success. Others on error, please refer to tuya_error_code.h

◆ tuya_svc_lan_ext_proto_data_report()

OPERATE_RET tuya_svc_lan_ext_proto_data_report ( IN CONST VOID *  data,
IN CONST UINT_T  len 
)

extend lan protocol data report

返回
OPRT_OK on success. Others on error, please refer to tuya_error_code.h

◆ tuya_svc_lan_ext_proto_reg()

OPERATE_RET tuya_svc_lan_ext_proto_reg ( CONST CHAR_T *  ext_lan_pro,
lan_ext_protocol_handler_cb  handler 
)

Register extend lan protocol

参数
[in]ext_lan_proProtocol string
[in]handlerProtocol handler
返回
OPRT_OK on success. Others on error, please refer to tuya_error_code.h

◆ tuya_svc_lan_ext_proto_uninit()

OPERATE_RET tuya_svc_lan_ext_proto_uninit ( VOID  )

uninit extend lan protocol

返回
OPRT_OK on success. Others on error, please refer to tuya_error_code.h

◆ tuya_svc_lan_ext_proto_unreg()

OPERATE_RET tuya_svc_lan_ext_proto_unreg ( CONST CHAR_T *  ext_lan_pro)

Unregister extend lan protocol

参数
[in]ext_lan_proProtocol string
返回
OPRT_OK on success. Others on error, please refer to tuya_error_code.h

◆ tuya_svc_lan_get_client_num()

UINT_T tuya_svc_lan_get_client_num ( VOID  )

get lan client number

返回
client number

◆ tuya_svc_lan_get_valid_connections()

INT_T tuya_svc_lan_get_valid_connections ( VOID  )

get count of vaild connections

返回
vaild count

◆ tuya_svc_lan_init()

OPERATE_RET tuya_svc_lan_init ( VOID  )

Init and start LAN service

返回
OPRT_OK on success. Others on error, please refer to tuya_error_code.h

◆ tuya_svc_lan_register_cb()

OPERATE_RET tuya_svc_lan_register_cb ( IN UINT_T  frame_type,
IN lan_cmd_handler_cb  handler 
)

register callback

参数
[in]frame_typerefer to LAN_PRO_HEAD_APP_S
[in]frame_typerefer to lan_cmd_handler_cb
返回
OPRT_OK on success. Others on error, please refer to tuya_error_code.h

◆ tuya_svc_lan_unregister_cb()

OPERATE_RET tuya_svc_lan_unregister_cb ( IN UINT_T  frame_type)

unregister callback

参数
[in]frame_typerefer to LAN_PRO_HEAD_APP_S
返回
OPRT_OK on success. Others on error, please refer to tuya_error_code.h