Skip to content

Un plugin pour la box domotique eedomus pour piloter la serrure connectée Nuki Smart Lock

License

Notifications You must be signed in to change notification settings

jluc2808/eedomusScript_nuki_smartlock

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

eedomus script : Nuki smartlock

Nuki Logo

Description

Nikya eedomus Script Nuki Smartlock est un plugin pour la box domotique eedomus, qui permet de piloter et connaitre l'état d'une serrure intelligent Nuki.

Ce plugin est composé d'un script PHP et d'une déclaration pour 4 périphériques :

  • Commande d'ouverture/fermeture
  • État de la serrure
  • Indicateur de % batterie (modifié)
  • État de la porte (ajout)

Son avantage principal est de mettre à jour l'état de la serrure, seulement si nécessaire, en utilisant la fonctionnalité callback de l'API Nuki. (au lieu de créer des polling côté eedomus) Le script va aussi synchroniser l'action (verrouiller, déverrouiller, ...) sur la serrure, quelque soit le dispositif utilisé y compris si celui-ci n'est pas eedomus.

Prérequis

Une serrure Nuki Smartlock et son bridge (Matériel ou logiciel)

Installation via store

Depuis le portail eedomus, cliquez sur

  • Configuration
  • Ajouter ou supprimer un périphérique
  • Store eedomus
  • puis sélectionner Nuki Smartlock

Des informations seront demandées pour la création du plugin.
Puis noter les codeAPI des périphériques créés. (A utiliser à l'étape register)

Installation manuelle

  1. Télécharger le projet sur GitHub : GitHub/jluc2808/nuki_smartlock
  2. Uploader le fichier dist/nukismartlock.php sur la box (Doc eedomus script)
  3. Créer manuellement les 4 périphériques et noter leur codeAPI (A utiliser à l'étape register)

Paramétrage

Informations à prendre en note, car à réutiliser ultérieurement.

  1. Discovery : Appeler l'URL suivante pour connaitre l'IP et le port local de votre Bridge
  2. Get Token (auth) : S'authentifier sur le brige, avec l'IP et le port obtenu précédemment, en appelant l'URL suivante et en confirmant par un appui sur le bouton physique du bridge.
  3. Setup script : Configurer le script eedomus, avec les informations obtenues, en appelant la fonction setup (Voir ci-après)
  4. Register script : Configurer le script eedomus, avec les informations obtenues, en appelant la fonction register (Voir ci-après)

Les fonctions du script

Executer le script eedomus en précisant une function.

Fonction setup

Configurer ce script.

Fonction register

Abonner la box eedomus en tant que Callback souhaitant être informé des changements d'état de la serrure.

Fonction add_periph_registration

Enregistrer un périphérique pour gérer les changements d'état de la serrure et de la porte.

Fonction list

Lister les équipements connus par le bridge Nuki ciblé

Fonction callback list

Lister les callback enregistrés par le brige Nuki.

Fonction callback remove

Supprimer un callback enregistré sur le Bridge Nuki.
(Utile pour pallier à l'éventuel erreur too many callbacks registered)

Fonction incomingcall

Fonction coeur de ce script, c'est cette fonction qu'appellera le bridge Nuki à chaque changement d'état d'une serrure.
Elle lit les informations reçues et met à jour les périphériques concernés avec les nouvelles valeurs.
Inutile de l'appeler manuellement, mais un appel permet de savoir si l'ensemble est correctement configuré et opérationnel.

Valeurs possibles

Pour periph value batterycritical

  • 0 : Batterie non faible
  • 100 : Batterie faible

Pour periph value state

ID Name
0 uncalibrated
1 locked
2 unlocking
3 unlocked
4 locking
5 unlatched
6 unlocked (lock ‘n’ go)
7 unlatching
254 motor blocked
255 undefined

About

Un plugin pour la box domotique eedomus pour piloter la serrure connectée Nuki Smart Lock

Resources

License

Stars

Watchers

Forks

Packages

No packages published