Locator avec le rapport en direct à l'aide de Chat Bot : 4 étapes
Locator avec le rapport en direct à l'aide de Chat Bot : 4 étapes
Anonim
Locator avec si le rapport en direct à l'aide de Chat Bot
Locator avec si le rapport en direct à l'aide de Chat Bot
Locator avec si le rapport en direct à l'aide de Chat Bot
Locator avec si le rapport en direct à l'aide de Chat Bot
Locator avec si le rapport en direct à l'aide de Chat Bot
Locator avec si le rapport en direct à l'aide de Chat Bot
Locator avec si le rapport en direct à l'aide de Chat Bot
Locator avec si le rapport en direct à l'aide de Chat Bot

Via WhatsApp, obtenez des variables (emplacement, altitude, pression…) de NodeMCU comme demandé ou envoyez des commandes à NodeMCU via l'API de Twilio.

Depuis quelques semaines, je travaille avec l'API de Twilio, en particulier pour la messagerie WhatsApp, et j'ai même créé un projet envoyant les variables provenant de NodeMCU à mon téléphone. Mais, mon ancien projet ne faisait qu'envoyer périodiquement des paquets de données à mon téléphone sous forme de messages WhatsApp. Et, j'étais déterminé à prendre mon idée naissante et à l'améliorer en utilisant des messages de réponse WhatsApp et une base de données MySQL et j'ai ainsi créé ce projet. De cette façon, NodeMCU transfère les variables au téléphone sous forme de messages WhatsApp lorsque l'utilisateur les a demandés ou reçoit des commandes de l'utilisateur via WhatsApp. Pour gérer cela, j'ai créé une application Web en PHP, qui détecte si un message WhatsApp a été envoyé ou non et répond au message en fonction du mot-clé dans le corps. L'application, nommée WhatsApp Two-Way Connection Hub, enregistre toutes les variables transférées de NodeMCU et les commandes reçues de WhatsApp dans une base de données MySQL dédiée et communique donc l'utilisateur et NodeMCU instantanément lorsque quelque chose est demandé. J'ai partagé le code source de l'application ci-dessous si vous souhaitez utiliser le localhost ou votre serveur au lieu de TheAmplituhedron pour créer un hub de connexion, mais d'abord, vous devez télécharger Twilio Helper Library dans votre répertoire. Dans ce projet, je voulais faire un bot de cartographie et de prévisions météorologiques à distance envoyant la température, la pression, l'altitude, la latitude et la longitude sur demande en tant que messages de réponse WhatsApp et contrôle la base en donnant des commandes via WhatsApp. Pour collecter des données, j'ai décidé d'utiliser un capteur de pression et de température BMP180 et un module GPS GY-NEO6MV2 et pour rendre la base télécommandable et contrôlable, j'ai utilisé un pilote de moteur L298N et un kit de moteur à deux roues et à courant continu avec une roulette à billes.

En outre, vous pouvez afficher l'emplacement généré par le module GPS sur Google Maps via WhatsApp.

Fournitures

  • Composants matériels
  • Carte de dérivation NodeMCU ESP8266 × 1
  • Bouclier de base NodeMCU LoLin ESP8266 × 1
  • Module GPS GY-NEO6MV2 × 1
  • Capteur de pression SparkFun BMP180 × 1
  • Pilote de moteur L298N × 1
  • Kit roue et moteur à courant continu × 2
  • Roulette à billes × 1 Support de batterie, AA x 8 × 1
  • Planche à pain à souder SparkFun - Mini×1
  • Fils de cavalier mâle/femelle × 1 fils de cavalier mâle/mâle

Applications logicielles et services en ligne

  • IDE Arduino
  • API Twilio pour WhatsApp

Étape 1: Twilio pour WhatsApp

Twilio pour WhatsApp
Twilio pour WhatsApp
Twilio pour WhatsApp
Twilio pour WhatsApp
Twilio pour WhatsApp
Twilio pour WhatsApp

Pour envoyer des messages WhatsApp via l'API de Twilio, la seule chose que vous devez faire est de vous inscrire à un compte d'essai Twilio.

