Personlig assistent med Telegram & Arduino. (8 / 9 steg)
Steg 8: Kontrollera lampan
Till denna inställning användes den seriella porten för att gränssnittet bot koden och Arduino. Koden kommer att skicka tecknet "Y" till Arduino för att aktivera relä modul och "N" för att stänga av modulen reläet stänger av ljuset.
När Arduino är korrekt programmerad och förband det är dags att träna koden för bot.
#! / usr/bin/python
importera telepot, tid, följetong
ser = följetong. Serial ('/ dev/ttyACM0', 9600)
def handle(msg):
Användarnamn = msg ['från'] ['förnamn'] + "" + msg ['från'] ['efternamn']
content_type, chat_type, chat_id = telepot.glance(msg)
om (content_type == "text"):
kommandot = msg [text]
skriva ut ("fick kommandot: %s % kommando)
om '/ Hej' i kommandot:
bot.sendMessage (chat_id, "Hello"+ användarnamn +", hur gör du idag?")
om ' / lamp_on' i-kommandot:
ser.write(b'Y')
bot.sendMessage (chat_id, "Lampa på")
om ' / lamp_off' i-kommandot:
ser.write(b'N')
bot.sendMessage (chat_id, "lampa OFF")
# Skapa en bot använda token från BotFather
bot = telepot. Bot('16843XXXX:AAGGq99MLWOknqCx66V5s2XXXXXXXXXXXXXX')
# Lägga till handtag funktion att kallas varje mottaget meddelande.
bot.message_loop(handle)
# Vänta för nya meddelanden
medan 1:
Time.Sleep(20)
Seriell modulen måste importeras för att kommunicera python koden med Arduino serieporten. Det är viktigt att notera att raden #3 är specifika för den port som Arduino är ansluten och denna linje måste ändras därför att det är nödvändigt.
Spara kod och det kommer att vara redo att testas!