/[projects]/smsdaemon/tester.cpp
ViewVC logotype

Contents of /smsdaemon/tester.cpp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 69 - (show annotations) (download)
Fri Jun 13 06:38:43 2008 UTC (15 years, 11 months ago) by torben
File size: 3289 byte(s)
Basic Sms PDU parsing works

1 /* using http://sourceforge.net/projects/libserial/
2 *
3 */
4
5
6 #include <string>
7 #include <iostream>
8 #include <vector>
9 #include "SerialPort.h"
10
11 #include "GsmModem.h"
12 #include "Sms.h"
13 #include "TogPlugin.h"
14 #include "TrainInfo.h"
15 #include "util.h"
16
17 #include "SmsPdu.h"
18
19 using namespace std;
20
21
22 void test_sms(GsmModem& modem, int len)
23 {
24 cout << "----- test_sms( " << len << " ) ------- " << endl;
25
26 string msg = Util::str_formatint(len);
27 msg.append(1, ' ');
28 msg.append(len - msg.length(), 'a');
29
30 vector<PduInfo> pdu = SmsPdu::CreateSmsPdu("4522337617", msg, true);
31
32 for (unsigned int i=0; i<pdu.size(); ++i)
33 {
34 cout << "#" << i << endl;
35 cout << "Len: " << pdu[i].len << endl;
36 cout << "Pdu: " << pdu[i].pdu << endl;
37
38 modem.SendSmsPdu(pdu[i].pdu, pdu[i].len);
39 }
40 }
41
42
43 int main()
44 {
45 string pdu = "06915404950000040A91542233677100008060211202528009AB61F3C8D481622C";
46
47 SMS sms = SmsPdu::ParseSmsPdu(pdu);
48
49 cout << "Sender " << sms.sender << endl;
50 cout << "Time " << sms.timestamp << endl;
51 cout << "Msg. " << sms.message << endl;
52
53 return 0;
54
55
56 SerialPort port("/dev/ttyS1" );
57 port.Open( SerialPort::BAUD_9600,
58 SerialPort::CHAR_SIZE_8,
59 SerialPort::PARITY_NONE,
60 SerialPort::STOP_BITS_1,
61 SerialPort::FLOW_CONTROL_HARD );
62
63 GsmModem modem(port);
64 modem.Init();
65
66 test_sms(modem, 161);
67 /*
68 vector<PduInfo> pdu = SmsPdu::CreateSmsPdu("4522337617", "Hej med dig, igen", true);
69 cout << "Len: " << pdu[0].len << endl;
70 cout << "Pdu: " << pdu[0].pdu << endl;
71
72 modem.SendSmsPdu(pdu[0].pdu, pdu[0].len);
73 */
74
75
76
77 /*
78 SMS sms;
79 sms.sender = "12345678";
80 sms.message = "Tog list";
81 DebugGsmModem modem;
82 TogPlugin plugin;
83
84 plugin.Execute(modem, sms);
85
86
87 string msg = Util::str_gsm2latin(modem.GetMessage());
88
89 cout << "---- " << msg.length() << " ----" << endl;
90 cout << msg << endl;
91 */
92 /*
93 vector<TrainInfo> trains = GetTrainInfo("BJ","Bjerringbro");
94
95 for (unsigned i=0; i<trains.size(); ++i)
96 {
97 TrainInfo& train = trains[i];
98 cout << "-------------------------------------" << endl;
99 cout << "Time: {" << train.time << "}" << endl;
100 cout << "Update: {" << train.update << "}" << endl;
101 cout << "Type: {" << train.type << "}" << endl;
102 cout << "Destination:{" << train.destination << "}" << endl;
103 cout << "Origin: {" << train.origin << "}" << endl;
104 cout << "Current: {" << train.current << "}" << endl;
105 cout << "Status: {" << train.status << "}" << endl;
106 cout << "Note: {" << train.note << "}" << endl;
107 }
108 */
109 /*
110 SMS sms;
111
112 sms.message = "Test test2 teste3 test4";
113
114 cout << "|" << GetSmsCommand(sms) << "|" << GetSmsData(sms) << "|" << endl;
115
116 return 0;
117
118
119 SerialPort port("/dev/ttyS1" );
120 port.Open();
121 GsmModem modem(port);
122
123 //modem.SendSms("22337617", "Hello, sir!");
124 //
125 vector<SMS> res = modem.ReadSms();
126
127
128 for (unsigned i=0; i<res.size(); ++i)
129 {
130 cout << "--- SMS Recieved ---" << endl;
131 cout << "Index: " << res[i].sms_index << endl;
132 cout << "From: " << res[i].sender << endl;
133 cout << "Time: " << res[i].timestamp << endl;
134 cout << "Message:>" << res[i].message << "<" << endl;
135 cout << endl;
136 modem.DeleteSms(res[i].sms_index);
137 }
138
139 for (int j=0; j<5; j++)
140 {
141 modem.SendSms("22337617","Test");
142 }
143 */
144 return 0;
145 }

  ViewVC Help
Powered by ViewVC 1.1.20