săptămâna trecută am intervievat Andy Stanford-Clark pe integrarea sa inteligentă de acasă cu Twitter și acum avem un fișier publicat de studentul de informatică Justin Wickett, oferindu-i scenariul open source pentru a face același lucru. Citiți mai departe pentru codul care vă comunică casa prin intermediul mesajului text SMS către mobilul dvs., plus toate celelalte avantaje pe care le oferă Twitter.

„A trebuit să scriu doar câteva rânduri de cod pentru a strânge toate aceste tehnologii împreună, astfel încât să funcționeze între ele. Următorul cod este o implementare foarte aspră pe care am folosit -o inițial pentru a testa fezabilitatea acestei idei. Am de gând să încorporez suport Bluetooth, precum și notificări de confirmare odată ce mă întorc la Duke University. Cel mai bine acum, folosesc telefonul meu mobil pentru a trimite actualizări publice Twitter care sunt difuzate tuturor prietenilor mei. Această metodă nu este sigură și îi spamează adepții dvs. cu actualizări despre starea rețelei dvs. electrice. Vă recomand să creați un cont privat în scopuri de testare sau mai bine utilizarea funcționalității directe de mesagerie Twitter.

În cele din urmă, acest cod depinde de motorul de căutare Summize.com, care analizează și indexează fiecare mesaj public trimis pe Twitter. Nu am putut sondat Twitter.com din cauza problemelor de limitare a ratei. Sondajele mele de cod Sumpizează API -ul REST (care este pur și simplu o adresă URL Web) în fiecare secundă verificând pentru a vedea dacă a existat o actualizare. Această metodă de votare nu este eficientă, iar impozitele Summizează serverele. Vă recomand să vă abonați și să analizați feed -ul sub jabber al pub -ului Twitter (vezi). Mai jos este codul meu Python rapid și murdar, care poate fi ușor portat în alte limbi:

#/usr/bin/python
#Copyright 2008 Justin Wickett
#Acest program este un software total gratuit: îl puteți redistribui și/sau modifica
#It în condițiile licenței publice generale GNU, publicată de
#Fundația software total gratuită, fie versiunea 3 a licenței, fie
#(la opțiunea dvs.) Orice versiune ulterioară.
#Acest program este distribuit în speranța că va fi util,
#Dar fără nicio garanție; fără nici măcar garanția implicită a
#Merchantabilitate sau fitness pentru un anumit scop. Vezi
#GNU Licență publică generală pentru mult mai multe detalii.
#Ar fi trebuit să primiți o copie a licenței publice generale GNU
#Ang cu acest program. Dacă nu, vezi <>.
Importați FeedParser, OS, Timp #Biblioteca „FeedParser” poate fi instalată din
#Todo: Înlocuiți numele de utilizator, precum și adresa Insteon cu valorile adecvate
#Todo: De asemenea, asigurați -vă că calea este setată corect în comanda sistemului pe calea ICMD pe mașina locală
LastTweet = 0 #folosit pentru a urmări ultimul tweet primit pentru a face interogările Summize mai puțin costisitoare
userName = „xxxxxxxx” #twitter nume de utilizator care trimite comenzile pentru a controla rețeaua electrică
InsteonAddress = “xx.xx.xx” #insteon Adresa dispozitivului pe care doriți să îl activați și dezactivați

în timp ce (1):
feedUrl = “”+nume de utilizator+”& fromy_id =”+str (lasttweet) #Polling Summize
feed = feedParser.parse (FeedUrl)
Dacă Len (feed [„intrări”])> 0 și feed [„intrări”] [0] .link.split („/”) [-1]> lasttweet:
Dacă CMP (Feed [„Intrări”] [0] [„Titlu”], „Lumini de dormitor ON”) == 0: #Check pentru comanda „ON”
OS.System („ICMD”+INSTONADDRESS+”pe 255”) #Îndepărtați luminile controlate de comutatorul meu
Dacă CMP (Feed [„Intrări”] [0] [„Titlu”], „Lumini de dormitor Off”) == 0: #Check pentru comanda „Off”
OS.System („ICMD”+INSTONADDRESS+”OFF 255”) #Turn The Lights controlate de comutatorul meu oprit
LastTweet = feed [„intrări”] [0] .link.split („/”) [-1] #save ultimul tweet, astfel încât să nu pășim peste noi înșine
Time.Sleep (1) #Sleep One Second, și executați din nou codul

Site -ul lui Justin Wickett: Urmați casa automată pe Twitter

Imparte asta:
Facebook
Stare de nervozitate
Reddit
LinkedIn
Pinterest
E-mail
Mai mult

WhatsApp
Imprimare

Skype
Tumblr

Telegramă
Buzunar