Skip to content

Configuration Options

Deadbone edited this page Jul 14, 2026 · 3 revisions

Homebridge UI configuration options

English

This page describes every option visible in the Homebridge UI configuration form for homebridge-lametric-time-messenger.

The plugin targets LaMetric TIME V2 / 2022+ devices only. First-generation LaMetric TIME devices are not supported.

General settings

Platform Name

Name of the platform instance shown by Homebridge.

  • JSON field: name
  • Default: LaMetric Time
  • Recommendation: keep a simple name, for example LaMetric Time.

Debug Logging

Enables debug logs for the plugin.

  • JSON field: debug
  • Default: false
  • Usage: enable temporarily while diagnosing a problem, then disable it to avoid verbose logs.

Queue Strategy

Defines how the notification queue is processed.

  • JSON field: queueStrategy
  • Default: sequential
  • Available value: sequential

sequential means notifications are sent one after another for each LaMetric device. This avoids flooding the local API.

Maximum Queue Size

Maximum number of pending notifications in a queue.

  • JSON field: maxQueueSize
  • Default: 50
  • Minimum: 1
  • Maximum: 500

If the queue is full, new notifications may be rejected depending on the duplicate strategy.

Duplicate Notification Behavior

Defines what happens when a notification with the same identifier is already queued.

  • JSON field: duplicateStrategy
  • Default: drop

Available values:

  • enqueue: still add the duplicate notification.
  • drop: ignore the new notification if an identical one is already pending.
  • replace: replace the pending notification with the new one.

For frequent HomeKit automations, drop is usually the safest option.

Global Delay Between Calls

Minimum delay between two API calls to the same LaMetric.

  • JSON field: globalDelayMs
  • Default: 250
  • Unit: milliseconds
  • Minimum: 0
  • Maximum: 60000

Increase this value if the LaMetric returns rate-limit errors or if several automations trigger many messages.

Expose Global Test Switch

Exposes a global HomeKit test switch.

  • JSON field: testSwitch
  • Default: false

When this switch is turned on, the plugin sends a test notification to the first configured LaMetric. The test uses critical priority so it can work even when the LaMetric is in a restrictive mode.

LaMetric TIME V2 devices

This section lets you add one or more LaMetric TIME V2 devices. Each device has its own identifier, network address, and local API key.

Internal ID

Internal identifier of the device.

  • JSON field: devices[].id
  • Required: yes
  • Format: letters, digits, _, and -
  • Example: salon

This identifier is used by messages through deviceIds. Do not change it after HomeKit accessories have been created unless you are ready to recreate the associations.

Name

Human-readable device name.

  • JSON field: devices[].name
  • Required: yes
  • Example: LaMetric Salon

This name is used in logs.

Host

Network address of the LaMetric.

  • JSON field: devices[].host
  • Required: yes
  • Recommended example: 192.168.1.50

Enter only an IP address or DNS name. Do not enter a full URL, so no http:// or https://.

When Homebridge runs in Docker, prefer a fixed IP address over a .local name, because mDNS may not work from the container.

Protocol

Protocol used to reach the local API.

  • JSON field: devices[].protocol
  • Default: http

Available values:

  • http: local HTTP API, usually port 8080.
  • https: local HTTPS API, usually port 4343.

The plugin does not globally disable TLS validation. If HTTPS fails because of a local self-signed certificate, use HTTP on a trusted local network.

Port

Network port of the local API.

  • JSON field: devices[].port
  • Default: 8080
  • Minimum: 1
  • Maximum: 65535

Common values:

  • 8080 with http
  • 4343 with https

Local API Key

Local API key of the LaMetric TIME V2.

  • JSON field: devices[].apiKey
  • Required: yes
  • Homebridge UI type: password field

The plugin uses it with the dev user through HTTP Basic auth. The key is not written to plugin logs.

HTTP Timeout

Maximum time to wait for a response from the LaMetric.

  • JSON field: devices[].timeoutMs
  • Default: 5000
  • Unit: milliseconds
  • Minimum: 250
  • Maximum: 60000

Increase this value if the local network is slow or if the LaMetric sometimes responds late.

Retry Count

Number of retry attempts after a temporary failure.

  • JSON field: devices[].retryCount
  • Default: 2
  • Minimum: 0
  • Maximum: 5

Temporary failures can include network errors or some server errors. Authentication errors are not retried.

Retry Backoff

Base delay between retry attempts.

  • JSON field: devices[].retryBackoffMs
  • Default: 500
  • Unit: milliseconds
  • Minimum: 0
  • Maximum: 30000

The delay increases with the attempt number. For example, with 500, the first wait is short, then later retries wait longer.

Messages

A message is a configurable notification and, optionally, a virtual HomeKit switch.

Internal ID

Internal identifier of the message.

  • JSON field: messages[].id
  • Required: yes
  • Format: letters, digits, _, and -
  • Example: front-door-open

