/[projects]/smsdaemon/ModemTransceiver.h
ViewVC logotype

Diff of /smsdaemon/ModemTransceiver.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 63 by torben, Thu Jun 12 12:43:29 2008 UTC revision 144 by torben, Sun Dec 7 16:27:34 2008 UTC
# Line 4  Line 4 
4  /* using http://sourceforge.net/projects/libserial/  /* using http://sourceforge.net/projects/libserial/
5   */   */
6    
7    #include "IGsmModem.h"
8    
9  #include <string>  #include <string>
10  #include <vector>  #include <vector>
# Line 12  Line 13 
13    
14  class SerialPort;  class SerialPort;
15    
 class IGsmModem  
 {  
 public:  
         virtual void SendSms(std::string to, std::string message, bool allowMultipart) = 0;  
         virtual ~IGsmModem() {}  
 };  
16    
17  class GsmModem : public IGsmModem  class GsmModem : public IGsmModem
18  {  {
# Line 30  public: Line 25  public:
25          virtual void SendSms(std::string to, std::string message, bool allowMultipart);          virtual void SendSms(std::string to, std::string message, bool allowMultipart);
26          void SendSmsPdu(std::string pdu, int len);          void SendSmsPdu(std::string pdu, int len);
27    
28          std::vector<SMS> ReadSms(bool readAll=false);          virtual std::vector<SMS> ReadSms(bool readAll=false);
29          void DeleteSms(std::string smsIndex);  
30          int DeleteAllSms();          virtual void DeleteSms(std::string smsIndex);
31            virtual int DeleteAllSms();
32  private:  private:
33          std::string GetResponse();          std::string GetResponse();
34          std::string Command(std::string command, std::string term = "OK\r\n");          std::string Command(std::string command, std::string term = "OK\r\n");
35    
36            void HandlePincode();
37            void WaitForSimcard();
38    
39          bool _timeout;          bool _timeout;
40          SerialPort& m_port;          SerialPort& m_port;
41  };  };
# Line 44  private: Line 43  private:
43  class DebugGsmModem : public IGsmModem  class DebugGsmModem : public IGsmModem
44  {  {
45  public:  public:
46          virtual void SendSms(std::string to, std::string message, bool allowMultipart)          DebugGsmModem() : _print(false) {}
47                  {_to=to; _message = message; _multipart = allowMultipart;}          DebugGsmModem(bool print) : _print(print) {}
48    
49    
50            virtual std::vector<SMS> ReadSms(bool readAll=false);
51            virtual void SendSms(std::string to, std::string message, bool allowMultipart);
52    
53        virtual void DeleteSms(std::string smsIndex) {}
54        virtual int DeleteAllSms() { return 0;}
55    
56    
57    
58          std::string GetTo() {return _to;}          std::string GetTo() {return _to;}
59          std::string GetMessage() {return _message;}          std::string GetMessage() {return _message;}
# Line 54  private: Line 62  private:
62          std::string _to;          std::string _to;
63          std::string _message;          std::string _message;
64          bool _multipart;          bool _multipart;
65            bool _print;
66  };  };
67    
68  #endif // __GSMMODEM_H__  #endif // __GSMMODEM_H__

Legend:
Removed from v.63  
changed lines
  Added in v.144

  ViewVC Help
Powered by ViewVC 1.1.20