Link Kit C-SDK  4.0.0
aiot_ntp_api.h
浏览该文件的文档.
1 
22 #ifndef __AIOT_NTP_API_H__
23 #define __AIOT_NTP_API_H__
24 
25 #if defined(__cplusplus)
26 extern "C" {
27 #endif
28 
29 #include <stdint.h>
30 
34 #define STATE_NTP_BASE (-0x1100)
35 
39 #define STATE_NTP_MISSING_MQTT_HANDLE (-0x1101)
40 
44 typedef enum {
47 
51 typedef struct {
55  aiot_ntp_recv_type_t type;
56  union {
60  struct {
61  uint64_t timestamp;
62  uint32_t year;
63  uint32_t mon;
64  uint32_t day;
65  uint32_t hour;
66  uint32_t min;
67  uint32_t sec;
68  uint32_t msec;
69  } local_time;
70  } data;
72 
82 typedef void (* aiot_ntp_recv_handler_t)(void *handle,
83  const aiot_ntp_recv_t *packet, void *userdata);
84 
88 typedef enum {
98 
102 typedef struct {
107  aiot_ntp_event_type_t type;
109 
118 typedef void (*aiot_ntp_event_handler_t)(void *handle, const aiot_ntp_event_t *event, void *userdata);
119 
135 typedef enum {
144 
155 
164 
173 
182 
197 
206 void *aiot_ntp_init(void);
207 
230 int32_t aiot_ntp_setopt(void *handle, aiot_ntp_option_t option, void *data);
231 
242 int32_t aiot_ntp_deinit(void **handle);
243 
257 int32_t aiot_ntp_send_request(void *handle);
258 
259 #if defined(__cplusplus)
260 }
261 #endif
262 
263 #endif /* __AIOT_NTP_API_H__ */
264 
int32_t aiot_ntp_send_request(void *handle)
向ntp服务器发送ntp消息请求
Definition: aiot_ntp_api.c:286
Definition: aiot_ntp_api.h:195
void * aiot_ntp_init(void)
创建ntp会话实例, 并以默认值配置会话参数
Definition: aiot_ntp_api.c:156
aiot_ntp_event_type_t type
NTP内部事件类型. 更多信息请参考aiot_ntp_event_type_t.
Definition: aiot_ntp_api.h:107
销毁ntp实例时, 等待其他api执行完毕的时间
Definition: aiot_ntp_api.h:194
aiot_ntp_event_type_t
ntp内部事件类型
Definition: aiot_ntp_api.h:88
uint32_t day
Definition: aiot_ntp_api.h:64
uint64_t timestamp
Definition: aiot_ntp_api.h:61
uint32_t msec
Definition: aiot_ntp_api.h:68
收到的ntp应答中时间字段格式错误
Definition: aiot_ntp_api.h:96
ntp会话 获取到utc时间后会根据此时区值转换成本地时间, 再通过 aiot_ntp_recv_handler_t 通知 ...
Definition: aiot_ntp_api.h:154
int32_t aiot_ntp_deinit(void **handle)
结束ntp会话, 销毁实例并回收资源
Definition: aiot_ntp_api.c:245
uint32_t year
Definition: aiot_ntp_api.h:62
void(* aiot_ntp_event_handler_t)(void *handle, const aiot_ntp_event_t *event, void *userdata)
ntp事件回调函数
Definition: aiot_ntp_api.h:118
用户需要SDK暂存的上下文
Definition: aiot_ntp_api.h:181
uint32_t mon
Definition: aiot_ntp_api.h:63
ntp模块收到从网络上来的报文时, 通知用户的报文内容
Definition: aiot_ntp_api.h:51
aiot_ntp_recv_type_t type
报文内容所对应的报文类型, 更多信息请参考aiot_ntp_recv_type_t
Definition: aiot_ntp_api.h:55
void(* aiot_ntp_recv_handler_t)(void *handle, const aiot_ntp_recv_t *packet, void *userdata)
ntp模块收到从网络上来的报文时, 通知用户所调用的数据回调函数
Definition: aiot_ntp_api.h:82
aiot_ntp_option_t
aiot_ntp_setopt 接口的option参数可选值.
Definition: aiot_ntp_api.h:135
设置回调, 它在SDK收到网络报文的时候被调用, 告知用户
Definition: aiot_ntp_api.h:163
uint32_t hour
Definition: aiot_ntp_api.h:65
aiot_ntp_recv_type_t
ntp模块收到从网络上来的报文时, 通知用户的报文类型
Definition: aiot_ntp_api.h:44
ntp会话 需要的MQTT句柄, 需要先建立MQTT连接, 再设置MQTT句柄
Definition: aiot_ntp_api.h:143
uint32_t sec
Definition: aiot_ntp_api.h:67
ntp内部发生的事件会从此回调函数进行通知
Definition: aiot_ntp_api.h:172
int32_t aiot_ntp_setopt(void *handle, aiot_ntp_option_t option, void *data)
配置ntp会话
Definition: aiot_ntp_api.c:182
uint32_t min
Definition: aiot_ntp_api.h:66
Definition: aiot_ntp_api.h:45
NTP内部事件
Definition: aiot_ntp_api.h:102
收到的ntp应答中字段不合法
Definition: aiot_ntp_api.h:92