This identifier is used to generate the HomeKit accessory UUID. Do not change it after creation unless you are ready to recreate the accessory.

Name

Message name.

  • JSON field: messages[].name
  • Required: yes
  • Example: Door open

This name is used for the HomeKit switch and in logs.

Target Device IDs

List of LaMetric devices targeted by this message.

  • JSON field: messages[].deviceIds
  • Required: yes
  • Minimum: one device
  • Example: salon

Each value must match an Internal ID defined in the devices section.

Expose HomeKit Switch

Creates a HomeKit switch to trigger the message.

  • JSON field: messages[].exposeSwitch
  • Default: true

When enabled, the message appears in Apple Home as a switch. An automation can turn it on to send the notification.

Auto Reset Delay

Delay before the switch is automatically turned back off.

  • JSON field: messages[].autoResetMs
  • Default: 1000
  • Unit: milliseconds
  • Minimum: 100
  • Maximum: 60000

This prevents a switch from staying on after a notification is sent.

Cooldown

Minimum delay between two successful sends of the same message.

  • JSON field: messages[].cooldownMs
  • Default: 5000
  • Unit: milliseconds
  • Minimum: 0
  • Maximum: 86400000

Cooldown is applied only after a successful send. It helps prevent repeated notifications caused by frequent automations.

Priority

LaMetric notification priority.

  • JSON field: messages[].priority
  • Default: info

Available values:

  • info: normal priority.
  • warning: higher priority.
  • critical: maximum priority, can wake the device from a restrictive mode.

If the LaMetric replies Only notifications with priority 'critical' are allowed in current mode, set this field to Critical.

Notification Icon Type

LaMetric notification icon type.

  • JSON field: messages[].iconType
  • Default: none

Available values:

  • none: no global icon type.
  • info: informational notification.
  • alert: alert notification.

This setting is separate from the icon configured on each frame.

Display Cycles

Number of display cycles for the notification.

  • JSON field: messages[].cycles
  • Default: 1
  • Minimum: 1
  • Maximum: 100

Increase this value to display the message for longer.

Default Template Value

Default value available to templates.

  • JSON field: messages[].value
  • Default: empty string

This value can be inserted in text with {{value}}.

Frames

A frame is one display step in the LaMetric notification. A message must contain at least one frame.

Text

Text displayed on the LaMetric.

  • JSON field: messages[].frames[].text
  • Required: yes

Available variables:

  • {{date}}
  • {{time}}
  • {{name}}
  • {{value}}

Templates do not execute JavaScript.

Icon ID

LaMetric icon displayed with the frame.

  • JSON field: messages[].frames[].icon
  • Required: no

Common formats:

  • i1234 for a static icon.
  • a1234 for an animated icon.

Order

Display order of the frame.

  • JSON field: messages[].frames[].order
  • Default: 0
  • Minimum: 0
  • Maximum: 999

Frames are sorted by this value before sending.

Sound

Sound options are shown when sound is enabled.

Enable Sound

Adds a sound to the notification.

  • JSON field: messages[].sound.enabled
  • Default: false

If disabled, the plugin does not send a sound object.

Category

LaMetric sound category.

  • JSON field: messages[].sound.category
  • Default: notifications

Available values:

  • notifications
  • alarms

Sound ID

Identifier of the LaMetric sound to play.

  • JSON field: messages[].sound.id
  • Required if sound is enabled

Example: positive1.

Repeat

Number of sound repetitions.

  • JSON field: messages[].sound.repeat
  • Default: 1
  • Minimum: 0
  • Maximum: 20

Keep this value low to avoid overly intrusive sound notifications.

Français

Cette page décrit chaque option visible dans le formulaire de configuration Homebridge UI du plugin homebridge-lametric-time-messenger.

Le plugin cible uniquement les LaMetric TIME V2 / 2022+. Les LaMetric TIME première génération ne sont pas prises en charge.

Réglages généraux

Platform Name

Nom de l’instance affichée par Homebridge.

  • Champ JSON : name
  • Valeur par défaut : LaMetric Time
  • Recommandation : conserver un nom simple, par exemple LaMetric Time.

Debug Logging

Active les logs de debug du plugin.

  • Champ JSON : debug
  • Valeur par défaut : false
  • Utilisation : activer temporairement pour diagnostiquer un problème, puis désactiver pour éviter des logs trop verbeux.

Queue Strategy

Définit la stratégie de traitement de la file d’attente.

  • Champ JSON : queueStrategy
  • Valeur par défaut : sequential
  • Valeur disponible : sequential

sequential signifie que les notifications sont envoyées l’une après l’autre pour chaque appareil LaMetric. Cela évite de saturer l’API locale.

Maximum Queue Size

