anjay
sms.h
Go to the documentation of this file.
1 /*
2  * Copyright 2017-2024 AVSystem <avsystem@avsystem.com>
3  * AVSystem Anjay LwM2M SDK
4  * All rights reserved.
5  *
6  * Licensed under the AVSystem-5-clause License.
7  * See the attached LICENSE file for details.
8  */
9 #ifndef ANJAY_INCLUDE_ANJAY_SMS_H
10 #define ANJAY_INCLUDE_ANJAY_SMS_H
11 
12 #include <anjay/core.h>
13 
14 #ifdef __cplusplus
15 extern "C" {
16 #endif
17 
18 #define ANJAY_MSISDN_SIZE 16
19 
20 typedef struct {
21  uint8_t csms_ref_length;
22  uint32_t csms_ref;
23  uint8_t part_number;
24  uint8_t total_parts;
26 
27 typedef int
29  const char *source,
30  const void *data,
31  uint8_t data_size,
32  const anjay_smsdrv_multipart_info_t *multipart_info,
33  bool *out_should_remove);
50 typedef int
52  const char *destination,
53  const void *data,
54  size_t data_size,
55  const anjay_smsdrv_multipart_info_t *multipart_info,
56  avs_time_duration_t timeout);
57 
71  avs_time_duration_t timeout);
72 
87  void *cb_arg);
88 
101  const void **out);
102 
116 typedef avs_errno_t anjay_smsdrv_error_t(anjay_smsdrv_t *driver);
117 
123 typedef void anjay_smsdrv_free_t(anjay_smsdrv_t *driver);
124 
141 };
142 
156 
157 #ifdef __cplusplus
158 }
159 #endif
160 
161 #endif /* ANJAY_INCLUDE_ANJAY_SMS_H */
int anjay_smsdrv_recv_all_t(anjay_smsdrv_t *driver, anjay_smsdrv_recv_all_cb_t *cb, void *cb_arg)
Definition: sms.h:85
void anjay_smsdrv_cleanup(anjay_smsdrv_t **driver)
int anjay_smsdrv_should_try_recv_t(anjay_smsdrv_t *driver, avs_time_duration_t timeout)
Definition: sms.h:70
avs_errno_t anjay_smsdrv_error_t(anjay_smsdrv_t *driver)
Definition: sms.h:116
int anjay_smsdrv_recv_all_cb_t(void *cb_arg, const char *source, const void *data, uint8_t data_size, const anjay_smsdrv_multipart_info_t *multipart_info, bool *out_should_remove)
Definition: sms.h:28
void anjay_smsdrv_free_t(anjay_smsdrv_t *driver)
Definition: sms.h:123
int anjay_smsdrv_send_t(anjay_smsdrv_t *driver, const char *destination, const void *data, size_t data_size, const anjay_smsdrv_multipart_info_t *multipart_info, avs_time_duration_t timeout)
Definition: sms.h:51
int anjay_smsdrv_system_socket_t(anjay_smsdrv_t *driver, const void **out)
Definition: sms.h:100
Definition: sms.h:20
uint8_t part_number
Definition: sms.h:23
uint8_t csms_ref_length
Definition: sms.h:21
uint32_t csms_ref
Definition: sms.h:22
uint8_t total_parts
Definition: sms.h:24
Definition: sms.h:134
anjay_smsdrv_error_t * get_error
Definition: sms.h:139
anjay_smsdrv_recv_all_t * recv_all
Definition: sms.h:137
anjay_smsdrv_send_t * send
Definition: sms.h:135
anjay_smsdrv_system_socket_t * system_socket
Definition: sms.h:138
anjay_smsdrv_free_t * free
Definition: sms.h:140
anjay_smsdrv_should_try_recv_t * should_try_recv
Definition: sms.h:136