Skip to main content
https://travis-ci.org/Fatal1ty/aioapns.svg?branch=master Requirements Status https://img.shields.io/pypi/v/aioapns.svg https://img.shields.io/pypi/pyversions/aioapns.svg https://img.shields.io/badge/License-Apache%202.0-blue.svg

aioapns is a library designed specifically for sending push-notifications to iOS devices via Apple Push Notification Service. aioapns provides an efficient client through asynchronous HTTP2 protocol for use with Python’s asyncio framework.

aioapns requires Python 3.5 or later.

Performance

In my testing aioapns allows you to send on average 1.3k notifications per second on a single core.

Features

  • Internal connection pool which adapts to the current load

  • Ability to set TTL (time to live) for notifications

  • Ability to set priority for notifications

  • Ability to set collapse-key for notifications

  • Ability to use production or development APNs server

Installation

Use pip to install:

$ pip install aioapns

Basic Usage

from uuid import uuid4
from aioapns import APNs, NotificationRequest


async def run():
    apns = APNs('/path/to/apns-production-cert.pem', use_sandbox=False)
    request = NotificationRequest(
        device_token='<DEVICE_TOKEN>',
        message = {
            "aps": {
                "alert": "Hello from APNs",
                "badge": "1",
            }
        }
        notification_id=str(uuid4())  # optional
        time_to_live=3,               # optional
    )
    await apns.send_notification(request)

loop = asyncio.get_event_loop()
loop.run_until_complete(run())

License

aioapns is developed and distributed under the Apache 2.0 license.

Metadata

Release files for aioapns 1.5.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aioapns 1.5.1
File Size Uploaded
aioapns-1.5.1.tar.gz 6.1 kB Details

Release files / aioapns-1.5.1.tar.gz

Download URL aioapns-1.5.1.tar.gz
Size 6.1 kB
Tags Source
SHA-256 checksum
How to use checksums
e98d5d9a4411cb991f9ba60c6be3c62129b403344cf64271fa47c100db048641
BLAKE2b-256 checksum
How to use checksums
73f6dc9dd368b3f38b495dd80a526b3e93f00b1a588a6ca0d7a863de80e22807
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.6

Release history Release notifications | RSS feed

4.0

2 release files

3.3.1

2 release files

3.3

2 release files

3.2

2 release files

3.1

2 release files

3.0

2 release files

2.2

2 release files

2.1

2 release files

2.0.2

1 release file

2.0.1

1 release file

2.0

1 release file

1.12

1 release file

1.11

1 release file

1.10

1 release file

1.9.1

1 release file

1.9

1 release file

1.8

1 release file

1.7

1 release file

1.6.2

1 release file

1.6.1

1 release file

1.6

1 release file

1.5.2

1 release file

This release

1.5.1 This release

1 release file

1.5

1 release file

1.4

1 release file

1.3

1 release file

1.2

1 release file

1.1.1

1 release file

1.1

1 release file

1.0

1 release file

0.6

1 release file

0.5

1 release file

0.4.1

1 release file

0.4

1 release file

0.3

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page