Comment créer une application bidirectionnelle pour Internet des objets / Discuter avec Python

IoT - Internet des objets
Qu'est-ce que l'Internet des objets (IoT) «En anglais simple»?

De nos jours, un grand nombre d'objets que nous utilisons au quotidien peuvent être connectés à Internet, tels que smartwatches, voitures, portes à serrure intelligente, thermostats, équipements sportifs, appareils ménagers (réfrigérateurs, four, etc.) et même des chaussures. Cette connectivité permet à ces objets d’avoir leur propre identité ainsi que la possibilité de recevoir et de communiquer des informations précieuses, ce qui les rend «intelligents». Ceci est connu comme "Internet des objets".

À titre d’illustration, une smartwatch peut collecter des données telles que le nombre de pas que vous faites, la température de votre corps, votre fréquence cardiaque, etc. qui peut être visualisé à partir d'autres appareils connectés à Internet tels qu'un smartphone ou une tablette. Toutes les données collectées par la smartwatch peuvent ensuite être analysées pour vous indiquer le nombre de calories que vous avez brûlées, vous donner des conseils de mise en forme personnalisés et d’autres informations relatives à la santé.

L’Internet des objets ne se limite pas aux produits de consommation. Il existe de nombreux autres exemples qui s'étendent aux soins de santé, à la fabrication, à l'agriculture et aux infrastructures (capteurs sur les ponts et bâtiments qui vérifient le stress ou les dommages causés à leur structure; poubelles de ville équipées de capteurs qui alertent lorsqu'elles doivent être vidées).

L'IdO soulève des problèmes de confidentialité et de sécurité. Par exemple, un pirate informatique pourrait peut-être déverrouiller et démarrer votre voiture à distance. Tous ces appareils collectent une grande quantité de données, capturant vos actions et votre localisation tout au long de la journée. Nous ne savons souvent pas vraiment toutes les données collectées ni leur mode d’utilisation. Une chose que nous savons, c’est que l’Internet des objets va se développer plus rapidement au cours des prochaines années, apportant de nouveaux avantages et de nouveaux défis.

Dans cet article, nous allons explorer comment publier et souscrire une architecture IoT à l'aide du serveur PubNub.
PubNub-IoT

PubNub est un réseau mondial de flux de données et une entreprise de service d’infrastructure en temps réel offrant un réseau de flux de données en temps réel aux développeurs Web, mobiles et IoT. L'architecture de pubnub est très similaire au protocole MQTT dans lequel les utilisateurs s'abonnent à un sujet et écoutent les données publiées sur ce sujet par un autre utilisateur.

Pour les besoins de cette démonstration, nous allons utiliser le SDK pubnub python pour créer une application de discussion bidirectionnelle. Vous devez disposer de python version 3.65 ou supérieure et installer pubnub sur votre ordinateur.

Nous allons maintenant suivre la configuration sur https://www.pubnub.com/docs/python/pubnub-python-sdk.

Le moyen le plus simple de commencer consiste à installer PubNub Python SDK via pypi. Python 3.6 est livré avec pip3. Si vous avez mis à niveau pip en pip3, assurez-vous que vous exécutez votre commande avec python3 et pip3 au lieu de python et pip, qui fera référence à python 2. La version fournie par défaut dans un mac.

J'ai copié et modifié le fichier python «hello world» ajouté davantage de commentaires pour mieux expliquer le rôle de chaque section et ligne de code:

Ouvrez votre éditeur (j'utilise du code visuel) et créez un fichier python dans lequel vous allez copier et coller le code ci-dessus. J'ai nommé le mien “yann.py”, vous pouvez nommer le vôtre comme vous le souhaitez.

Pubnub fournit une console en ligne sur laquelle vous pouvez utiliser votre logiciel pour tester votre application. Nous utiliserons l'application de démonstration par défaut définie sur la console pubnub en spécifiant le nom du canal: «awesomeChannel», ainsi que la valeur de clé de publication et d'abonnement: «démo».

Maintenant, selon l'éditeur que vous utilisez, construisez-le ou ouvrez simplement un terminal ou une invite de commande; cd dans votre répertoire de fichiers et exécutez la ligne de commande suivante:

python3 nom_fichier.py

J'utilise l'éditeur de code Visual Studio. Après avoir exécuté votre fichier python avec succès, envoyez un message à partir de la console pubnub et consultez le résultat sur votre terminal ou votre invite de commande, et inversement:

J'ai utilisé python dans ce cas car j'ai créé une commande alias sur mon fichier .bash_profile qui fait référence à python à python3 et pip à pip3 pour une utilisation ultérieure:

Maintenant, créez un autre fichier Python pour le deuxième utilisateur. J'ai nommé le mien bob.py, copier le même code du fichier précédent et attribuer un nouveau nom uuid au deuxième utilisateur:

# permet d'attribuer à chaque utilisateur un identifiant d'utilisateur de base pour l'application de discussion de base
pnconfig.uuid = 'Nom_utilisateur_2'

Exécutez les deux fichiers et vous avez une application de discussion entre les utilisateurs 1 et 2:

Pour plus de détails sur le code, consultez mon dépôt GitHub.
Si cet article vous a plu, vous pourriez aussi aimer «Raspberry Pi 3 - Scripting de shell - Moniteur de porte (un périphérique IoT)»
Acclamation!!