Nombre maximum de notifications en attente dans une file.

  • Champ JSON : maxQueueSize
  • Valeur par défaut : 50
  • Minimum : 1
  • Maximum : 500

Si la file est pleine, les nouvelles notifications peuvent être refusées selon la stratégie de doublons configurée.

Duplicate Notification Behavior

Définit le comportement lorsqu’une notification avec le même identifiant est déjà en file.

  • Champ JSON : duplicateStrategy
  • Valeur par défaut : drop

Valeurs disponibles :

  • enqueue : ajoute quand même la notification en double.
  • drop : ignore la nouvelle notification si une notification identique est déjà en attente.
  • replace : remplace la notification déjà en attente par la nouvelle.

Pour les automatisations HomeKit fréquentes, drop est généralement le choix le plus sûr.

Global Delay Between Calls

Délai minimum entre deux appels API vers la même LaMetric.

  • Champ JSON : globalDelayMs
  • Valeur par défaut : 250
  • Unité : millisecondes
  • Minimum : 0
  • Maximum : 60000

Augmentez cette valeur si la LaMetric renvoie des erreurs de limitation ou si plusieurs automatisations déclenchent beaucoup de messages.

Expose Global Test Switch

Expose un switch HomeKit global de test.

  • Champ JSON : testSwitch
  • Valeur par défaut : false

Lorsque ce switch est activé, le plugin envoie une notification de test vers la première LaMetric configurée. Le test utilise la priorité critical pour fonctionner même lorsque la LaMetric est dans un mode restrictif.

Appareils LaMetric TIME V2

Cette section permet d’ajouter une ou plusieurs LaMetric TIME V2. Chaque appareil reçoit son propre identifiant, son adresse réseau et sa clé API locale.

Internal ID

Identifiant interne de l’appareil.

  • Champ JSON : devices[].id
  • Obligatoire : oui
  • Format : lettres, chiffres, _ et -
  • Exemple : salon

Cet identifiant est utilisé dans les messages via deviceIds. Ne le modifiez pas après création des accessoires HomeKit, sauf si vous acceptez de recréer les associations.

Name

Nom lisible de l’appareil.

  • Champ JSON : devices[].name
  • Obligatoire : oui
  • Exemple : LaMetric Salon

Ce nom est utilisé dans les logs.

Host

Adresse réseau de la LaMetric.

  • Champ JSON : devices[].host
  • Obligatoire : oui
  • Exemple recommandé : 192.168.1.50

Indiquez uniquement une adresse IP ou un nom DNS. Ne saisissez pas d’URL complète, donc pas de http:// ou https://.

Dans Docker, préférez une adresse IP fixe à un nom .local, car mDNS peut ne pas fonctionner depuis le conteneur Homebridge.

Protocol

Protocole utilisé pour joindre l’API locale.

  • Champ JSON : devices[].protocol
  • Valeur par défaut : http

Valeurs disponibles :

  • http : API locale HTTP, généralement port 8080.
  • https : API locale HTTPS, généralement port 4343.

Le plugin ne désactive pas globalement la validation TLS. Si HTTPS échoue à cause d’un certificat autosigné local, utilisez HTTP sur un réseau local de confiance.

Port

Port réseau de l’API locale.

  • Champ JSON : devices[].port
  • Valeur par défaut : 8080
  • Minimum : 1
  • Maximum : 65535

Valeurs courantes :

  • 8080 avec http
  • 4343 avec https

Local API Key

Clé API locale de la LaMetric TIME V2.

  • Champ JSON : devices[].apiKey
  • Obligatoire : oui
  • Type Homebridge UI : champ mot de passe

Le plugin l’utilise avec l’utilisateur dev en HTTP Basic auth. La clé n’est pas écrite dans les logs par le plugin.

HTTP Timeout

Temps maximum d’attente d’une réponse de la LaMetric.

  • Champ JSON : devices[].timeoutMs
  • Valeur par défaut : 5000
  • Unité : millisecondes
  • Minimum : 250
  • Maximum : 60000

Augmentez cette valeur si le réseau local est lent ou si la LaMetric répond parfois tardivement.

Retry Count

Nombre de nouvelles tentatives après un échec temporaire.

  • Champ JSON : devices[].retryCount
  • Valeur par défaut : 2
  • Minimum : 0
  • Maximum : 5

Les erreurs temporaires peuvent être des erreurs réseau ou certaines erreurs serveur. Les erreurs d’authentification ne sont pas retentées.

Retry Backoff

Délai de base entre deux tentatives.

  • Champ JSON : devices[].retryBackoffMs
  • Valeur par défaut : 500
  • Unité : millisecondes
  • Minimum : 0
  • Maximum : 30000

Le délai augmente avec le numéro de tentative. Exemple : avec 500, la première attente est courte, puis les tentatives suivantes attendent davantage.

Messages

Un message correspond à une notification configurable et, si souhaité, à un switch HomeKit virtuel.

