#!/usr/bin/env python from apns import APNs, Payload import optparse parser = optparse.OptionParser() parser.add_option("-c", "--certificate-file", dest="certificate_file", help="Path to .pem certificate file") parser.add_option("-k", "--key-file", dest="key_file", help="Path to .pem key file") parser.add_option("-p", "--push-token", dest="push_token", help="Push token") parser.add_option("-m", "--message", dest="message", help="Message") parser.add_option("-s", "--sandbox", action="store_true", dest="sandbox", default=False, help="Use apple sandbox (dev push certificates)") options, args = parser.parse_args() if options.certificate_file is None: parser.error('Must provide --certificate-file') if options.push_token is None: parser.error('Must provide --push-token') if options.message is None: parser.error('Must provide --message') apns = APNs(use_sandbox=options.sandbox, cert_file=options.certificate_file, key_file=options.key_file) # Send a notification payload = Payload(alert=options.message, sound="default", badge=1) apns.gateway_server.send_notification(options.push_token, payload) print("Sent push message to APNS gateway.")