- Pagsasama ng UniversalTelegramBot library upang gawing simple ang komunikasyon gamit ang HTTPS gamit ang Telegram API.
- Remote control ng mga GPIO pin upang patakbuhin ang mga actuator tulad ng mga LED at basahin ang mga estado ng switch.
- Pagpapatupad ng seguridad sa pamamagitan ng pagpapatunay ng Chat ID at paggamit ng mga SSL certificate.

Naisip mo na ba ang pagkontrol sa iyong mga home automation device mula sa ginhawa ng iyong sofa gamit ang iyong mobile phone? Buweno, ang pag-set up ng isang sistema para makontrol ang isang ESP32 sa pamamagitan ng Telegram ay isa sa pinakasimple at pinakamakapangyarihang paraan upang makapasok sa mundo ng home automation nang hindi pinapakomplikado ang iyong buhay sa mga mamahaling external server o imposibleng mga configuration.
Ang mahika ay nasa paggawa ng iyong board bilang isang maliit na server na nakikinig sa mga utos mula sa isang bot. Hindi mo kailangang maging isang programming whiz, dahil sa pamamagitan ng ilang library at kaunting pasensya, mapapagana mo ang iyong device na mag-ilaw o mag-alerto sa iyo tungkol sa status ng isang sensor nang real time, lahat sa pamamagitan ng mga instant text message.
Mga materyal na kakailanganin mo
Para makapagsimula, hindi mo kailangang gumastos nang malaki. Ang pinakamahalaga ay ang pagkakaroon ng ESP32 board ; hindi mahalaga kung ito ay isang mas lumang modelo o isa sa mga pinakabago, dahil ang compatibility ay lubos na mahalaga. Bukod sa utak ng proyekto, kakailanganin mo rin ang ilang pangunahing bahagi para sa pagsubok:
- Isang light-emitting diode (LED) para masuri kung gumagana ang lahat.
- Isang 220 ohm resistor upang maiwasan ang pagkasunog ng LED.
- Isang push button o switch para basahin ang mga pisikal na estado.
- Pagkonekta ng mga kable at isang breadboard para hindi mo na kailangang maghinang pa sa simula.
Asembliya ng elektronikong sirkito
Bago i-edit ang code, kailangan mong ihanda ang hardware. Para sa halimbawang ito, ikokonekta natin ang LED sa GPIO pin 33 at ang switch sa GPIO 14. Mahalagang tandaan na maaari mong baguhin ang mga pin na ito kung kinakailangan, ngunit kailangan mong ipakita ang pagbabagong iyon sa ibang pagkakataon sa mga constant ng programa.
Ang LED ay nakakonekta sa katumbas nitong resistor para sa proteksyon, habang ang push button ay naka-configure sa loob upang maiwasan ang mga karagdagang kable. Kapag na-assemble mo na ang circuit sa breadboard , maaari ka nang lumipat sa bahagi ng software, kung saan nagaganap ang lahat ng aksyon.
Pag-setup ng Bot sa Telegram
Para malaman ng ESP32 kung sino ang pakikinggan, kailangan muna nating likhain ang pagkakakilanlan ng bot sa loob mismo ng Telegram application. Mahalaga ang prosesong ito dahil nagbibigay ito ng dalawang mahahalagang impormasyon: ang token ng bot (isang mahabang hanay ng mga numero at letra) at ang iyong personal na user ID . Kung wala ang dalawang key na ito, hindi maa-authenticate ng device ang sarili nito o matutukoy kung sino ang awtorisadong magbigay dito ng mga utos.
Kung sa anumang punto ay sa tingin mo ay naging magulo ang chat, tandaan na maaari mong burahin ang history anumang oras mula sa kanang menu sa itaas. Ang paggawa nito ay magre-restart sa bot at ibabalik ito sa home button kasama ang mga available na command, na magbibigay-daan sa iyong magsimulang muli.
Paghahanda ng kapaligiran sa pag-unlad
Para gumana ang code, kailangan nating mag-install ng isang tool na magpapadali sa ating buhay: ang UniversalTelegramBot library . Sa halip na magsulat ng daan-daang linya ng code para pangasiwaan ang Telegram API, ginagawa ng library na ito ang halos lahat para sa atin.
Para i-install ito, pumunta lang sa library manager ng Arduino IDE, i-type ang pangalan ng library, at i-click ang install. Siguraduhin din na naka-install ang mga WiFi at WiFiClientSecure library , dahil pinapayagan nito ang ESP32 na kumonekta sa internet at gamitin ang HTTPS protocol para sa ligtas na komunikasyon.
Pagsusuri ng control code
Nagsisimula ang programa sa pamamagitan ng pagtukoy sa iyong mga kredensyal sa WiFi network at mga susi ng bot. Mahalagang palitan mo ang mga halimbawang halaga ng sa iyo. SSID at passwordpati na rin ang token at chat ID. Para sa interactivity, tinutukoy namin ang isang variable na tinatawag na info na naglalaman ng listahan ng mga utos na kikilalanin ng bot, tulad ng /led_on o /sw_state.
Pamamahala ng mensahe at utos
Ang puso ng sistema ay ang tungkuling sumusuri para sa mga bagong mensahe. Ginagamit ng ESP32 ang pamamaraang getUpdates para suriin ang pila ng mensahe mula sa Telegram. Para maiwasan ang sinumang estranghero na kontrolin ang iyong tahanan, ang code ay may kasamang filter na nagve-verify na ang ID ng nagpadala ay eksaktong tumutugma sa iyo. paunang natukoy na CHAT_ID.
Kapag na-validate na ang user, susuriin ng bot ang natanggap na teksto: kung may made-detect ito /led_onNagpapadala ito ng digital signal sa pin 33 para buksan ang ilaw; kung makakatanggap ito ng /led_off, pinapatay ito. Mayroon ding opsyon na /led_togglena lubhang praktikal dahil binabaligtad ang kasalukuyang estado ng LED nang hindi mo na kailangang malaman kung dati itong naka-on o naka-off.
Pagbasa at pagkumpleto ng sensor
Bukod sa pag-isyu ng mga utos, ang bot ay maaari ring magbigay ng impormasyon. Gamit ang utos /sw_stateBinabasa ng ESP32 ang estado ng pin 14. Dahil na-configure natin ang pin bilang INPUT_PULLUPMatutukoy ng device kung napindot ang button o hindi at magpapadala ito sa atin ng text response na nagpapatunay nito.
Habang nagbo-boot, kumokonekta ang device sa Wi-Fi nang naka-lock, ibig sabihin ay wala itong gagawin hangga't hindi pa stable ang koneksyon . Para lalong mapahusay ang seguridad, ginagamit ang root certificate ng Telegram, na tinitiyak na naka-encrypt ang trapiko ng data. Inuulit lang ng main loop ang message check bawat segundo para mapanatiling maliksi at responsive ang system.
Gamit ang sistemang ito, matagumpay naming naisama ang hardware at software upang lumikha ng isang wireless communication bridge. Nag-configure kami ng bot, pinamahalaan ang seguridad gamit ang mga ID at sertipiko, at nagprograma ng mga tugon ng GPIO pin upang makipag-ugnayan sa pisikal na mundo mula sa kahit saan gamit ang koneksyon sa internet.
Mga madalas itanong
Aling library ang kailangan para ikonekta ang ESP32 sa Telegram?
Dapat gamitin ang UniversalTelegramBot library, na nagpapadali sa pakikipag-ugnayan sa Telegram API at nagpapadali sa pagpapadala at pagtanggap ng mga mensahe.
Paano ko masisiguro na ako lang ang makakakontrol sa bot?
Nagpapatupad ang code ng isang filter na naghahambing sa chat ID ng natanggap na mensahe sa isang paunang natukoy na CHAT_ID, na hindi pinapansin ang anumang mga utos na nagmumula sa ibang user.
Kailangan bang gumamit ng HTTPS para makipag-ugnayan sa bot?
Oo, ang Telegram ay nangangailangan ng mga ligtas na koneksyon, kaya WiFiClientSecure ang ginagamit at ang root certificate ng Telegram ay dapat na naka-configure sa ESP32.
Ano ang layunin ng utos na /led_toggle sa code?
Ang utos na ito ay ginagamit upang baligtarin ang kasalukuyang estado ng LED, i-on ito kung ito ay naka-off o i-off ito kung ito ay naka-on.
Bakit ginagamit ang INPUT_PULLUP para sa switch?
Ginagamit ito upang i-activate ang internal resistance ng board, sa gayon ay naiiwasan ang pangangailangang magdagdag ng panlabas na pisikal na resistance sa push button circuit.
Saan ko makukuha ang bot token at user ID?
Ang token ay nakukuha sa pamamagitan ng paggawa ng bot sa pamamagitan ng BotFather sa Telegram, at ang user ID ay makukuha sa pamamagitan ng mga bot na dalubhasa sa pagkuha ng profile identity.



