--- smsdaemon/SmsDaemon.cpp 2008/06/16 09:04:05 88 +++ smsdaemon/SmsDaemon.cpp 2008/06/16 15:32:07 99 @@ -12,8 +12,12 @@ #include "util.h" -using namespace std; +#include "TaskManager.h" +#include "PluginManager.h" + +#include "version.h" +using namespace std; void SmsDaemon::CreateLogMessage(SMS& sms,bool hasPlugin) { @@ -28,9 +32,17 @@ void SmsDaemon::CheckSms() { + const int INTERVAL = 250; //no of milliseconds between sms checks + timeval now = Util::GetTimeOfDay(); + + if ( Util::mTimeDiff(_lastSmsCheck,now) < INTERVAL) + return; + + _lastSmsCheck = now; + Common* cmn = Common::instance(); - PluginManager& manager = cmn->pluginManager; + PluginManager* manager = cmn->GetPluginManager(); vector sms = _modem.ReadSms(); for (unsigned int i=0; iGetPlugin(cmd); CreateLogMessage(sms[i], pl != 0); @@ -71,7 +83,7 @@ CheckSms(); - cmn->taskManager.ExecuteTasks(); + cmn->GetTaskManager()->ExecuteTasks(_modem); if (cmn->isDebug && kbhit()) break; @@ -87,11 +99,14 @@ cmn->daemonStart = time(0); + _lastSmsCheck = Util::GetTimeOfDay(); cmn->logMessage("--------------------------------"); + cmn->logMessage( VERSION ); + cmn->logMessage( "Svn: " SVNVER ); - cmn->taskManager.LoadTasks(); - cmn->pluginManager.LoadPlugins(); + cmn->GetTaskManager()->LoadTasks(); + cmn->GetPluginManager()->LoadPlugins(); cmn->logMessage("SMS daemon started"); _modem.DeleteAllSms();