m2mb API docs  25.21.002
m2mb API sets documentation
m2mb_atp.h
Go to the documentation of this file.
1 /*===============================================================================================*/
2 /* >>> Copyright (C) Telit Communications S.p.A. Italy All Rights Reserved. <<< */
22 #ifndef M2M_M2MB_ATP_API_H
23 #define M2M_M2MB_ATP_API_H
24 
25 
26 /* Global declarations ==========================================================================*/
27 
28 #define ATP_CMD_BUF_SIZE 6144
29 #define M2MB_ATP_MAX_NUM_OF_PARAMETERS 32
30 #if !defined (M2M_INTERNAL_AT_PARSER_PLUS_ATI)
31 #define M2MB_ATP_FIRST_INSTANCE_ID 0
32 #else
33 #define M2MB_ATP_FIRST_INSTANCE_ID 1
34 #endif
35 
36 #define M2MB_ATP_MAX_PARAM_STRING_LEN 16
37 #define M2MB_ATP_MAX_PARAM_VALUE_LEN 128
38 #define M2MB_ATP_MAX_PARAM_FILE_LEN (1+2*M2MB_ATP_MAX_PARAM_VALUE_LEN)
39 #define M2MB_ATP_MAX_PARAM_FILE_PATH_LEN 128
40 #define M2MB_ATP_MAX_OPT_ERR_STR_SIZE 60
41 
42 
43 #define ATP_THREAD_STACK_SIZE (1024 * 32)
44 #define M2MB_ATP_THREAD_STACK_SIZE (1024 * 24)
45 #define ATP_THREAD_N_MSG 100
46 #define ATP_THREAD_PRIORITY 231
47 
48 #define ATP_EXTATP_THREAD_STACK_SIZE (1024 * 4)
49 #define ATP_EXTATP_THREAD_PRIORITY ATP_THREAD_PRIORITY
50 
51 // Used to build Flags parameter when registering a command
52 #define M2MB_ATP_NORML 0x0000 // Command accepted only if sim and pin inserted
53 #define M2MB_ATP_NOPIN 0x0001 // Command accepted even if pin enabled and not inserted yet
54 #define M2MB_ATP_NOSIM 0x0002 // Command accepted if sim not inserted
55 #define M2MB_ATP_SMLCK 0x0004 // Command accepted even if simlock enabled
56 #define M2MB_ATP_NOPAR 0x0200 // Marker for special AT+Cmd=<CR> handling
57 #define M2MB_ATP_CLACH 0x0080 // Hidden command, not listed in +CLAC
58 
59 #define BS 0x08 /* back space */
60 #define LF 0x0a /* Line Feed */
61 #define CR 0x0d /* Carriage Return */
62 #define ESC 0x1b /* Escape */
63 #define CTRL_Z 0x1a /* Control Z (end of SMS PDU) */
64 
65 /* Global typedefs ==============================================================================*/
66 
67 typedef HANDLE M2MB_ATP_HANDLE;
68 
69 typedef INT16 SY_MESSAGE_ID;
70 typedef char CHAR;
71 
72 typedef enum
73 {
74  M2MB_ATP_CMDTYP_SET, // AT cmd of = type
75  M2MB_ATP_CMDTYP_READ, // AT cmd of ? type
76  M2MB_ATP_CMDTYP_TEST, // AT cmd of =? type
77  M2MB_ATP_CMDTYP_EXEC, // execution type AT command
78  M2MB_ATP_CMDTYP_NOPARAMS, // Special AT+CMD= for command with default parameter
79  M2MB_NUM_ATP_CMDTYP
80 } M2MB_ATP_CMDTYPE_E;
81 
82 typedef enum
83 {
84  ATP_RESOURCE_CALL,
85  ATP_RESOURCE_EMAIL,
86  ATP_RESOURCE_FTP,
87  ATP_RESOURCE_IPEASY,
88  ATP_RESOURCE_IPDIAL,
89  ATP_RESOURCE_GPS,
90  ATP_RESOURCE_TONES,
91  ATP_RESOURCE_FLASH,
92  ATP_RESOURCE_PING,
93  ATP_RESOURCE_HTTP,
94  ATP_RESOURCE_NUM
95 } ENUM_RESOURCE_ID;
96 
97 /* atp_event */
98 typedef enum
99 {
100  M2MB_ATP_DUMMY_IND
101 } M2MB_ATP_IND_E;
102 
103 typedef enum
104 {
105  M2MB_ATP_CMD_CALLBACK_IND,
106  M2MB_ATP_CMD_DELEGATION_IND
107 } M2MB_ATP_CMD_IND_E;
108 
109 typedef enum
110 {
111  M2MB_ATP_INPUT_MODE_NONE = 0,
112  M2MB_ATP_SMS_INPUT_MODE,
113  M2MB_ATP_EMAIL_INPUT_MODE,
114  M2MB_ATP_M2M_WRITE_INPUT_MODE,
115  M2MB_ATP_WLAN_INPUT_MODE,
116  M2MB_ATP_BLE_INPUT_MODE,
117  M2MB_ATP_ONLINE_INPUT_MODE,
118  M2MB_ATP_SILENT_INPUT_MODE,
119  M2MB_ATP_RUNNING_INPUT_MODE
120 } M2MB_ATP_INPUT_MODE;
121 
122 typedef enum
123 {
124  M2MB_ATP_FRC_SILENT = -1,
125  M2MB_ATP_FRC_OK = 0,
126  M2MB_ATP_FRC_ERROR,
127  M2MB_ATP_FRC_CME_ERROR,
128  M2MB_ATP_FRC_CMS_ERROR
129 } M2MB_ATP_FRC_E;
130 
131 typedef enum
132 {
133  M2MB_ATP_CME_PHONE_FAILURE = 0,
134  M2MB_ATP_CME_NO_CONNECTION_TO_PHONE = 1,
135  M2MB_ATP_CME_PHONE_LINK_RESERVED = 2,
136  M2MB_ATP_CME_OPERATION_NOT_ALLOWED = 3,
137  M2MB_ATP_CME_OPERATION_NOT_SUPPORTED = 4,
138  M2MB_ATP_CME_PHSIM_PIN_REQUIRED = 5,
139  M2MB_ATP_CME_PHFSIM_PIN_REQUIRED = 6,
140  M2MB_ATP_CME_SIM_NOT_INSERTED = 10,
141  M2MB_ATP_CME_SIM_PIN_REQUIRED = 11,
142  M2MB_ATP_CME_SIM_PUK_REQUIRED = 12,
143  M2MB_ATP_CME_SIM_FAILURE = 13,
144  M2MB_ATP_CME_SIM_BUSY = 14,
145  M2MB_ATP_CME_SIM_WRONG = 15,
146  M2MB_ATP_CME_INCORRECT_PASSWORD = 16,
147  M2MB_ATP_CME_SIM_PIN2_REQUIRED = 17,
148  M2MB_ATP_CME_SIM_PUK2_REQUIRED = 18,
149  M2MB_ATP_CME_MEMORY_FULL = 20,
150  M2MB_ATP_CME_INVALID_INDEX = 21,
151  M2MB_ATP_CME_NOT_FOUND = 22,
152  M2MB_ATP_CME_MEMORY_FAILURE = 23,
153  M2MB_ATP_CME_TEXT_TOO_LONG = 24,
154  M2MB_ATP_CME_INVALID_CHARS_IN_TEXT = 25,
155  M2MB_ATP_CME_DIAL_TOO_LONG = 26,
156  M2MB_ATP_CME_INVALID_CHARS_IN_DIAL = 27,
157  M2MB_ATP_CME_NO_NETWORK_SERVICE = 30,
158  M2MB_ATP_CME_NETWORK_TIMEOUT = 31,
159  M2MB_ATP_CME_NETWORK_NOT_ALLOWED = 32,
160  M2MB_ATP_CME_NCK_REQUIRED = 40,
161  M2MB_ATP_CME_NET_PERS_PUK_REQUIRED = 41,
162  M2MB_ATP_CME_NSCK_REQUIRED = 42,
163  M2MB_ATP_CME_NET_SUBSET_PERS_PUK_REQUIRED = 43,
164  M2MB_ATP_CME_SPCK_REQUIRED = 44,
165  M2MB_ATP_CME_SERV_PROV_PERS_PUK_EQUIRED = 45,
166  M2MB_ATP_CME_CPCK_REQUIRED = 46,
167  M2MB_ATP_CME_CORP_PERS_PUK_REQUIRED = 47,
168  M2MB_ATP_CME_HIDDEN_KEY_REQUIRED = 48,
169  M2MB_ATP_CME_UNKNOWN = 100,
170  M2MB_ATP_CME_ILLEGAL_MS = 103,
171  M2MB_ATP_CME_ILLEGAL_ME = 106,
172  M2MB_ATP_CME_GPRS_SERVICE_NOT_ALLW = 107,
173  M2MB_ATP_CME_PLMN_NOT_ALLW = 111,
174  M2MB_ATP_CME_LOC_AREA_NOT_ALLW = 112,
175  M2MB_ATP_CME_ROAM_NOT_ALW_IN_THIS_AREA = 113,
176  M2MB_ATP_CME_SERV_OPT_NOT_SUPPORTED = 132,
177  M2MB_ATP_CME_REQ_SERV_OPT_NOT_SUBSCRIBED = 133,
178  M2MB_ATP_CME_SERV_OPT_TEMP_OOF = 134,
179  M2MB_ATP_CME_UNSPECIFIED_GPRS_ERROR = 148,
180  M2MB_ATP_CME_PDP_AUTHENT_FAILURE = 149,
181  M2MB_ATP_CME_INVALID_MOBILE_CLASS = 150,
182 
183  // Manufacturer specific +CME ERROR errors(512..., see ETSI TS 100 585 V7.0.1 (1999-07))
184 
185  M2MB_ATP_CME_TEXT_PARAM_INSTEAD_OF_NUM_PARAM = 35,
186  M2MB_ATP_CME_NUM_PARAM_OUT_OF_BOUNDS = 36,
187  M2MB_ATP_CME_INVALID_PARAM_NUMBER = 277,
188 
189  M2MB_ATP_CME_CONTEXT_NOT_OPENED = 556,
190  M2MB_ATP_CME_CANNOT_SETUP_SOCKET = 557,
191  M2MB_ATP_CME_CANNOT_RESOLVE_DN = 558,
192  M2MB_ATP_CME_TIMEOUT_IN_OPENING_SOCKET = 559,
193  M2MB_ATP_CME_CANNOT_OPEN_SOCKET = 560,
194  M2MB_ATP_CME_REMOTE_DISCONNECTED = 561,
195  M2MB_ATP_CME_CONNECTION_FAILED = 562,
196  M2MB_ATP_CME_TX_ERROR = 563,
197  M2MB_ATP_CME_ALREADY_LISTENING = 564,
198  M2MB_ATP_CME_EASY_SKT_ABORT = 565,
199  M2MB_ATP_CME_EASY_NO_SOCKET = 566,
200  M2MB_ATP_CME_IP_VERSION_TYPE_INCOMPATIBLE = 567,
201  M2MB_ATP_CME_IPV6_NOT_ENABLED = 568,
202  M2MB_ATP_CME_EASY_CONNECTION_ABORT = 569,
203 
204  M2MB_ATP_CME_FTP_ALREADY_CONNECTED = 608,
205  M2MB_ATP_CME_CMDMODE = 613,
206  M2MB_ATP_CME_CMDMODE_NODATAPORT = 614,
207  M2MB_ATP_CME_FTP_NOT_CONNECTED = 615,
208  M2MB_ATP_CME_FTP_DISCONNECTED = 616,
209  M2MB_ATP_CME_FTP_READ_CMD_CLOSED = 617,
210  M2MB_ATP_CME_FTP_READ_CMD_ERROR = 618,
211  M2MB_ATP_CME_FTP_WRITE_CMD_CLOSED = 619,
212  M2MB_ATP_CME_FTP_WRITE_CMD_ERROR = 620,
213  M2MB_ATP_CME_FTP_READ_DATA_CLOSED = 621,
214  M2MB_ATP_CME_FTP_READ_DATA_ERROR = 622,
215  M2MB_ATP_CME_FTP_WRITE_DATA_CLOSED = 623,
216  M2MB_ATP_CME_FTP_WRITE_DATA_ERROR = 624,
217  M2MB_ATP_CME_FTP_HOST_NOT_FOUND = 625,
218  M2MB_ATP_CME_FTP_ACCEPT_FAIL = 626,
219  M2MB_ATP_CME_FTP_LISTEN_FAIL = 627,
220  M2MB_ATP_CME_FTP_BIND_FAIL = 628,
221  M2MB_ATP_CME_FTP_FILE_CREATE_FAIL = 629,
222  M2MB_ATP_CME_FTP_FILE_GET_COMPLETE = 630,
223  M2MB_ATP_CME_FTP_FILE_PUT_COMPLETE = 631,
224  M2MB_ATP_CME_FTP_FILE_NOT_FOUND = 632,
225  M2MB_ATP_CME_FTP_TIME_OUT = 633,
226  M2MB_ATP_CME_FTP_LOGIN_INCORRECT = 634,
227  M2MB_ATP_CME_FTP_CLOSE_ERROR = 635,
228  M2MB_ATP_CME_FTP_SERVER_NOT_READY = 636,
229  M2MB_ATP_CME_FTP_SERVER_SHUTDOWN = 637,
230  M2MB_ATP_CME_FTP_UNEXPECTED_REPLY = 638,
231  M2MB_ATP_CME_FTP_USERID_INVALID = 639,
232  M2MB_ATP_CME_FTP_PASSWD_INVALID = 640,
233  M2MB_ATP_CME_FTP_USER_ALREADY_LOGIN = 641,
234  M2MB_ATP_CME_FTP_OPEN_CHANNEL_TIMEOUT = 642,
235  M2MB_ATP_CME_FTP_COMM_TIMEOUT = 643,
236  M2MB_ATP_CME_FTP_UNKNOWN_ERROR = 644,
237 
238  M2MB_ATP_CME_SSL_SSL_NOT_ACTIVATED = 1000,
239  M2MB_ATP_CME_SSL_SSL_CERT_KEYS_WRONG = 1001,
240  M2MB_ATP_CME_SSL_SSL_GENERIC_ERROR = 1002,
241  M2MB_ATP_CME_SSL_SSL_ALREADY_ACTIVATED = 1003,
242  M2MB_ATP_CME_SSL_SSL_ERR_DURING_HANDSHAKE = 1004,
243  M2MB_ATP_CME_SSL_SSL_SOCKET_ERROR = 1005,
244  M2MB_ATP_CME_SSL_SSL_INVALID_STATE = 1006,
245  M2MB_ATP_CME_SSL_SSL_CAN_NOT_ACTIVATE = 1007,
246  M2MB_ATP_CME_SSL_SSL_NOT_CONNECTED = 1008,
247  M2MB_ATP_CME_SSL_SSL_ALREADY_CONNECTED = 1009,
248  M2MB_ATP_CME_SSL_SSL_ENC_DEC_DATA_ERROR = 1010,
249  M2MB_ATP_CME_SSL_SSL_DISCONNECTED = 1011,
250 
251  M2MB_ATP_CME_MQTT_INIT_FAIL = 1100,
252  M2MB_ATP_CME_MQTT_DEINIT_FAIL = 1101,
253  M2MB_ATP_CME_MQTT_CONF_FAIL = 1102,
254  M2MB_ATP_CME_MQTT_CONNECT_FAIL = 1103,
255  M2MB_ATP_CME_MQTT_DISCONNECT_FAIL = 1104,
256  M2MB_ATP_CME_MQTT_PUBLISH_FAIL = 1105,
257  M2MB_ATP_CME_MQTT_SUBSCRIBE_FAIL = 1106,
258  M2MB_ATP_CME_MQTT_UNSUBSCRIBE_FAIL = 1107,
259  M2MB_ATP_CME_MQTT_SSL_CONFIG_FAIL = 1108,
260 
261  M2MB_ATP_CME_GTP_TIMEOUT_ERROR = 1150,
262  M2MB_ATP_CME_GTP_PDP_ERROR = 1151,
263  M2MB_ATP_CME_GTP_DISABLED_ERROR = 1152,
264  M2MB_ATP_CME_GTP_ENA_CMD_NOT_SUPPORTED = 1153,
265  M2MB_ATP_CME_GTP_REBOOT_FAILED = 1154,
266 } M2MB_ATP_CME_E;
267 
268 typedef enum
269 {
270  M2MB_ATP_CMS_UNASSIGNED_NUMBER = 1,
271  M2MB_ATP_CMS_OPERATOR_BARRING = 8,
272  M2MB_ATP_CMS_CALL_BARRED = 10,
273  M2MB_ATP_CMS_SMS_TRANSFER_REJECTED = 21,
274  M2MB_ATP_CMS_OUT_OF_SERVICE_DEST = 27,
275  M2MB_ATP_CMS_UNIDENTIFIED_SUBSCRIBER = 28,
276  M2MB_ATP_CMS_FACILITY_REJECTED = 29,
277  M2MB_ATP_CMS_UNKNOWN_SUBSCRIBER = 30,
278  M2MB_ATP_CMS_OUT_OF_ORDER_NETWORK = 38,
279  M2MB_ATP_CMS_TEMP_FAILURE = 41,
280  M2MB_ATP_CMS_CONGESTION = 42,
281  M2MB_ATP_CMS_UNAVAILABLE_RESOURCE = 47,
282  M2MB_ATP_CMS_FACILTY_NOT_SUBSCRIBED = 50,
283  M2MB_ATP_CMS_FACILTY_NOT_IMPLEMENTED = 69,
284  M2MB_ATP_CMS_INVALID_SMS_MSG_REF = 81,
285  M2MB_ATP_CMS_INVALID_SMS = 95,
286  M2MB_ATP_CMS_INVALID_MANDAT_INFO = 96,
287  M2MB_ATP_CMS_MSG_TYPE_NOT_IMPLEMENTED = 97,
288  M2MB_ATP_CMS_MSG_TYPE_NOT_COMPATIBLE = 98,
289  M2MB_ATP_CMS_IE_NOT_IMPLEMENTED = 99,
290  M2MB_ATP_CMS_PROTOCOL_ERROR = 111,
291  M2MB_ATP_CMS_INTERWORKING = 127,
292  M2MB_ATP_CMS_TEL_INTERWORK_NOT_SUPPORTED = 128,
293  M2MB_ATP_CMS_SMTYPE0_NOT_SUPPORTED = 129,
294  M2MB_ATP_CMS_CANNOT_REPLACE_SMS = 130,
295  M2MB_ATP_CMS_UNSPECIFIED_PID_ERROR = 143,
296  M2MB_ATP_CMS_DCS_NOT_SUPPORTED = 144,
297  M2MB_ATP_CMS_UNSPECIFIED_DCS_ERROR = 159,
298  M2MB_ATP_CMS_TPDU_NOT_SUPPORTED = 176,
299  M2MB_ATP_CMS_SC_BUSY = 192,
300  M2MB_ATP_CMS_NO_SC_SUBSCRIPTION = 193,
301  M2MB_ATP_CMS_SC_SYSTEM_FAILURE = 194,
302  M2MB_ATP_CMS_INVALID_SME_ADDRESS = 195,
303  M2MB_ATP_CMS_DESTINATION_SME_BARRED = 196,
304  M2MB_ATP_CMS_SM_REJ_DUPL_SM = 197,
305  M2MB_ATP_CMS_VPF_NOT_SUPPORTED = 198,
306  M2MB_ATP_CMS_VP_NOT_SUPPORTED = 199,
307  M2MB_ATP_CMS_UNSPECIFIED_TPFCS_ERROR = 255,
308  M2MB_ATP_CMS_ME_FAILURE = 300,
309  M2MB_ATP_CMS_SMS_SERV_RESERVED = 301,
310  M2MB_ATP_CMS_OPERATION_NOT_ALLOWED = 302,
311  M2MB_ATP_CMS_OPERATION_NOT_SUPPORTED = 303,
312  M2MB_ATP_CMS_INVALID_PDU_MODE_PARAMETER = 304,
313  M2MB_ATP_CMS_INVALID_TEXT_MODE_PARAMETER = 305,
314  M2MB_ATP_CMS_SIM_NOT_INSERTED = 310,
315  M2MB_ATP_CMS_SIM_PIN_REQUIRED = 311,
316  M2MB_ATP_CMS_PHSIM_PIN_REQUIRED = 312,
317  M2MB_ATP_CMS_SIM_FAILURE = 313,
318  M2MB_ATP_CMS_SIM_BUSY = 314,
319  M2MB_ATP_CMS_SIM_WRONG = 315,
320  M2MB_ATP_CMS_SIM_PUK_REQUIRED = 316,
321  M2MB_ATP_CMS_SIM_PIN2_REQUIRED = 317,
322  M2MB_ATP_CMS_SIM_PUK2_REQUIRED = 318,
323  M2MB_ATP_CMS_MEMORY_FAILURE = 320,
324  M2MB_ATP_CMS_INVALID_INDEX = 321,
325  M2MB_ATP_CMS_MEMORY_FULL = 322,
326  M2MB_ATP_CMS_SMSC_ADDRESS_UNKNOWN = 330,
327  M2MB_ATP_CMS_NO_NETWORK_SERVICE = 331,
328  M2MB_ATP_CMS_NETWORK_TIMEOUT = 332,
329  M2MB_ATP_CMS_NO_CNMA_ACK_EXPECTED = 340,
330  M2MB_ATP_CMS_UNKNOWN = 500,
331  M2MB_ATP_CMS_FDN_NOT_ALLOWED_NUMBER = 512
332 } M2MB_ATP_CMS_E;
333 
334 typedef enum
335 {
336  M2MB_ATP_SLNT_NONE = -1,
337  M2MB_ATP_SLNT_COMPLETED = 0,
338  M2MB_ATP_SLNT_NO_CARRIER = 1,
339  M2MB_ATP_SLNT_NO_CARRIER_MODE = 2 /* BUG 51036 */
340 } M2MB_ATP_SLNT_E;
341 
342 typedef enum
343 {
344  M2MB_ATP_UNS_BUFFER_IF_BUSY=0,
345  M2MB_ATP_UNS_DISCARD_IF_BUSY,
346 } M2MB_ATP_UNS_MODE_E;
347 
348 typedef struct
349 {
350  M2MB_ATP_HANDLE atpHandle;
351  M2MB_ATP_CMD_IND_E atpEvent;
352  UINT16 resp_size;
353  void *resp_struct;
354  void *atptaskUserdata;
356 
357 /* atpParam */
358 typedef struct
359 {
360  CHAR *atpCmdString; // Command string
361  M2MB_ATP_CMDTYPE_E type; // Command type (Read, Set, Test, TestExt)
362  UINT16 rawDataLen; // Length of raw command parameters
363  CHAR *rawData; // Pointer to raw command parameters
364  UINT16 itemNum; // Number of parameters
365  CHAR **item; // Pointers to parameters
367 
368 /* resp_struct in case of M2MB_ATP_CALLBACK_IND event */
369 typedef struct
370 {
371  UINT16 instanceNumber;
373 
374 /* delegationEventMsg in case of M2MB_ATP_DATA_IND delegationEvent */
375 typedef struct
376 {
377  INT32 x;
379 
380 /* delegationEventMsg in case of M2MB_ATP_ESCAPE_IND delegationEvent */
381 typedef struct
382 {
383  INT32 y;
385 
386 /* delegationEvent */
387 typedef enum
388 {
389  M2MB_ATP_DATA_IND,
390  M2MB_ATP_ESCAPE_IND,
391  M2MB_ATP_BUFFER_EMPTY_IND,
392  M2MB_ATP_CLOSE_CON_IND
393 } M2MB_ATP_DELEGATION_IND_E;
394 
395 /* resp_struct in case of M2MB_ATP_DELEGATION_IND event */
396 typedef struct
397 {
398  UINT16 instanceNumber;
399  M2MB_ATP_DELEGATION_IND_E event;
400  UINT16 msg_size;
401  void *msg;
403 
404 typedef void ( *m2mb_atp_ind_callback )( M2MB_ATP_HANDLE h, M2MB_ATP_IND_E atp_event, UINT16 resp_size, void *resp_struct, void *userdata );
405 typedef void ( *m2mb_atp_cmd_ind_callback )( M2MB_ATP_HANDLE h, M2MB_ATP_CMD_IND_E atp_event, UINT16 resp_size, void *resp_struct, void *userdata );
406 typedef struct M2MB_ATP_CMD_HANDLE_T
407 {
408  M2MB_ATP_HANDLE atpHandle;
409  CHAR *atpCmdString;
410  UINT16 atpFlags;
411  m2mb_atp_cmd_ind_callback atpCallback;
412  void *atpUserData;
413  struct M2MB_ATP_CMD_HANDLE_T *pNext;
415 
416 typedef union
417 {
418  INT32 get_integer;
419  CHAR *get_string;
421 
422 /* Global functions =============================================================================*/
423 /*-----------------------------------------------------------------------------------------------*/
463 /*-----------------------------------------------------------------------------------------------*/
464 M2MB_RESULT_E m2mb_atp_init( M2MB_ATP_HANDLE *h, m2mb_atp_ind_callback callback, void *userdata );
465 
466 /*-----------------------------------------------------------------------------------------------*/
498 /*-----------------------------------------------------------------------------------------------*/
499 M2MB_RESULT_E m2mb_atp_deinit( M2MB_ATP_HANDLE h );
500 
501 /*-----------------------------------------------------------------------------------------------*/
571 /*-----------------------------------------------------------------------------------------------*/
572 M2MB_RESULT_E m2mb_atp_register( M2MB_ATP_HANDLE atpHandle, CHAR *atpCmdString, UINT16 atpFlags, m2mb_atp_cmd_ind_callback atpCallback, void *atpUserdata );
573 
574 /*-----------------------------------------------------------------------------------------------*/
643 /*-----------------------------------------------------------------------------------------------*/
644 M2MB_RESULT_E m2mb_atp_get_cmd_userdata( M2MB_ATP_HANDLE atpHandle, CHAR *atpCmdString, void **atpUserdata );
645 
646 /*-----------------------------------------------------------------------------------------------*/
680 M2MB_RESULT_E m2mb_atp_deregister( M2MB_ATP_HANDLE atpHandle, CHAR *atpCmdString );
681 
682 /*-----------------------------------------------------------------------------------------------*/
749 /*-----------------------------------------------------------------------------------------------*/
750 M2MB_RESULT_E m2mb_atp_msgout( M2MB_ATP_HANDLE atpHandle, UINT16 instanceNum, CHAR *msg );
751 
752 /*-----------------------------------------------------------------------------------------------*/
826 /*-----------------------------------------------------------------------------------------------*/
827 M2MB_RESULT_E m2mb_atp_release( M2MB_ATP_HANDLE h, UINT16 instanceNum, M2MB_ATP_FRC_E res, INT16 errorCode, CHAR *optionalErrString );
828 
829 /*-----------------------------------------------------------------------------------------------*/
924 /*-----------------------------------------------------------------------------------------------*/
925 M2MB_RESULT_E m2mb_atp_change_input_mode( M2MB_ATP_HANDLE atpHandle,
926  UINT16 instanceNum,
927  M2MB_ATP_INPUT_MODE mode );
928 
929 
930 /*-----------------------------------------------------------------------------------------------*/
1032 /*-----------------------------------------------------------------------------------------------*/
1033 M2MB_RESULT_E m2mb_atp_get_input_mode( M2MB_ATP_HANDLE atpHandle,
1034  UINT16 instanceNum,
1035  M2MB_ATP_INPUT_MODE *mode );
1036 
1037 /*-----------------------------------------------------------------------------------------------*/
1112 /*-----------------------------------------------------------------------------------------------*/
1113 INT32 m2mb_atp_rx( M2MB_ATP_HANDLE atpHandle, UINT16 instanceNum, void *rxBuffer, INT32 rxBufferSize );
1114 
1115 /*-----------------------------------------------------------------------------------------------*/
1189 /*-----------------------------------------------------------------------------------------------*/
1190 INT32 m2mb_atp_tx( M2MB_ATP_HANDLE atpHandle, UINT16 instanceNum, void *txBuffer, INT32 txBufferSize );
1191 
1192 /*-----------------------------------------------------------------------------------------------*/
1226 /*-----------------------------------------------------------------------------------------------*/
1227 M2MB_RESULT_E m2mb_atp_get_input_data( M2MB_ATP_HANDLE h, UINT16 instanceNum, M2MB_ATP_PARAM_T **input_data );
1228 
1229 /*-----------------------------------------------------------------------------------------------*/
1258 /*-----------------------------------------------------------------------------------------------*/
1259 M2MB_RESULT_E m2mb_atp_unsolicited_instance( M2MB_ATP_HANDLE h, UINT16 instanceNum, CHAR *unsMsg, M2MB_ATP_UNS_MODE_E mode );
1260 
1261 /*-----------------------------------------------------------------------------------------------*/
1288 /*-----------------------------------------------------------------------------------------------*/
1289 M2MB_RESULT_E m2mb_atp_unsolicited_broadcast( M2MB_ATP_HANDLE h, CHAR *unsMsg, M2MB_ATP_UNS_MODE_E mode );
1290 
1291 /*-----------------------------------------------------------------------------------------------*/
1356 /*-----------------------------------------------------------------------------------------------*/
1357 M2MB_RESULT_E m2mb_atp_at_command_conf( M2MB_ATP_HANDLE h, UINT16 instanceNum, CHAR *atCmdString, UINT8 argc, ... );
1358 
1359 /*-----------------------------------------------------------------------------------------------*/
1437 /*-----------------------------------------------------------------------------------------------*/
1438 M2MB_RESULT_E m2mb_atp_forward_parser( M2MB_ATP_HANDLE h, UINT16 instanceNum, CHAR *optionalCmdString );
1439 
1440 /*-----------------------------------------------------------------------------------------------*/
1469 /*-----------------------------------------------------------------------------------------------*/
1470 M2MB_RESULT_E m2mb_atp_data_out_process(M2MB_ATP_HANDLE h, UINT16 instanceNum,
1471  void *data, UINT32 dataLen );
1472 #endif /* M2M_M2MB_ATP_API_H */
1473 
m2mb_atp_deinit
M2MB_RESULT_E m2mb_atp_deinit(M2MB_ATP_HANDLE h)
m2mb_atp_deinit deinitializes AT Parser for current client.
M2MB_ATP_PARAM_T
Definition: m2mb_atp.h:358
M2MB_ATP_CALLBACK_IND_T
Definition: m2mb_atp.h:369
m2mb_atp_unsolicited_instance
M2MB_RESULT_E m2mb_atp_unsolicited_instance(M2MB_ATP_HANDLE h, UINT16 instanceNum, CHAR *unsMsg, M2MB_ATP_UNS_MODE_E mode)
m2mb_atp_unsolicited_instance sends an unsolicited indication to an AT parser instance.
m2mb_atp_get_cmd_userdata
M2MB_RESULT_E m2mb_atp_get_cmd_userdata(M2MB_ATP_HANDLE atpHandle, CHAR *atpCmdString, void **atpUserdata)
m2mb_atp_get_cmd_userdata gets userdata linked with input AT command.
m2mb_atp_tx
INT32 m2mb_atp_tx(M2MB_ATP_HANDLE atpHandle, UINT16 instanceNum, void *txBuffer, INT32 txBufferSize)
m2mb_atp_tx transmits on AT parser instance port the characters in the input buffer.
m2mb_atp_release
M2MB_RESULT_E m2mb_atp_release(M2MB_ATP_HANDLE h, UINT16 instanceNum, M2MB_ATP_FRC_E res, INT16 errorCode, CHAR *optionalErrString)
m2mb_atp_release ends the execution of an AT command in AT parser.
m2mb_atp_get_input_mode
M2MB_RESULT_E m2mb_atp_get_input_mode(M2MB_ATP_HANDLE atpHandle, UINT16 instanceNum, M2MB_ATP_INPUT_MODE *mode)
m2mb_atp_get_input_mode gets current AT parser input mode.
m2mb_atp_unsolicited_broadcast
M2MB_RESULT_E m2mb_atp_unsolicited_broadcast(M2MB_ATP_HANDLE h, CHAR *unsMsg, M2MB_ATP_UNS_MODE_E mode)
m2mb_atp_unsolicited_broadcast broadcasts an unsolicited indication to all AT parser instances.
m2mb_atp_deregister
M2MB_RESULT_E m2mb_atp_deregister(M2MB_ATP_HANDLE atpHandle, CHAR *atpCmdString)
m2mb_atp_deregister deregisters an AT command in the AT parser.
M2MB_ATP_ESCAPE_IND_T
Definition: m2mb_atp.h:381
M2MB_ATP_DATA_IND_T
Definition: m2mb_atp.h:375
m2mb_atp_change_input_mode
M2MB_RESULT_E m2mb_atp_change_input_mode(M2MB_ATP_HANDLE atpHandle, UINT16 instanceNum, M2MB_ATP_INPUT_MODE mode)
m2mb_atp_change_input_mode changes AT parser input mode (command or text entering,...
M2MB_ATP_CMD_HANDLE_T
Definition: m2mb_atp.h:406
m2mb_atp_data_out_process
M2MB_RESULT_E m2mb_atp_data_out_process(M2MB_ATP_HANDLE h, UINT16 instanceNum, void *data, UINT32 dataLen)
m2mb_atp_data_out_process passes data delegation function of the current AT command.
M2MB_ATP_REQ_T
Definition: m2mb_atp.h:348
m2mb_atp_forward_parser
M2MB_RESULT_E m2mb_atp_forward_parser(M2MB_ATP_HANDLE h, UINT16 instanceNum, CHAR *optionalCmdString)
m2mb_atp_forward_parser forwards an AT commands to internal AT parser.
m2mb_atp_rx
INT32 m2mb_atp_rx(M2MB_ATP_HANDLE atpHandle, UINT16 instanceNum, void *rxBuffer, INT32 rxBufferSize)
m2mb_atp_rx reads in a buffer characters just received on current AT parser instance port.
M2MB_ATP_DELEGATION_IND_T
Definition: m2mb_atp.h:396
M2MB_ATP_AT_COMMAND_VAL_U
Definition: m2mb_atp.h:416
m2mb_atp_msgout
M2MB_RESULT_E m2mb_atp_msgout(M2MB_ATP_HANDLE atpHandle, UINT16 instanceNum, CHAR *msg)
m2mb_atp_msgout sends a string on terminal connected to AT parser.
m2mb_atp_register
M2MB_RESULT_E m2mb_atp_register(M2MB_ATP_HANDLE atpHandle, CHAR *atpCmdString, UINT16 atpFlags, m2mb_atp_cmd_ind_callback atpCallback, void *atpUserdata)
m2mb_atp_register registers an AT command in the AT parser.
m2mb_atp_get_input_data
M2MB_RESULT_E m2mb_atp_get_input_data(M2MB_ATP_HANDLE h, UINT16 instanceNum, M2MB_ATP_PARAM_T **input_data)
m2mb_atp_get_input_data gets a structure allocated by AT parser containing input data.
m2mb_atp_init
M2MB_RESULT_E m2mb_atp_init(M2MB_ATP_HANDLE *h, m2mb_atp_ind_callback callback, void *userdata)
m2mb_atp_init initializes AT Parser for current client.
m2mb_atp_at_command_conf
M2MB_RESULT_E m2mb_atp_at_command_conf(M2MB_ATP_HANDLE h, UINT16 instanceNum, CHAR *atCmdString, UINT8 argc,...)
m2mb_atp_at_command_conf sets/gets some AT commands configuration values.