1 |
torben |
521 |
#include "SpamTask.h" |
2 |
torben |
520 |
|
3 |
|
|
#include "ISmsTransceiver.h" |
4 |
|
|
|
5 |
|
|
#include "Logger.h" |
6 |
|
|
|
7 |
torben |
521 |
SpamTask::SpamTask() |
8 |
torben |
520 |
: Task("delayspam", true) // temporary task==true, this is a fire and forget style task |
9 |
|
|
{ |
10 |
|
|
_counter = 0; |
11 |
|
|
_lastsent = 0; |
12 |
|
|
} |
13 |
|
|
|
14 |
torben |
521 |
void SpamTask::ExecuteTask(ISmsTransceiver& modem) |
15 |
torben |
520 |
{ |
16 |
|
|
int now = time(0); |
17 |
|
|
if (now >= (_lastsent + _interval)) |
18 |
|
|
{ |
19 |
|
|
|
20 |
|
|
modem.SendSms(_destination, _message, true); |
21 |
|
|
|
22 |
|
|
_counter ++; |
23 |
|
|
_lastsent = now; |
24 |
|
|
} |
25 |
|
|
|
26 |
|
|
|
27 |
|
|
if (_counter >= _number) //if all messages are sent |
28 |
|
|
{ |
29 |
|
|
_isFinished = true; |
30 |
|
|
Logger::logMessage("delay task is finished"); |
31 |
|
|
} |
32 |
|
|
} |