
sample: examples\aliyun_iotkit_csdk_mqtt project: board\TencentOS_tiny_EVB_MX_Plus\KEIL\aliyun_iotkit_csdk_mqtt
66 lines
2.8 KiB
C
66 lines
2.8 KiB
C
#include "infra_types.h"
|
|
#include "infra_defs.h"
|
|
#include "wrappers_defs.h"
|
|
|
|
#include "mqtt_api.h"
|
|
|
|
void *HAL_Malloc(uint32_t size);
|
|
void HAL_Free(void *ptr);
|
|
void HAL_Printf(const char *fmt, ...);
|
|
uint64_t HAL_UptimeMs(void);
|
|
void HAL_SleepMs(uint32_t ms);
|
|
int HAL_Snprintf(char *str, const int len, const char *fmt, ...);
|
|
|
|
void *HAL_MutexCreate(void);
|
|
void HAL_MutexDestroy(void *mutex);
|
|
void HAL_MutexLock(void *mutex);
|
|
void HAL_MutexUnlock(void *mutex);
|
|
|
|
int HAL_GetProductKey(char product_key[IOTX_PRODUCT_KEY_LEN + 1]);
|
|
int HAL_GetProductSecret(char product_secret[IOTX_PRODUCT_SECRET_LEN + 1]);
|
|
int HAL_GetDeviceName(char device_name[IOTX_DEVICE_NAME_LEN + 1]);
|
|
int HAL_GetDeviceSecret(char device_secret[IOTX_DEVICE_SECRET_LEN + 1]);
|
|
int HAL_GetFirmwareVersion(char *version);
|
|
|
|
#ifdef DYNAMIC_REGISTER
|
|
int HAL_SetDeviceSecret(char *device_secret);
|
|
int HAL_GetProductSecret(char product_secret[IOTX_PRODUCT_SECRET_LEN + 1]);
|
|
int HAL_Kv_Set(const char *key, const void *val, int len, int sync);
|
|
int HAL_Kv_Get(const char *key, void *val, int *buffer_len);
|
|
#endif
|
|
|
|
#ifdef SUPPORT_TLS
|
|
uintptr_t HAL_SSL_Establish(const char *host, uint16_t port, const char *ca_crt, uint32_t ca_crt_len);
|
|
int32_t HAL_SSL_Destroy(uintptr_t handle);
|
|
int HAL_SSL_Write(uintptr_t handle, const char *buf, int len, int timeout_ms);
|
|
int HAL_SSL_Read(uintptr_t handle, char *buf, int len, int timeout_ms);
|
|
#else
|
|
uintptr_t HAL_TCP_Establish(const char *host, uint16_t port);
|
|
int HAL_TCP_Destroy(uintptr_t fd);
|
|
int32_t HAL_TCP_Write(uintptr_t fd, const char *buf, uint32_t len, uint32_t timeout_ms);
|
|
int32_t HAL_TCP_Read(uintptr_t fd, char *buf, uint32_t len, uint32_t timeout_ms);
|
|
#endif
|
|
|
|
/* mqtt protocol wrapper */
|
|
void *wrapper_mqtt_init(iotx_mqtt_param_t *mqtt_params);
|
|
int wrapper_mqtt_connect(void *client);
|
|
int wrapper_mqtt_yield(void *client, int timeout_ms);
|
|
int wrapper_mqtt_check_state(void *client);
|
|
int wrapper_mqtt_subscribe(void *client,
|
|
const char *topicFilter,
|
|
iotx_mqtt_qos_t qos,
|
|
iotx_mqtt_event_handle_func_fpt topic_handle_func,
|
|
void *pcontext);
|
|
int wrapper_mqtt_subscribe_sync(void *client,
|
|
const char *topic_filter,
|
|
iotx_mqtt_qos_t qos,
|
|
iotx_mqtt_event_handle_func_fpt topic_handle_func,
|
|
void *pcontext,
|
|
int timeout_ms);
|
|
int wrapper_mqtt_unsubscribe(void *client, const char *topicFilter);
|
|
int wrapper_mqtt_publish(void *client, const char *topicName, iotx_mqtt_topic_info_pt topic_msg);
|
|
int wrapper_mqtt_release(void **pclient);
|
|
int wrapper_mqtt_nwk_event_handler(void *client, iotx_mqtt_nwk_event_t event, iotx_mqtt_nwk_param_t *param);
|
|
|
|
|