Aller au contenu

Notifications LaMetric Time/Clock

Aperçu

Vous disposez de deux methodes pour notifier votre appareil LaMetric :

  1. Mode Appareil : interroger directement votre appareil LaMetric sur votre reseau local pour lui envoyer une notification.
  2. Mode nuagique : envoyer un message a votre horloge via une requete securisee vers l’API nuagique de LaMetric. Cette methode offre moins d’options.

Avec le Mode Appareil, votre requete Apprise communique directement avec l’appareil LaMetric Time present sur votre reseau local.

  1. Creez un compte puis connectez-vous sur la Page Developpeur.
  2. Reperez la Cle API de votre appareil ; vous pouvez la trouver ici.
  3. Vous devez ensuite connaitre l’adresse IP de votre appareil. Cette Adresse IP est visible dans l’application LaMetric Time sous : Settings -> Wi-Fi -> IP Address

Remarque : il semble qu’a un certain moment, LaMetric ait abandonne la prise en charge de son mode nuagique. Bien qu’il soit documente dans leurs forums avec des captures d’ecran et des exemples d’utilisation, tout cela ne semble plus vraiment accessible a l’utilisateur final aujourd’hui. Ceux qui ont encore acces a leurs serveurs amont peuvent continuer a l’exploiter. Sinon, les utilisateurs de ce plugin Apprise devront se concentrer sur le mode appareil standard, explique ci-dessus.

En mode nuagique, vous communiquez avec votre appareil LaMetric Time via internet.

  1. Creez un compte puis connectez-vous sur la Page Developpeur.

  2. Creez une Indicator App si ce n’est pas deja fait, depuis ici.

    • Un excellent tutoriel officiel explique la marche a suivre ici
  3. Assurez-vous de definir le Communication Type sur PUSH

  4. Une fois la configuration terminee, vous pourrez Publish votre application. Cela la rendra accessible depuis internet en utilisant le mode nuagique (cloud) de ce plugin Apprise. Le bouton Publish apparait dans les parametres de votre application LaMetric lorsque vous cliquez sur le dossier Draft Vx, ou x correspond a la version, generalement 1.

  5. Une fois les etapes ci-dessus terminees, le site vous fournit une PUSH URL ressemblant a ceci :

    • https://developer.lametric.com/api/v1/dev/widget/update/com.lametric.{app_id}/{app_ver}

    Vous devrez conserver {app_id} et {app_ver} pour utiliser le mode nuagique (cloud).

    La meme page devrait egalement vous fournir un Jeton d’Acces applicatif. Il comporte environ 86 caracteres et se termine par deux signes egal, =. Il devient alors votre {app_access_token}. Voici un exemple du format attendu :

    • K2MxWI0NzU0ZmI2NjJlZYTgViMDgDRiN8YjlmZjRmNTc4NDVhJzk0RiNjNh0EyKWW==

La syntaxe valide pour le Mode Appareil est la suivante :

  • lametric://{apikey}@{hostname}
  • lametric://{apikey}@{hostname}:{port}
  • lametric://{userid}:{apikey}@{hostname}
  • lametric://{userid}:{apikey}@{hostname}:{port}

La syntaxe valide pour le Mode Nuagique est la suivante :

  • lametric://{app_access_token}@{app_id}
  • lametric://{app_access_token}@{app_id}/{app_version}

La decomposition des parametres depend du fait que vous utilisiez le mode nuagique ou le mode appareil.

VariableObligatoireDescription
apikeyOuiLa Cle API de votre appareil, disponible sur le site de LaMetric ici.
hostnameNonAdresse IP ou nom d’hote de votre appareil LaMetric sur votre reseau local.
portNonPort sur lequel votre appareil LaMetric ecoute. La valeur par defaut est 8080.
useridNonIdentifiant de connexion du compte de votre appareil LaMetric sur le reseau local. La valeur par defaut est dev.
modeNonDefinit le mode Apprise/LaMetric a utiliser, cloud ou device. Il est utile de noter qu’Apprise est suffisamment intelligent pour detecter automatiquement le mode a partir de l’URL fournie. Si vous souhaitez toutefois le preciser explicitement, vous pouvez le faire.
cyclesNonNombre de fois que le message doit etre affiche. Si cycles est defini sur 0, la notification reste affichee jusqu’a ce que l’utilisateur la ferme manuellement. La valeur par defaut est 1.
soundNonAlarme sonore pouvant etre envoyee avec la notification. Les mots-cles suivants sont pris en charge : bicycle, car, cash, cat, dog, dog2, energy, knock-knock, letter_email, lose1, lose2, negative1, negative2, negative3, negative4, negative5, notification, notification2, notification3, notification4, open_door, positive1, positive2, positive3, positive4, positive5, positive6, statistic, thunder, water1, water2, win, win2, wind, wind_short, alarm1, alarm2, alarm3, alarm4, alarm5, alarm6, alarm7, alarm8, alarm9, alarm10, alarm11, alarm12, et alarm13.
priorityNonPriorite du message ; les valeurs possibles sont info, warning et critical. Si rien n’est precise, info est utilise par defaut.
icon_typeNonNature de la notification ; les valeurs possibles sont info, alert et none. Si rien n’est precise, none est utilise par defaut.
VariableObligatoireDescription
app_idOuiIdentifiant d’Application de votre Indicator App, disponible dans la configuration de votre application. Vous pouvez acceder a cette configuration depuis le site de LaMetric ici.
app_access_tokenOuiJeton d’Acces de votre Indicator App, disponible dans la configuration de votre application. Vous pouvez acceder a cette configuration depuis le site de LaMetric ici.
app_verNonVersion associee a votre Indicator App. Si elle n’est pas precisee, la valeur par defaut 1 est utilisee.
modeNonDefinit le mode Apprise/LaMetric a utiliser, cloud ou device. Apprise peut generalement detecter automatiquement le mode en fonction de l’URL fournie, mais vous pouvez aussi le definir explicitement si vous le souhaitez.
VariableDescription
overflowCe paramètre peut être défini sur split, truncate ou upstream. Il détermine la manière dont Apprise remet le message que vous lui transmettez. Par défaut, il vaut upstream.
👉 upstream : ne fait aucune modification et transmet le message exactement tel qu’il a été reçu au service.
👉 truncate : veille à ce que le message tienne dans la limite amont documentée par le service. Si plus d’informations sont fournies que la limite définie, l’excédent est tronqué.
👉 split : similaire à truncate, sauf que si le message dépasse la limite amont documentée par le service, il est découpé en plusieurs morceaux plus petits puis envoyés séquentiellement.
formatCe paramètre peut être défini sur text, html ou markdown. Certains services prennent en charge plusieurs formats de publication du contenu. La valeur par défaut varie selon le service choisi et peut correspondre à l’un de ces trois formats. Vous pouvez facultativement forcer cette option pour vous écarter du comportement par défaut. Si le service ne prend pas en charge plusieurs formats de transmission, ce champ est ignoré.
verifyLes requêtes externes vers des emplacements sécurisés, par exemple via https, utilisent des certificats. Par défaut, Apprise vérifie la validité de ces certificats ; si ce n’est pas le cas, aucune notification n’est envoyée à la source. Dans certains cas, un utilisateur ne dispose pas d’une autorité de certification pour valider la clé ou fait simplement confiance à la source ; dans ce cas, vous pouvez définir ce drapeau sur no. Par défaut, il vaut yes.
ctoSignifie Socket Connect Timeout. Il s’agit du nombre de secondes pendant lesquelles Requests attend que votre client établisse une connexion avec une machine distante, ce qui correspond à l’appel connect() sur la socket. La valeur par défaut est de 4.0 secondes.
rtoSignifie Socket Read Timeout. Il s’agit du nombre de secondes pendant lesquelles le client attend que le serveur envoie une réponse. La valeur par défaut est de 4.0 secondes.
emojisActive la prise en charge des emojis, par exemple :+1: qui sera traduit en 👍. Par défaut, cette option vaut no.
Remarque : selon la configuration côté serveur, l’administrateur peut désactiver globalement la prise en charge des emojis ; mais par défaut, ce n’est pas le cas.
tzIdentifie le fuseau horaire de la base IANA que vous souhaitez utiliser. Par défaut, celui-ci est détecté à partir de la configuration du serveur qui exécute Apprise. Vous pouvez le définir sur des valeurs comme America/Toronto, ou sur tout autre fuseau correctement formaté correspondant à votre région.

Envoyer une notification LaMetric Time en Mode Appareil, sur notre reseau local :

Fenêtre de terminal
# Supposons que notre {apikey} soit abc123
# Supposons que notre {hostname} soit 192.168.1.3
apprise -vv -b "Corps du Message de Test" lametric://abc123@192.168.1.3

Envoyer une notification LaMetric Time en mode nuagique, via l’API developpeur LaMetric :

Fenêtre de terminal
# Supposons que notre {app_id} soit ABCD1234
# Supposons que notre {app_access_token} soit abcdefg==
apprise -vv -b "Corps du Message de Test" lametric://abcdefg==@ABCD1234
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