Example #1
0
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()
Example #2
0
    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)