class PusherService(Service): def __init__(self, interface, apns_host, apns_cert, apns_key, verbose): self.interface = interface self.verbose = bool(verbose) # APNS connection wrapper host, port = apns_host.split(':') self.apns = APNSConnection(host, int(port), apns_cert, apns_key) def startService(self): Service.startService(self) self.init_api() def init_api(self): log.msg('Starting HTTP on %s...' % self.interface) root = resource.Resource() root.putChild("send", APISendResource(self)) site = server.Site(root, logPath='/dev/null') host, port = self.interface.split(':') reactor.listenTCP(int(port), site, interface=host) def log_verbose(self, message): if self.verbose: log.msg("VERBOSE: %s" % message) def send_push(self, device_token, payload): log.msg('Sending push to %s' % device_token) self.log_verbose('Payload = %r' % payload) self.apns.send_push(device_token, payload) def stopService(self): Service.stopService(self) self.apns.disconnect()
def __init__(self, interface, apns_host, apns_cert, apns_key, verbose): self.interface = interface self.verbose = bool(verbose) # APNS connection wrapper host, port = apns_host.split(':') self.apns = APNSConnection(host, int(port), apns_cert, apns_key)