Ligne 135 : |
Ligne 135 : |
| [[fichier:Rasp-Node-Red-picam-mail-14.png]] | | [[fichier:Rasp-Node-Red-picam-mail-14.png]] |
| | | |
| + | === Encodage de l'image en base64 === |
| + | |
| + | Nous allons aller à l'essentiel en ce qui concerne la capture photo en utilisant une commande simple pour prendre un cliché et renvoyer celui-ci dans le flux NodeRED grâce à un bloc permettant d'exécuter des commandes bash. |
| + | |
| + | {{ambox | text = Vous trouverez un TUTO détaillé sur la PiCam vous permettant de prendre la main, ou de la paramétrer si vous n'avez pas encore utilisé celle-ci auparavant: ....___TUTO___...}} |
| + | |
| + | Nous allons tout d'abord cliquer sur le bloc "Exec" dans la section "Advanced" de la colonne de gauche et glisser l'élément dans la zone de travail. |
| + | |
| + | [[fichier:Rasp-Node-Red-picam-mail-15.png]] |
| + | |
| + | Ensuite, cliquer sur le bloc nouvellement créé et configurer celui-ci. |
| + | |
| + | [[fichier:Rasp-Node-Red-picam-mail-16.png]] |
| + | |
| + | Le menu suivant s'affichera, et nous pourrons configurer le bloc "Exec" nouvellement créé. |
| + | |
| + | ==== Command ==== |
| + | |
| + | Nous allons y ajouter la commande à exécuter pour prendre une photo avec la caméra du Raspberry Pi et la stocker dans un fichier jpg dans le dossier /tmp/ de linux. |
| + | |
| + | <syntaxhighlight lang="python"> |
| + | raspistill -o /tmp/cam.jpg -w 640 -h 480 |
| + | </syntaxhighlight> |
| + | |
| + | Nous prenons soin de limiter la hauteur et la largeur de l'image afin de réduire son poids pour l'envoi par email. |
| + | |
| + | [[fichier:Rasp-Node-Red-picam-mail-17.png]] |
| + | |
| + | ==== +Append ==== |
| + | |
| + | Ensuite, nous allons décocher la case "msg.payload" si elle est cochée par défaut. |
| + | |
| + | [[fichier:Rasp-Node-Red-picam-mail-18.png]] |
| + | |
| + | ==== Extra input parameters et Timeout ==== |
| + | |
| + | Nous n'aurons pas besoin de compléter ces champs pour notre projet. |
| + | |
| + | Si vous cochez le champ "Use spawn() instead of exec()?", votre commande sera réalisée sous forme d'un processus résident et continuera de s'exécuter jusqu'à ce qu'elle se termine par elle-même (sauf si elle ne se termine jamais). |
| + | Cette solution implique que le programme n'attendra pas que cette commande soit réalisée pour passer aux étapes suivantes. |
| + | Si la suite de l'exécution de votre flux est susceptible d'utiliser le résultat de cette commande, nous vous déconseillons d'utiliser cette option sous peine de provoquer des erreurs à la suite du traitement du flux. |
| + | |
| + | Le champ "Timeout" permet de définir un temps d'attente maximum avant de mettre un terme à l'exécution de la commande. |
| + | Cela permet de débloquer la situation si la commande exécutée prends un temps anormalement long à s'exécuter. |
| + | |
| + | ==== Name ==== |
| + | |
| + | Nous allons ensuite compléter le champs nom, celui-ci sera utilisé pour nommer le bloc dans le "schéma", mais aussi de nommer les logs comme pour le bloc "Exec". |
| + | |
| + | [[fichier:Rasp-Node-Red-picam-mail-19.png]] |
| | | |
| {{Rasp-Node-Red-TRAILER}} | | {{Rasp-Node-Red-TRAILER}} |