Aller au contenu

Démarrage Rapide

import apprise
apobj = apprise.Apprise()

La méthode add() enregistre des services de notification dans votre instance.

# Ajouter un seul service
apobj.add('json://localhost')
# Ajouter plusieurs services d'un coup
apobj.add([
'mailto://user:pass@example.com',
'slack://tokenA/tokenB/tokenC'
])

La méthode notify() envoie des messages à tous les services enregistrés.

apobj.notify(
title="Alerte serveur",
body="L'utilisation CPU est à 99%",
)

Vous pouvez catégoriser vos notifications avec NotifyType. Cela modifie souvent l’icône ou la couleur de la notification selon le service destinataire.

from apprise import NotifyType
apobj.notify(
title="Succès",
body="La sauvegarde s'est terminée avec succès.",
notify_type=NotifyType.SUCCESS
)
IcôneTypeDescription
infoNotifyType.INFOValeur par défaut. Information générale.
successNotifyType.SUCCESSOpérations réussies.
warningNotifyType.WARNINGProblèmes non fatals.
failureNotifyType.FAILUREErreurs critiques.

Les tags permettent d’envoyer des notifications à des sous-groupes précis de services.

1. Assigner des tags

# Assigner des tags lors de l'ajout des services
apobj.add('slack://...', tag='devops')
apobj.add('mailto://...', tag='management')
apobj.add('discord://...', tag=['devops', 'management']) # Plusieurs tags

2. Filtrer par tags

# Notifier UNIQUEMENT les services tagués 'devops'
apobj.notify(title="Déploiement", body="...", tag="devops")
# Notifier les services tagués 'devops' OU 'management'
apobj.notify(title="Mise à jour", body="...", tag=["devops", "management"])

Les expressions de tags utilisées en programmation suivent ces règles :

Expression notify(tag=...)Services sélectionnés
"TagA"Possède TagA
"TagA,TagB"Possède TagA ET TagB
["TagA", "TagB"]Possède TagA OU TagB
["TagA,TagC", "TagB"]Possède (TagA ET TagC) OU TagB
# Notifier les services tagués 'product' ET 'create'
apobj.notify(title="Créé", body="...", tag="product,create")
# Notifier les services tagués 'devops' OU 'finance'
apobj.notify(title="Rapport", body="...", tag=["devops", "finance"])
# Notifier les services correspondant à ('comment' ET 'create') OU 'admin'
apobj.notify(title="Commentaire créé", body="...", tag=["comment,create", "admin"])

Vous pouvez utiliser l’objet AppriseConfig pour charger des URL depuis des fichiers YAML ou texte externes au lieu de les coder en dur.

import apprise
# 1. Créer l'objet de configuration
config = apprise.AppriseConfig()
# 2. Ajouter des sources de configuration
config.add('/path/to/my/config.yml')
config.add('https://myserver.com/my/apprise/config')
# 3. Créer l'instance Apprise et absorber la configuration
apobj = apprise.Apprise()
apobj.add(config)
# 4. Notifier comme d'habitude (les URL du fichier sont maintenant chargées)
apobj.notify("Chargé depuis la configuration !")
Questions ou commentaires ?

Documentation

Vous avez repéré une faute de frappe ou une erreur ? Signalez-la ou proposez une correction .

Problèmes Techniques

Vous rencontrez un problème avec le code ? Ouvrez un ticket sur GitHub :

Conçu avec amour depuis le Canada