--- smsdaemon/plugins/UrlTriggerPlugin.cpp 2008/12/19 07:33:01 204 +++ smsdaemon/plugins/UrlTriggerPlugin.cpp 2008/12/19 22:29:25 205 @@ -8,19 +8,28 @@ #include "Exceptions.h" #include "HttpClient.h" #include +#include using namespace std; -UrlTriggerPlugin::UrlTriggerPlugin(string cmd, string url) - : Plugin(cmd, string("URL Trigger:")+url ), - command(cmd), URL(url) +UrlTriggerPlugin::UrlTriggerPlugin(map args) + : Plugin("", "" ) { + + _command = args["trigger"]; + _URL = args["url"];; + _description = string("UrlTrigger(") + _command + ") > " + _URL; + + + if (_command == "" || _URL == "") + throw std::runtime_error("UrlTriggerPlugin usage: plugin = urltrigger trigger= url="); + } void UrlTriggerPlugin::Execute(ISmsTransceiver& modem, SMS& sms) { ostringstream request; - request << URL << "?"; + request << _URL << "?"; request << "sender=" << sms.GetSender() << "&"; request << "data=" << HttpClient::UrlEncode(sms.ExtractParameters()); @@ -35,7 +44,7 @@ catch (httpexception& e) { reply = "Error: Could not execute command"; - Logger::logMessage(string("UrlTrigger failed: ") + command + ">" + e.what() ); + Logger::logMessage(string("UrlTrigger failed: ") + _command + ">" + e.what() ); } modem.SendSms(sms.GetSender(), reply, true);