Installation de l'environnement
Avec quoi je commence ?
Vous avez en votre possession :
- Un objet connecté (avec un identifiant unique)
- Un Raspberry Pi (et le nécessaire pour le connecter à une station de travail)
De notre côté, nous avons fourni aussi :
- Une infrastructure avec le broker de messages MQTT
- Des librairies Java permettant de communiquer avec les objets
Y'a quoi sur le Raspberry ?
Sur votre machine, vous disposez d'un environnement déjà connecté à internet qui contient :
- Une instance de Home Assistant (toute fraiche), accessible à http://localhost:8123
- Un IDE pour développer (VSCode)
Récupérer le squelette avec les exemples de projet
Rendez-vous sur le repository Gitlab du projet et téléchargez l'archive zip sur votre Raspberry ! Juste ici 😁
Pour accéder à l'archive, cliquez sur code
, puis dans le menu dans la section Télécharger ce répertoire
,
cliquez sur zip
.
Vous pouvez maintenant dézipper l'archive et ouvrir le dossier résultant avec VSCode.
Créer la configuration de votre environnement
A la racine du projet que vous venez d'ouvrir, vous verrez un fichier appelé .env.sample
, copiez-collez ce fichier
à côté du précédent en le renommant .env
. Ce fichier fournira à votre programme les variables d'environnement dont
il a besoin pour fonctionner !
Le broker de message
Coup de chance ! Les variables relatives au broker de message ont déjà quasiment toutes les bonnes valeurs !
Il va seulement falloir changer la valeur MQTT_CLIENT_ID par le nom de votre machine (inscrit sur votre raspberry-pi: hackahost-XXX
)
Passons tout ça en revue pour que tout soit bien clair 😇
Variable | Valeur | Utilité |
---|---|---|
MQTT_CLIENT_ID | YOURHOSTID | Cette variable est le nom de votre machine (hackahost-XXX) |
MQTT_HOST | mqtt.takima.internal:1883 | Cette variable se coupe en deux parties: l'URL du broker "mqtt.takima.internal" et le port sur lequel le broker écoute 1883 |
MQTT_USERNAME | mqtt-broker | Cette variable représente le nom d'utilisateur pour se connecter au broker. |
MQTT_PASSWORD | takima | Cette variable est le mot de passe ultra-sécurisé de notre utilisateur. |
Home Assistant
Variable | Valeur | Utilité |
---|---|---|
HOME_ASSISTANT_BASE_URL | http://localhost:8123 | Même principe que plus haut, c'est l'URL de Home Assistant hébergé en local et son port pour y accéder. |
HOME_ASSISTANT_BEARER_TOKEN | YOURTOKEN | Cette variable est le jeton permettant de vous identifier dans Home Assistant. |
Cette fois-ci, il va falloir aller chercher la seconde variable qui n'est pas donnée dans l'exemple !
Rendez-vous sur votre instance de Home Assistant.
Cliquez sur Create your Smart Home
suivez la création de votre compte, quand vous verrez une page avec des switchs
sélectionnez les tous, ça ne mange pas de pain.
Une fois connecté, cliquez sur l'icône de votre compte en bas à gauche.
Scrollez tout en bas du menu déroulant jusqu'à attendre cette option :
Générez votre token et copiez/collez le dans votre fichier d'environnement à la place de YOURTOKEN
.
Warning
Pensez à copier/coller votre token en lieu sûr, une fois généré il ne peut être visualisé qu'une seule fois. Vous serez obligé d'en créer un nouveau si vous l'oubliez !
Note
Dans un contexte réel le fichier .env ne doit JAMAIS être accessible par quelqu'un d'autre que vous. Il comporte des informations sensibles, comme des identifiants de connexion.
Ça y est !
Votre projet est prêt à être exécuté ! Passons au Lancement !