Spisu treści:
Wideo: Lokalizator z raportem na żywo za pomocą Chat Bota: 4 kroki
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-13 06:58
Za pośrednictwem WhatsApp uzyskaj zmienne (lokalizacja, wysokość, ciśnienie…) z NodeMCU zgodnie z żądaniem lub wyślij polecenia do NodeMCU za pośrednictwem interfejsu API Twilio.
przez kilka tygodni pracowałem z interfejsem API Twilio, szczególnie w przypadku wiadomości WhatsApp, a nawet stworzyłem projekt wysyłający zmienne pochodzące z NodeMCU do mojego telefonu. Ale mój poprzedni projekt okresowo wysyłał pakiety danych do mojego telefonu jako wiadomości WhatsApp. Byłem zdeterminowany, aby wykorzystać mój rodzący się pomysł i ulepszyć go za pomocą wiadomości odpowiedzi WhatsApp i bazy danych MySQL, i w ten sposób stworzyłem ten projekt. W ten sposób NodeMCU przesyła zmienne do telefonu jako wiadomości WhatsApp, gdy użytkownik o to poprosi lub otrzyma polecenia od użytkownika za pośrednictwem WhatsApp. Aby temu zaradzić, stworzyłem aplikację internetową w PHP, która wykrywa, czy wiadomość WhatsApp została wysłana, czy nie i odpowiada na wiadomość w zależności od słowa kluczowego w treści. Aplikacja o nazwie WhatsApp Two-Way Connection Hub zapisuje wszystkie zmienne przesłane z NodeMCU i polecenia otrzymane z WhatsApp do dedykowanej bazy danych MySQL, dzięki czemu natychmiast komunikuje się z użytkownikiem i NodeMCU, gdy coś zażąda. Udostępniłem kod źródłowy aplikacji poniżej, jeśli chcesz użyć lokalnego hosta lub swojego serwera zamiast TheAmplituhedron do stworzenia huba połączeń, ale najpierw musisz pobrać Twilio Helper Library w swoim katalogu. W tym projekcie chciałem zrobić zdalny bot mapujący i prognozujący pogodę wysyłający temperaturę, ciśnienie, wysokość, szerokość i długość geograficzną na żądanie jako wiadomości odpowiedzi WhatsApp i kontrolujący bazę, wydając polecenia za pośrednictwem WhatsApp. Aby zebrać dane, zdecydowałem się użyć czujnika ciśnienia i temperatury BMP180 oraz modułu GPS GY-NEO6MV2, a aby baza była zdalna i kontrolowana, użyłem sterownika silnika L298N oraz zestawu dwóch kół i silnika prądu stałego wraz z kółkiem kulowym.
Możesz również wyświetlić lokalizację wygenerowaną przez moduł GPS w Mapach Google za pośrednictwem WhatsApp.
Kieszonkowe dzieci
- Komponenty sprzętowe
- Płytka zaciskowa NodeMCU ESP8266 × 1
- NodeMCU LoLin ESP8266 Osłona podstawy×1
- Moduł GPS GY-NEO6MV2 × 1
- Czujnik ciśnienia SparkFun BMP180×1
- Sterownik silnika L298N × 1
- Zestaw koła i silnika prądu stałego × 2
- Kółko kulkowe × 1 Uchwyt baterii, AA x 8 × 1
- SparkFun Płytka do krojenia chleba do lutowania - Mini×1
- Męskie/żeńskie przewody połączeniowe × 1 męskie/męskie przewody połączeniowe
Aplikacje i usługi online
- IDE Arduino
- Twilio API dla WhatsApp
Krok 1: Twilio dla WhatsApp
Aby wysyłać wiadomości WhatsApp za pośrednictwem interfejsu API Twilio, jedyne, co musisz zrobić, to założyć konto próbne Twilio.
Po zarejestrowaniu się, za pomocą identyfikatora SID i tokena uwierzytelniania, możesz bezpłatnie korzystać z interfejsu Twilio API dla WhatsApp. Jak wyjaśniono w Twilio, musisz dołączyć do wspólnego numeru telefonu z telefonem, aby zainicjować wiadomości szablonów API i WhatsApp. Ważne: aby móc odpowiadać na wiadomości WhatsApp przychodzące ze zweryfikowanego telefonu, musisz zmienić domyślny adres URL punktu końcowego aplikacji Twilio w piaskownicy na ścieżkę centrum połączeń.
Krok 2: Jak utworzyć centrum połączeń, aby zarządzać przesyłaniem danych
Zaprogramowałem aplikację internetową o nazwie WhatsApp Two-Way Connection Hub, która umożliwia odpowiadanie na wiadomości WhatsApp przychodzące ze zweryfikowanego numeru telefonu przez aplikację Twilio w celu uzyskania zmiennych z NodeMCU lub dowolnego innego urządzenia, które może wykonać żądanie HTTP, jako wiadomości WhatsApp i wysyłaj polecenia do urządzenia.
Aplikacja ta tymczasowo zapisuje dane pochodzące z urządzenia na dedykowanym serwerze MySQL, dzięki czemu nie ma potrzeby wywoływania bieżących zmiennych z urządzenia za każdym razem, gdy dane żądane przez użytkownika. Aby poprawnie zarejestrować zmienne z urządzenia, należy wysłać zmienne za pośrednictwem żądania HTTP do unikalnej ścieżki centrum połączeń. Ważne: Aby móc korzystać z aplikacji, należy zmienić domyślny adres URL punktu końcowego aplikacji Twilio w piaskownicy na ścieżkę centrum połączeń wygenerowaną za pomocą hedronu przez interfejs API TheAmplituhedron.
Po wpisaniu konkretnego słowa kluczowego, które możesz zobaczyć poniżej dla poszczególnych danych w Twojej dedykowanej bazie danych, w WhatsApp, ta aplikacja odpowie na tę wiadomość, wysyłając żądaną zmienną powiązaną ze słowem kluczowym na Twój telefon lub przesyłając polecenia do urządzenia. Posiadacze danych w bazie danych: Dane_1, Dane_2, Dane_3, Dane_4, Dane_5, Dane_6, Polecenie
- Temperatura -> Pobierz dane_1
- Ciśnienie -> Pobierz dane_2
- Wysokość -> Pobierz dane_3
- Data -> Pobierz dane_4
- Czas -> Pobierz dane_5
- Szerokość i długość geograficzna -> Pobierz dane_6
- Lokalizacja na mapie -> Uzyskaj link do Map Google za pomocą informacji GPS
- Idź prosto -> Wyślij się jako polecenie do urządzenia
- Wróć -> Wyślij się jako polecenie do urządzenia
- Idź w prawo -> Wyślij się jako polecenie do urządzenia
- Idź w lewo -> Wyślij się jako polecenie do urządzenia
- Zatrzymaj -> Wyślij się jako polecenie do urządzenia
- Zaprogramowany przez
- O
- Jak się masz?
- Dalsza informacja
- KontaktSpidey -> Testowanie przesyłania mediów
- Batman -> Testowe przesyłanie multimediów
- Pomoc -> Wydrukuj wszystkie słowa kluczowe
Przypomnienie: WhatsApp Two-Way Connection Hub jest oprogramowaniem typu open source. Jeśli nie chcesz używać TheAmplituhedron zamiast localhost lub swojego serwera w swoich projektach, możesz pobrać poniższy kod źródłowy i w ten sposób specjalizować słowa kluczowe, tworząc aplikację huba połączeń na swoim serwerze.
Krok 3: Funkcje
- Zbieraj informacje o dacie, czasie, szerokości i długości geograficznej generowane przez moduł GPS GY-NEO6MV2.
- Uzyskaj temperaturę, ciśnienie i wysokość z czujnika ciśnienia BMP180.
- Wykonaj żądanie HTTP Get, aby przesłać zmienne do bazy danych i otrzymać w odpowiedzi polecenie z bazy danych.
- W zależności od polecenia steruj sterownikiem silnika L298N.
- Monitoruj wszystkie procesy na monitorze szeregowym.
- Wywołaj komunikaty odpowiedzi, aby wyświetlić zmienne zapisane w bazie danych zgodnie z żądaniem za pośrednictwem WhatsApp lub wydaj polecenia urządzeniu, wysyłając polecenie na WhatsApp.