Étape 5: Creuser plus profondément dans le code
Lorsque vous ouvrez le script, vous remarquerez qu’elle se compose de trois fonctions ainsi qu’un bloc de code qui implémente ces fonctions lorsque le script est exécuté. Les fonctions utilisent l' API de Dropbox et et accéder aux fichier de journal de température de la DS18B20 afin d’écouter les commandes de Dropbox et télécharger la dernière température mesurée. Voici un aperçu de ce que les fonctions de faire, et comment ils sont utilisés pour faire fonctionner le système de surveillance :
- poll_parameter() :
Cette fonction affiche l’objet des dossiers Dropbox paramètre que nous avons créé à l’étape 3. Il recherche le dossier Dropbox app un fichier contenant le texte "param ='. Il extrait ensuite le texte après le « = » et tente de le convertir en un nombre entier. Vous pouvez voir que cela nous permet de contrôler le programme en ajoutant des numéros correspondants à la fin des fichiers paramètre manuellement. L’étape suivante contient une brève notice vous montrant comment utiliser chacun des fichiers paramètre pour contrôler un aspect du programme.
- set_parameter() :
Cette fonction permet au programme de renommer un fichier de paramètre à partir de Python. Elle le fait à quelques reprises, principalement pour réduire la nécessité d’une excessive manuel renommage des fichiers.
- set_latest_temp() :
Cette fonction utilise des set_parameter() pour télécharger la dernière température au dossier Dropbox app en l’ajoutant dans le fichier de paramètre « température ». La fonction lit la dernière température de fichier de journal de la DS18B20 (qui est disponible sur Linux à l’emplacement pointé par la variable THERMOMETER_FILE).
La dernière partie du programme contient le code qui s’exécutera lorsque le script est exécuté. Après que quelques étapes de configuration requises pour le capteur DS18B20, il ouvre une session de sélection à l’aide de votre jeton d’accès et utilise pygame pour chercher votre webcam. Si une webcam est trouvée, il entrera dans une boucle où il utilise poll_parameter() pour extraire des informations de Dropbox et loi là-dessus.
IMPORTANT: vous remarquerez la ligne de code suivante :
.. .cette tente de créer une interface de caméra utilisable à partir de la première webcam que pygame détecte. La résolution peut devoir être modifiée pour correspondre à votre webcam. Expérimenter avec un certain nombre de valeurs de trouver ce qui fonctionne le mieux.