liubin | 281ac46 | 2023-07-19 14:22:54 +0800 | [diff] [blame] | 1 | #ifndef LYNQ_SMS_QPI_H
|
| 2 | #define LYNQ_SMS_QPI_H
|
| 3 | /*
|
| 4 | *
|
| 5 | * Data : 2022/11/29
|
| 6 | * Author : LuoJian
|
| 7 | */
|
| 8 |
|
| 9 | #include "mbtk_type.h"
|
| 10 |
|
| 11 | #define TELEPHONE_NUM_MAX 16
|
| 12 | #define MSM_NUMBER_MAX 1024+1
|
| 13 | #define RES_NUM_MIN 128
|
| 14 |
|
| 15 |
|
| 16 | enum EnumDCS {
|
| 17 | BIT7 = 0, // GSM ×Ö·û¼¯
|
| 18 | BIT8 = 1, // ASCII×Ö·û¼¯
|
| 19 | UCS2 = 2 // Unicode ×Ö·û¼¯
|
| 20 | };
|
| 21 |
|
| 22 | struct PDUUDH {
|
| 23 | unsigned int count; // ÐÅÏ¢ÔªËØÊý¾Ý×Ö½ÚÊý
|
| 24 | char IEI; // ÐÅÏ¢ÔªËØ±êʶ
|
| 25 | char *IED; // ÐÅÏ¢ÔªËØÊý¾Ý
|
| 26 | };
|
| 27 |
|
| 28 | // Óû§Êý¾ÝÍ·
|
| 29 | struct UDHS {
|
| 30 | int count;
|
| 31 | struct PDUUDH *UDH;
|
| 32 | };
|
| 33 |
|
| 34 | struct SMS_Struct {
|
| 35 | char *SCA; // ·þÎñÖÐÐĵØÖ·
|
| 36 | char *OA; // ·¢ËÍ·½µØÖ·
|
| 37 | char *SCTS; // ·þÎñÖÐÐÄʱ¼ä´Á
|
| 38 | struct UDHS *UDH; // Óû§Êý¾ÝÍ·
|
| 39 | char *UD; // Óû§Êý¾Ý
|
| 40 |
|
| 41 | bool RP; // Ó¦´ð·¾¶
|
| 42 | bool UDHI; // Óû§Êý¾ÝÍ·±êʶ
|
| 43 | bool SRI; // ״̬±¨¸æÖ¸Ê¾
|
| 44 | bool MMS; // ¸ü¶àÐÅÏ¢·¢ËÍ
|
| 45 | int MTI; // ÐÅÏ¢ÀàÐÍָʾ
|
| 46 |
|
| 47 | char PID; // PID ÐÒé±êʶ
|
| 48 |
|
| 49 | enum EnumDCS DCS; // Êý¾Ý±àÂë·½°¸
|
| 50 | bool TC; // Îı¾Ñ¹Ëõָʾ 0£º δѹËõ 1£ºÑ¹Ëõ
|
| 51 | int MC; // ÏûÏ¢ÀàÐÍ -1£º ÎÞ 1£ºÒƶ¯Éè±¸ÌØ¶¨ÀàÐÍ 2£ºSIMÌØ¶¨ÀàÐÍ 3£ºÖÕ¶ËÉè±¸ÌØ¶¨ÀàÐÍ
|
| 52 |
|
| 53 | };
|
| 54 |
|
| 55 | extern struct SMS_Struct PDUDecoding(const char *data);
|
| 56 | #define DSC_to_msg(DSC) (DSC == 0 ? "Bit7" : (DSC == 1 ? "Bit8" : "UCS2"))
|
| 57 |
|
| 58 |
|
| 59 |
|
| 60 | int lynq_init_sms(int uToken);
|
| 61 | int lynq_deinit_sms(void);
|
| 62 | int lynq_delete_sms(int index);
|
| 63 | int lynq_wait_receive_new_sms(int *handle);
|
| 64 | int lynq_send_sms(char *telephony_num, int state, char *msg);
|
| 65 | int lynq_list_sms(int stat, int index, char *data);
|
| 66 | int lynq_query_sms_storage_status(void);
|
| 67 |
|
| 68 | void lynq_sms_state_change_cb(const void* data, int data_len);
|
| 69 |
|
| 70 | int lynq_get_smsc_address(char *serviceNumber);
|
| 71 | int lynq_set_smsc_address(const char* service_num);
|
| 72 |
|
| 73 | #endif
|