Aller au contenu

Débordement de Données

Par défaut, Apprise transmet intégralement le message (et le titre) que vous lui fournissez à la ou aux sources de notification. Certaines sources peuvent absorber un large surplus de données, tandis que d’autres non. Ces limitations sont documentées (dans la mesure de mes connaissances) sur les pages wiki correspondant à chaque service individuel.

Cependant, si vous ne voulez pas vous préoccuper des restrictions amont, Apprise offre une manière assez élégante de gérer ce genre de situation. Il vous suffit d’ajouter le paramètre overflow quelque part dans votre URL Apprise ; par exemple :

  • schema://path/?overflow=split
  • schema://path/?overflow=truncate
  • schema://path/?overflow=upstream
  • schema://path/?other=options&more=settings&overflow=split

Les options possibles pour overflow= sont les suivantes :

VariableDescription
splitDécoupe le corps du message en autant de petits morceaux que nécessaire pour garantir la livraison complète de ce que vous voulez notifier. La taille de ces morceaux est basée sur les restrictions imposées par le service de notification lui-même.

Par exemple, Twitter limite les tweets publics à 280 caractères. Si votre URL Apprise/Twitter devient twitter://<auth data>/?overflow=split, un message de 1000 caractères sera découpé (et envoyé) en 4 messages plus petits (280 + 280 + 280 + 160).
truncateGarantit simplement que, quelle que soit la quantité de contenu envoyée à un service de notification distant, le contenu ne dépassera jamais les restrictions imposées par ce service.

Reprenons l’exemple de Twitter (limité à 280 caractères). Si votre URL Apprise/Twitter devient twitter://<auth data>/?overflow=truncate, un message de 1000 caractères n’enverra que les 280 premiers caractères. Le reste sera tronqué et ignoré.
upstreamLaisse simplement le service de notification amont gérer l’intégralité des données qui lui sont transmises, qu’elles soient petites ou volumineuses. Apprise ne modifiera pas le contenu.
Remarque : c’est l’option par défaut lorsque la directive overflow= n’est pas définie.
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