
#ifndef __KK_PRODUCT_H__
#define __KK_PRODUCT_H__
#include <stdio.h>

#ifndef _IN_
    #define _IN_
#endif

#ifndef _OU_
    #define _OU_
#endif

#define PRODUCT_TYPE_LEN         (32+1)
#define PRODUCT_CODE_LEN         (32+1)
#define DEVICE_CODE_LEN          (32+1)
#define MAC_ADDR_LEN_MAX            (10)
#define PID_STRLEN_MAX              (64)
#define MID_STRLEN_MAX              (64)
#define IOTX_URI_MAX_LEN            (135)  /* IoTx CoAP/HTTP uri & MQTT topic maximal length */
#define PID_STR_MAXLEN              (64)
#define MID_STR_MAXLEN              (64)
#define PRODUCT_SECRET_MAXLEN       (64 + 1)
#define FIRMWARE_VERSION_MAXLEN     (32 + 1)
#define VERSION_MAXLEN     (32 + 1)
#define HAL_CID_LEN                 (64 + 1)
#define NETWORK_ADDR_LEN        (16+1)        /* IP�����ַ�ĳ��� */
#define MAC_ADDR_LEN        (17+1)        
#define SN_ADDR_LEN        (32+1)


#define PRODUCT_TPYE  "kk"
#define CCU_LAN  "eth1"
#define KK_CCU_ID    "CCU_77777"
#define KK_CCU_PRODUCTID    "ccu_n12"
#define KK_GW_PRODUCTID    "gateway_2"
#define KK_CCU_RANDOM    "0000000000"
#define KK_CCU_NAME      "NEW_CCU"
#define KK_DEVICE_MAP_FILE_PATH      "/usr/kk/map/device_%s.json"
enum {
    DEVICE_OFFLINE = 0,
    DEVICE_ONLINE,
    DEVICE_UNKNOW,
};

int HAL_SetProduct_Type(_IN_ char *product_type);
int HAL_SetProduct_Code(_IN_ char *product_code);
int HAL_SetDevice_Code(_IN_ char *device_code);
int HAL_GetProduct_Code(_OU_ char *product_code);
int HAL_GetDevice_Code(_OU_ char *device_code);





#endif