Après vous être inscrit, avec votre SID et votre jeton d'authentification, vous pouvez utiliser l'API Twilio pour WhatsApp sans frais. Comme expliqué sur Twilio, vous devez joindre un numéro de téléphone partagé avec votre téléphone afin d'initier les messages de modèle API et WhatsApp. Important: pour pouvoir répondre aux messages WhatsApp provenant de votre téléphone vérifié, vous devez modifier l'URL du point de terminaison par défaut de votre application Twilio dans la Sandbox avec le chemin de votre hub de connexion.

Étape 2: Comment créer un hub de connexion pour gérer le transfert de données

Comment créer un hub de connexion pour gérer le transfert de données
Comment créer un hub de connexion pour gérer le transfert de données
Comment créer un hub de connexion pour gérer le transfert de données
Comment créer un hub de connexion pour gérer le transfert de données
Comment créer un hub de connexion pour gérer le transfert de données
Comment créer un hub de connexion pour gérer le transfert de données
Comment créer un hub de connexion pour gérer le transfert de données
Comment créer un hub de connexion pour gérer le transfert de données

J'ai programmé une application web, nommée WhatsApp Two-Way Connection Hub, qui permet de répondre aux messages WhatsApp provenant d'un numéro de téléphone vérifié par une application Twilio afin d'obtenir des variables de NodeMCU, ou de tout autre appareil pouvant faire une requête HTTP, comme messages WhatsApp et envoyer des commandes à l'appareil.

Cette application enregistre temporairement les données provenant de l'appareil sur un serveur MySQL dédié, il n'est donc pas nécessaire d'appeler les variables actuelles de l'appareil à chaque fois que les données demandées par l'utilisateur. Pour enregistrer correctement les variables de l'appareil, vous devez envoyer les variables via une requête HTTP à votre chemin de connexion unique. Important: Pour pouvoir utiliser l'application, vous devez modifier l'URL de point de terminaison par défaut de votre application Twilio dans la Sandbox avec le chemin de votre hub de connexion généré avec votre hedron par l'API TheAmplituhedron.

Lorsque vous entrez un mot-clé spécifique, que vous pouvez voir ci-dessous pour chaque donnée de votre base de données dédiée, sur WhatsApp, cette application répondra à ce message en envoyant la variable demandée associée au mot-clé à votre téléphone ou en transférant des commandes à l'appareil. dans la base de données: Data_1, Data_2, Data_3, Data_4, Data_5, Data_6, Command

  • Température -> Obtenir des données_1
  • Pression -> Obtenir les données_2
  • Altitude -> Obtenir des données_3
  • Date -> Obtenir les données_4
  • Heure -> Obtenir les données_5
  • Latitude et longitude -> Obtenir des données_6
  • Emplacement de la carte -> Obtenir le lien Google Maps à l'aide des informations GPS
  • Aller tout droit -> S'envoyer en tant que commande à l'appareil
  • Go Back -> S'envoyer en tant que commande à l'appareil
  • Aller à droite -> S'envoyer en tant que commande à l'appareil
  • Aller à gauche -> S'envoyer en tant que commande à l'appareil
  • Halt -> S'envoyer en tant que commande à l'appareil
  • Programmé par
  • Sur
  • Comment ça va?
  • Plus d'informations
  • ContactSpidey -> Tester le transfert de média
  • Batman -> Tester le transfert de média
  • Aide -> Imprimer tous les mots-clés

Rappel: le hub de connexion bidirectionnelle WhatsApp est open source. Si vous ne souhaitez pas utiliser TheAmplituhedron à la place de localhost ou de votre serveur dans vos projets, vous pouvez télécharger le code source ci-dessous et ainsi spécialiser les mots-clés en créant votre application hub de connexion sur votre serveur.

Étape 3: Fonctionnalités

Caractéristiques
Caractéristiques
Caractéristiques
Caractéristiques
Caractéristiques
Caractéristiques
  • Collectez les informations de date, d'heure, de latitude et de longitude générées par un module GPS GY-NEO6MV2.
  • Obtenez la température, la pression et l'altitude à partir d'un capteur de pression BMP180.
  • Faites une requête HTTP Get pour transférer des variables vers la base de données et recevez la commande de la base de données en réponse.
  • En fonction de la commande, contrôlez un pilote de moteur L298N.
  • Surveillez tous les processus sur le moniteur série.
  • Obtenez des messages de réponse pour afficher les variables enregistrées dans la base de données comme demandé via WhatsApp ou donnez des commandes à l'appareil en envoyant la commande sur WhatsApp.

Conseillé: