blob: e4ecaf93d85ff04139d21c3ac534ef3838de1e74 [file] [log] [blame]
b.liud440f9f2025-04-18 10:44:31 +08001#include <stdlib.h>
2#include <stdio.h>
3#include <string.h>
4#include <errno.h>
5#include "ql_sms.h"
6#include "mbtk_log.h"
7
8
9
10void sms_msg_recv_cb(ql_sms_msg_t *p_msg, ql_sms_timestamp_t *timestamp,
11 ql_sms_user_data_head_t *head)
12{
13 printf("sms_msg_recv_cb succeess!\n");
14 printf("format: %d, addr:%s, content_size:%d, content:%s\n", p_msg->format, p_msg->addr, p_msg->content_size, p_msg->content);
15 printf("timestamp: %d-%d-%d %d:%d:%d\n", timestamp->year, timestamp->month, timestamp->day, timestamp->hours, timestamp->minutes, timestamp->seconds);
16}
17
18void sms_servicie_error_cb(int error)
19{
20 printf("===== SMS Service Abort =====\n");
21}
22
23void sms_msg_async_cb_f(int id, int result)
24{
25 printf("===== sms_msg_recv_cb =====\n");
26}
27
28
29
30
31int main(int argc, char *argv[])
32{
l.yange4f94f42025-04-29 18:08:39 -070033 //char operator[10];
b.liud440f9f2025-04-18 10:44:31 +080034 int opt;
35 int ret;
36// int sms;
37// int direction;
38// int value;
39// int pullsel;
40
41 mbtk_log_init("radio", "SMS_TEST");
42
43 printf("=========ql sms main=========\n"
44 "\t0 exit\n"
45 "\t1 sms init\n"
46 "\t2 sms deinit\n"
47 "\t3 sms set msg recv cb\n"
48 "\t4 sms set ser error cb\n"
49 "\t5 sms send msg async\n"
l.yange4f94f42025-04-29 18:08:39 -070050 "\t6 sms set slot to send msg\n"
b.liud440f9f2025-04-18 10:44:31 +080051 "operator: >> \n");
52
53 while(1)
54 {
l.yange4f94f42025-04-29 18:08:39 -070055 scanf("%d",&opt);
b.liud440f9f2025-04-18 10:44:31 +080056 switch (opt)
57 {
58 case 0:
59 printf("main exit\n");
60 return 0;
61 case 1:
62 {
63 printf(">>>>>sms init\n");
64 ret = ql_sms_init();
65 if(ret != 0)
66 {
67 printf("ql_sms_init fail\n");
68 }
69 else
70 {
71 printf("ql_sms_init success\n");
72 }
73 }
74 break;
75 case 2:
76 {
77 printf(">>>>>sms uninit\n");
78
79 ret = ql_sms_deinit();
80 if(ret != 0)
81 {
82 printf("ql_sms_uninit fail\n");
83 printf("ret=%d\n", ret);
84 }
85 else
86 {
87 printf("ql_sms_uninit success\n");
88
89 }
90 }
91 break;
92 case 3:
93 {
94 printf(">>>>>Input set recv cb<<<<<\n");
95
96 ret = ql_sms_set_msg_recv_cb(sms_msg_recv_cb);
97 if(ret != 0)
98 {
99 printf("ql_sms_set_msg_recv_cb fail\n");
100 }
101 else
102 {
103 printf("ql_sms_set_msg_recv_cb success\n");
104 }
105
106 }
107 break;
108 case 4:
109 {
110 printf(">>>>>Input set ser cb<<<<<\n");
111
112 ret = ql_sms_set_service_error_cb(sms_servicie_error_cb);
113 if(ret < 0)
114 {
115 printf("ql_sms_set_service_error_cb fail\n");
116 }
117 else
118 {
119 printf("ql_sms_set_service_error_cb success\n");
120 }
121
122 }
123 break;
124 case 5:
125 {
126 printf(">>>>>Input send msg<<<<<\n");
127
128 ql_sms_msg_t sms_msg = {0};
129 int id = 0;
130 char addr[128] = "19130850401";
131 char content[128] = "hello";
132 sms_msg.format = 1;
133 memcpy(sms_msg.addr, addr, strlen(addr));
134 sms_msg.content_size = strlen(content);
135 memcpy(sms_msg.content, content, strlen(content));
136
137
138 ret = ql_sms_send_msg_async(&sms_msg, &id, sms_msg_async_cb_f);
139 if(ret < 0)
140 {
141 printf("ql_sms_send_msg_async fail\n");
142 }
143 else
144 {
145 printf("ql_sms_send_msg_async success\n");
146 }
147 }
148 break;
l.yange4f94f42025-04-29 18:08:39 -0700149 case 6:
150 {
151 int ret = -1;
152 int choice = -1;
153 printf("1:sim card 1, 2:sim card 2\n");
154 while (1)
155 {
156 if (scanf("%d", &choice) == 1)
157 {
158 if (choice == 1 || choice == 2)
159 {
160 break;
161 }
162 else
163 {
164 printf("invlid input \n");
165 }
166 }
167 else
168 {
169
170 int c;
171 while ((c = getchar()) != '\n' && c != EOF);
172 printf("invalid input \n");
173 }
174
175 }
176
177 if (choice == 1)
178 {
179 ret=ql_set_sms_slot(QL_SIM_SLOT_1);
180 if(ret != 0)
181 {
182 printf("ql_set_sms_slot failed %d\n",ret);
183 }
184 else
185 {
186 printf("ql_set_sms_slot success \n");
187 }
188 }
189 else if (choice == 2)
190 {
191 ret = ql_set_sms_slot(QL_SIM_SLOT_2);
192 if(ret != 0)
193 {
194 printf("ql_set_sms_slot failed %d\n",ret);
195 }
196 else
197 {
198 printf("ql_set_sms_slot success \n");
199 }
200 }
201 break;
202 }
b.liud440f9f2025-04-18 10:44:31 +0800203
204 default:
205 break;
206 }
207
208 }
209
210 return 0;
211
212}