aiontfy
Asynchronous client library for the ntfy pub-sub notification service
📖 Documentation
-
Full Documentation: https://tr4nt0r.github.io/aiontfy
-
Source Code: https://github.com/tr4nt0r/aiontfy
📦 Installation
You can install aiontfy via pip:
pip install aiontfy
🚀 Usage
Basic Examples
"""Publish to a ntfy topic."""
import asyncio
from aiohttp import ClientSession
from aiontfy import Message, Ntfy
async def main() -> None:
async with ClientSession() as session:
ntfy = Ntfy("https://ntfy.sh", session)
message = Message(
topic="aiontfy",
title="Hello",
message="World",
click="https://example.com/",
delay="10s",
priority=3,
tags=["octopus"],
)
print(await ntfy.publish(message))
asyncio.run(main())
"""Subscribe to ntfy topics."""
import asyncio
from aiohttp import ClientSession
from aiontfy import Event, Notification, Ntfy
def callback(message: Notification) -> None:
"""Process notifications callback function."""
if message.event is Event.MESSAGE:
print(message.to_dict())
async def main() -> None:
async with ClientSession() as session:
ntfy = Ntfy("https://ntfy.sh", session)
await ntfy.subscribe(
["aiontfy", "test"], # Subscribe to multiple topics
callback,
priority=[3, 4, 5], # Only subscribe to priority >= 3
)
asyncio.run(main())
For more advanced usage, refer to the documentation.
🛠 Contributing
Contributions are welcome! To contribute:
- Fork the repository.
- Create a new branch.
- Make your changes and commit them.
- Submit a pull request.
Make sure to follow the contributing guidelines.
📜 License
This project is licensed under the MIT License - see the LICENSE file for details.
❤️ Support
If you find this project useful, consider buying me a coffee ☕ or sponsoring me on GitHub!
Metadata
Release files for aiontfy 0.8.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| aiontfy-0.8.0.tar.gz | 26.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| aiontfy-0.8.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 42.0 kB
Release files / aiontfy-0.8.0.tar.gz
| Download URL | aiontfy-0.8.0.tar.gz |
|---|---|
| Size | 26.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4c6a9edb2ffef42fe4a55c00a90bc4c40af73902d6df744a3ed60dd874586743
|
|
BLAKE2b-256 checksum How to use checksums |
e13238571454b0d30b214176b14e09ab5273e0d2a7d0e7a71a48418c0abf23ed
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
Hatch/1.16.3 cpython/3.14.2 HTTPX/0.28.1
|
Release files / aiontfy-0.8.0-py3-none-any.whl
| Download URL | aiontfy-0.8.0-py3-none-any.whl |
|---|---|
| Size | 15.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
353a6a10ef0aeda02ccf07a4aa917bdaab5a1e84691638c77713f762e628dba5
|
|
BLAKE2b-256 checksum How to use checksums |
40e309ee69654a68dbe7722cf571af10ac86667dae611313fdd7a9aec77db7c3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
Hatch/1.16.3 cpython/3.14.2 HTTPX/0.28.1
|