--- smsdaemon/GsmModem.h 2008/06/11 16:08:37 57 +++ smsdaemon/GsmModem.h 2008/06/17 17:47:37 105 @@ -4,6 +4,7 @@ /* using http://sourceforge.net/projects/libserial/ */ +#include "IGsmModem.h" #include #include @@ -12,12 +13,6 @@ class SerialPort; -class IGsmModem -{ -public: - virtual void SendSms(std::string to, std::string message) = 0; - virtual ~IGsmModem() {} -}; class GsmModem : public IGsmModem { @@ -27,7 +22,9 @@ void Init(); - virtual void SendSms(std::string to, std::string message); + virtual void SendSms(std::string to, std::string message, bool allowMultipart); + void SendSmsPdu(std::string pdu, int len); + std::vector ReadSms(bool readAll=false); void DeleteSms(std::string smsIndex); int DeleteAllSms(); @@ -35,6 +32,9 @@ std::string GetResponse(); std::string Command(std::string command, std::string term = "OK\r\n"); + void HandlePincode(); + void WaitForSimcard(); + bool _timeout; SerialPort& m_port; }; @@ -42,14 +42,20 @@ class DebugGsmModem : public IGsmModem { public: - virtual void SendSms(std::string to, std::string message) - {_to=to; _message = message;} + DebugGsmModem() : _print(false) {} + DebugGsmModem(bool print) : _print(print) {} + + + virtual void SendSms(std::string to, std::string message, bool allowMultipart); std::string GetTo() {return _to;} std::string GetMessage() {return _message;} + bool GetMultipart() {return _multipart;} private: std::string _to; std::string _message; + bool _multipart; + bool _print; }; #endif // __GSMMODEM_H__