Internal ID

Identifiant interne du message.

  • Champ JSON : messages[].id
  • Obligatoire : oui
  • Format : lettres, chiffres, _ et -
  • Exemple : front-door-open

Cet identifiant sert à générer l’UUID HomeKit de l’accessoire. Ne le modifiez pas après création, sauf si vous acceptez de recréer l’accessoire.

Name

Nom du message.

  • Champ JSON : messages[].name
  • Obligatoire : oui
  • Exemple : Porte ouverte

Ce nom est utilisé pour le switch HomeKit et dans les logs.

Target Device IDs

Liste des appareils LaMetric ciblés par ce message.

  • Champ JSON : messages[].deviceIds
  • Obligatoire : oui
  • Minimum : un appareil
  • Exemple : salon

Chaque valeur doit correspondre à un Internal ID défini dans la section des appareils.

Expose HomeKit Switch

Crée un switch HomeKit pour déclencher le message.

  • Champ JSON : messages[].exposeSwitch
  • Valeur par défaut : true

Si activé, le message apparaît dans Apple Maison sous forme de switch. Une automatisation peut l’activer pour envoyer la notification.

Auto Reset Delay

Délai avant remise automatique du switch à Off.

  • Champ JSON : messages[].autoResetMs
  • Valeur par défaut : 1000
  • Unité : millisecondes
  • Minimum : 100
  • Maximum : 60000

Ce réglage évite qu’un switch reste allumé après l’envoi d’une notification.

Cooldown

Délai minimum entre deux envois réussis du même message.

  • Champ JSON : messages[].cooldownMs
  • Valeur par défaut : 5000
  • Unité : millisecondes
  • Minimum : 0
  • Maximum : 86400000

Le cooldown est appliqué uniquement après un envoi réussi. Il permet d’éviter les répétitions causées par des automatisations trop fréquentes.

Priority

Priorité de la notification LaMetric.

  • Champ JSON : messages[].priority
  • Valeur par défaut : info

Valeurs disponibles :

  • info : priorité normale.
  • warning : priorité plus élevée.
  • critical : priorité maximale, peut réveiller l’appareil depuis un mode restrictif.

Si la LaMetric répond Only notifications with priority 'critical' are allowed in current mode, mettez ce champ sur Critical.

Notification Icon Type

Type d’icône de notification LaMetric.

  • Champ JSON : messages[].iconType
  • Valeur par défaut : none

Valeurs disponibles :

  • none : pas de type d’icône global.
  • info : notification informative.
  • alert : notification d’alerte.

Ce réglage est distinct de l’icône définie dans chaque frame.

Display Cycles

Nombre de cycles d’affichage de la notification.

  • Champ JSON : messages[].cycles
  • Valeur par défaut : 1
  • Minimum : 1
  • Maximum : 100

Augmentez cette valeur pour afficher le message plus longtemps.

Default Template Value

Valeur par défaut disponible dans les templates.

  • Champ JSON : messages[].value
  • Valeur par défaut : chaîne vide

Cette valeur peut être insérée dans le texte avec {{value}}.

Frames

Une frame correspond à une étape d’affichage dans la notification LaMetric. Un message doit contenir au moins une frame.

Text

Texte affiché sur la LaMetric.

  • Champ JSON : messages[].frames[].text
  • Obligatoire : oui

Variables disponibles :

  • {{date}}
  • {{time}}
  • {{name}}
  • {{value}}

Les templates n’exécutent pas de JavaScript.

Icon ID

Icône LaMetric affichée avec la frame.

  • Champ JSON : messages[].frames[].icon
  • Obligatoire : non

Formats courants :

  • i1234 pour une icône statique.
  • a1234 pour une icône animée.

Order

Ordre d’affichage de la frame.

  • Champ JSON : messages[].frames[].order
  • Valeur par défaut : 0
  • Minimum : 0
  • Maximum : 999

Les frames sont triées par cette valeur avant l’envoi.

Son

Les options de son sont affichées lorsque le son est activé.

Enable Sound

Active l’ajout d’un son à la notification.

  • Champ JSON : messages[].sound.enabled
  • Valeur par défaut : false

Si désactivé, le plugin n’envoie pas d’objet sound.

Category

Catégorie de son LaMetric.

  • Champ JSON : messages[].sound.category
  • Valeur par défaut : notifications

Valeurs disponibles :

  • notifications
  • alarms

Sound ID

Identifiant du son LaMetric à jouer.

  • Champ JSON : messages[].sound.id
  • Obligatoire si le son est activé

Exemple : positive1.

Repeat

Nombre de répétitions du son.

  • Champ JSON : messages[].sound.repeat
  • Valeur par défaut : 1
  • Minimum : 0
  • Maximum : 20

Gardez une valeur faible pour éviter les notifications sonores trop intrusives.