def thread_sender(self, mobile_numbers_to_send, json_data, priority, sourceip, xforwardedfor): if isinstance(sourceip, tuple): sourceip = str(sourceip[0]) if isinstance(xforwardedfor, tuple): xforwardedfor = str(xforwardedfor[0]) for targetnr in mobile_numbers_to_send: # this is used for parameter extraction # Create sms data object and make sure that it has a smsid sms_uuid = str(uuid.uuid1()) sms = Smstransfer(content=json_data.get('content'), targetnr=targetnr, priority=priority, appid=json_data.get('appid'), sourceip=sourceip, xforwardedfor=xforwardedfor, smsid=sms_uuid) smsgwglobals.wislogger.debug("WIS: sendsms interface " + str(sms.getjson())) # process sms to insert it into database try: Helper.processsms(sms) smsid = sms.smstransfer["sms"]["smsid"] SMS_QUEUE.put(smsid) except apperror.NoRoutesFoundError: self.triggerwatchdog() pass except apperror.NotAllowedTimeFrame: self.triggerwatchdog() pass
def sendsms(self, **params): # this is used for parameter extraction # Create sms data object sms = Smstransfer(content=cherrypy.request.params.get('content'), targetnr=cherrypy.request.params.get('mobile'), priority=int(cherrypy.request.params.get('priority')), appid=cherrypy.request.params.get('appid'), sourceip=cherrypy.request.headers.get('Remote-Addr'), xforwardedfor=cherrypy.request.headers.get( 'X-Forwarded-For')) # check if parameters are given resp = XMLResponse() if not sms.smsdict["content"]: self.triggerwatchdog() return resp.errorxml("0001") if not sms.smsdict["targetnr"]: self.triggerwatchdog() return resp.errorxml("0001") if not sms.smsdict["priority"]: self.triggerwatchdog() return resp.errorxml("0001") smsgwglobals.wislogger.debug(sms.getjson()) # process sms to insert it into database try: Helper.processsms(sms) except apperror.NoRoutesFoundError: self.triggerwatchdog() return resp.errorxml("0001") self.triggerwatchdog() return resp.successxml("0001")
def sendsms(self, **params): # all parameters to lower case cherrypy.request.params = dict([(x[0].lower(), x[1]) for x in cherrypy.request.params.items()]) priority = 1 if 'priority' in cherrypy.request.params: priority = int(cherrypy.request.params.get('priority')) # this is used for parameter extraction # Create sms data object and make sure that it has a smsid sms = Smstransfer(content=cherrypy.request.params.get('content'), targetnr=cherrypy.request.params.get('mobile'), priority=priority, appid=cherrypy.request.params.get('appid'), sourceip=cherrypy.request.headers.get('Remote-Addr'), xforwardedfor=cherrypy.request.headers.get( 'X-Forwarded-For'), smsid=str(uuid.uuid1())) # check if parameters are given resp = XMLResponse() if not sms.smsdict["content"]: self.triggerwatchdog() return resp.errorxml("0001") if not sms.smsdict["targetnr"]: self.triggerwatchdog() return resp.errorxml("0001") if not sms.smsdict["priority"]: self.triggerwatchdog() return resp.errorxml("0001") smsgwglobals.wislogger.debug("WIS: sendsms iterface " + str(sms.getjson())) # process sms to insert it into database try: Helper.processsms(sms) except apperror.NoRoutesFoundError: self.triggerwatchdog() return resp.errorxml("0001") self.triggerwatchdog() return resp.successxml("0001")