Automatizacion del hogar con twitter

es posible accionar cualquier cosa usando twitter ,por ejemplo es este post hablamos de una cafetera


 En efecto es posible escribir  un ‘tuit’ y accionar cualquier dispositivo eléctrico por ejemplo una cafetera  y  ademas el sistema para conseguirlo es bastante sencillo

En  el caso del cafe , sólo necesita  una cafetera eléctrica , un interruptor electronico( basicamente un relé sólido ) , un ordenador  , una placa Arduino ,  un script en python  y convertir su cuenta de Twitter (como desarrollador) en una cuenta que accione lo que desee.

En el ejemplo qeu nos proponen desde Instructables,  vemos como es posible hacer que su cafetera  se encienda cuando esté en la cama o en el autobús solamente escribiendo un ‘tuit’. Además de ahorrar tiempo, podrá presumir de que su cuenta del pájaro azul es más inteligente que las demás.

Por supuesto esta idea es extrapolable a cualquier otro sistema que quiera acccionar o liberar de forma remota, como  puede ser un  calentador eléctrico,la calefacción de casas,o simplemente  una  lámpara para simular actividad en su vivienda.

Veamos un vídeo de la cafetera accionada por twitter:

 
Como vemos Tweet-a-pot es una sencilla aplicación  para el control de dispositivos a distancia que usa muy  poco de código y también muy poco  hardware, para tener su propia cafetera accionada  por twitter.

Para hacer su propio Tweet-a-pot  necesitará la siguiente:

  • 1 interrruptor electronico :esto es básicamente un relé que se utiliza para interactuar con el voltaje de corriente alterna mediante una pequeña señal de control de 5VDC
  • 1 placa Arduino (cualquiera sirve)
  • 1 Equipo que ejecute el IDE de Arduino y Python
  • 1 Cafetera goteo

 

Lo primero que necesitará será  configurar su ordenador como receptor.

Para interconectar entre el Arduino y Twitter, vamos a utilizar pyton. Hay una biblioteca que ya está elaborada, que nos permite utilizar la API de Twitter. Se llama pitón-twitter .

Después de haber instalado Python , instale la biblioteca de Python-twitter y todas sus dependencias. Si se encuentra con problemas consultela documentación en el sitio web de python-twitter.

A continuación, instalar el IDE de Arduino para que pueda programar el Arduino y comunicarse con él a través del puerto serie.

Una vez que ambos se configuran y  funcionan , es tiempo para ir a tomar sus credenciales de twitter.com

Interactuar con Twitter solía ser fácil, todo lo que tenía que hacer era poner su nombre y contraseña en su código  y ya funcionaba.  Ahora Twitter se lo ha tomado más en serio mediante OAuth, y  debiendo registrar su aplicación con twitter y obtener una clave de API.

En primer lugar, cree  una cuenta de twitter para este proyecto que edeberia estar separado de su cuenta principal de Twitter. En el ejemplo es , driptwit.

Luego, vaya a dev.twitter.com y registre su aplicación, esto le permitirá tomar 4 piezas importantes de información:

-Access Token
-Access Token Secret
-Consumer Key
-Consumer Secret

Se necesitarán estos tokens en el código python más tarde para interactuar con la API de Twitter. Una vez que tenga los 4 códigos, usted ya puede  continuar.

En primer lugar vamos a repasar nuestro código Python. El código python básicamente utiliza la biblioteca de python -twitter para pedir a Twitter los estados de usuario ” x ” , despues toma el último estado y busca el término ” #driptwit ” .
Si se encuentra ” #driptwit ”  envía el valor ASCII del 1 al puerto serie (  para Arduino ) , y  si se encuentra “#driptwitstop” , envía un valor ASCII de 0 .
Por último se realiza un bucle que comprueba la cuenta de twitter cada 15 segundos en busca de cambios .

Como se puede ver , también en el código  es donde se introducen las claves que obtuvo de Twitter en el último paso .

Aquí está el código real :

#******************************************#
# Tweet-a-Pot by Gregg Horton 2011 #
# Please email changes or #
# updates to [email protected] #
# *****************************************#

##Import Libraries

import twitter
import serial
import time

##authenticate yourself with twitter
api = twitter.Api(consumer_key=’consumerkeyhere’, consumer_secret=’consumersecrethere’, access_token_key=’accesskey’, access_token_secret=’accesssecret’)

##set to your serial port
ser = serial.Serial(‘/dev/ttyUSB0’, 19200)

## check serial port
def checkokay():
ser.flushInput()
time.sleep(3)
line=ser.readline()
time.sleep(3)

if line == ‘ ‘:
line=ser.readline()
print ‘here’
## Welcome message
print ‘Welcome To Drip Twit!’
print ‘Making Coffee..’
def driptwit():
status = [ ]
x = 0

status = api.GetUserTimeline(‘X’) ##grab latest statuses

checkIt = [s.text for s in status] ##put status in an array

drip = checkIt[0].split() ##split first tweet into words

## check for match and write to serial if match
if drip[0] == ‘#driptwit’:
print ‘Tweet Recieved, Making Coffee’
ser.write(‘1’)
elif drip[0] == ‘#driptwitstop’: ##break if done
ser.write(‘0’)
print ‘stopped, awaiting instructions.’
else:
ser.write(‘0’)
print ‘Awaiting Tweet’

while 1:
driptwit() ## call driptwit function
time.sleep(15) ## sleep for 15 seconds to avoid rate limiting

CODIGO ARDUINO

La única conexión entre el código python y Arduino es un valor único del puerto  serie. Python envía esto como un valor ASCII , por lo que Arduino interpreta esto como un número de bit , en nuestro caso 1 = 49 .

 

Aquí está el código:

/*
Tweet-a-pot Gregg Horton 2011
Please email changes to [email protected] so i
can improve this code!

Enables blinking/relay control over twitter, using python code
Based off of Blink and Serial demo code

*/

int relayPin = 13; // LED connected to digital pin 13
int incomingByte = 0; //declare incoming byte
// The setup() method runs once, when the sketch starts

void setup() {
// initialize the digital pin as an output:
pinMode(relayPin, OUTPUT);
Serial.begin(19200); // set up Serial library at 19200 bps

Serial.println(“Arduino is ready!”);
}

// the loop() method runs over and over again,
// as long as the Arduino has power

void loop()
{
if (Serial.available() > 0) {
// read the incoming byte:
incomingByte = Serial.read();
Serial.println(incomingByte);
if (incomingByte == 49){
digitalWrite(relayPin, HIGH);
} else {
digitalWrite(relayPin, LOW);
}

// say what you got:
Serial.print(“I received: “);
Serial.println(incomingByte, DEC);
}
}

El hardware requerido es bastante simple, ya que el control de voltaje de CA está siendo manejado por el interruptor electrónico.

El interruptor  electronico ( llamado tambien relé sólido) le permite conectando sólo 2 cables, uno a tierra y otro para la señal de control de Arduino, poder encender y apagar el relé  y como se ve en el código, todo lo que necesita es una simple señal de control  baja / alta.

Conecte el Arduino al ordenador y asegúrese de que el puerto serie está configurado,  y conecte al interruptor electrónico  el terminal 13 y tierra de Arduino

A continuación conecte la cafetera al interruptor  electrónico y conecte el interruptor electrónico a una toma de corriente normal. Lógicamente la  cafetera tiene que tener el café y el agua en ella,  antes de empezar.

Si el mensaje contiene la palabra #driptwit el café comenzará a hacerse ,pero  si recibe #driptwitstop,se detendrá.

A continuación, ya sólo le queda disfrutar de su taza de café bien caliente accionada por un tweet.

Esta  idea  tambien  puede emplearse   en  cualquier otro sistema que quiera acccionar o liberar de forma remota, como  puede ser un  calentador eléctrico, la calefacción de casa, un control de acceso ,la puerta  electrica del grage   o como deciamos al principio simplemente  una  lámpara para simular actividad en su vivienda.

 

 

Fuente  aqui,

Nueva servicio para automatizacion de tareas

Como automatizar tareas por medio de un nuevo servicio gratuito


Hay una serie de tareas en la era de las redes sociales en la que vivimos ahora mismo que siempre solemos hacer repetidamente, cada día, cada semana o cada cierto tiempo. ¿Y si estas tareas pudiesen hacerse solas? Ya hay algunas herramientas para hacerlo, o como mínimo algunas soluciones para avisarnos a tiempo de hacer manualmente esta tarea. Ifttt pretende convertirse en la herramienta por excelencia para automatizar esas tareas.

 

iftt

 

Ifttt es la abreviatura de If This Then That, que a su vez explica perfectamente el funcionamiento de las tareas automáticas que puede ejecutar. Básicamente hay que configurar una causa (que puede ser un evento en los servicios compatibles) para que un efecto en forma de tarea se ejecute.

Hay muchísimos  posibles desencadenantes .

Un primer ejemplo  lo  constituyen  muchos servicios que tienen que ver con Novedades  o  Temas destacados:


Amazon Alexa  BloomSky   Cisco Spark   Comcast Labs Evernote GE Appliances Refrigerator

Honeywell Total Connect Comfort Is It Christmas? Ivideon Komfy Switch with Camera LaMetric

Medium Ooma RainMachine Ring Video Doorbell Seagate Personal Cloud SkyBell HD

TeamSnap

 

Asimismo  también pueden ser desencadenantes  la mayoría de plataformas  de blogging ,lo cual puede ser muy cierto para por ejemplo para realizar determinadas labores de mantenimiento ante determinadas circunstancias, como por ejemplo cada vez que se publica un post publicarlo también en nuestras redes sociales favoritas o por ejemplo  hacer un backup en google drive:

 

Blogger Medium  Tumblr Weebly WordPress

 

Otros servicios  que pueden desencadenar acciones ,son aqeulos servicios relacionados con los negocios en los que caben destacar las RRSS para Negocios como pueden ser Linkedin o Yammer :

 

Box Campfire DocSend Envoy Gumroad Harvest

LinkedIn Office 365 Calendar Office 365 Contacts Office 365 Mail OneDrive for Business Quip Salesforce Slack Square Stocks Yammer

 

Asimismo pueden ser contemplados  portales de ventas on-line , como pueden ser los siguientes:

 

AppZapp Best Buy  Chain  Craigslist eBay Etsy

Fiverr  Home Depot Qapital Semantics3 ShopYourWay  Slice

Stripe TrackIf

 

Tambien son utiles servicios relacionados  con el estilo de  vida:

Adafruit

Date & Time IFTTT Instawell Is It Christmas?

popSLATE Space Surfline U.S. Independence Day Weather

 

Servicios relacionados con el coche conectado :

Automatic  Dash Mojio Zubie

 

Servicios con contenidos musicales:

Deezer Last.fm MixRadio SoundCloud Spotify

 

Servicios   de Noticias  y deportes

 

BuzzFeed Digg Entertainment Weekly Epicurious ESPN

Android Battery Android Device Android Location Android Phone Call Android Photos Android SMS Android Wear IF Notifications iOS Contacts iOS Location iOS Photos iOS Reading List iOS Reminders Lifelog

Puede  ser    util igualmente servicis  realcionados  con la seguridad  y monitorización:

 

 

El abanico como vemos es  casi infinito en cuanto a posibilidades para  crear nuestras propias tareas automatizadas

La mejor forma de entender y ver con detalle Ifttt es viendo paso a paso cómo se forma una de sus tareas automatizadas.

Comencemos,

 

Una vez registrados en el sitio nos aparezera  un asisstente qeu nos guiara por todo el proceso:

this

A medida que vayamos avanzando veréis como todo gira alrededor de la frase If This Then That, considerando This como el primer paso a dar (la creación de la causa) yThen como la creación del efecto, que sería la tarea a realizar. En la imagen superior podéis ver como el primer paso consiste en hacer click en This para seleccionar la causa. Una vez seleccionado, se nos pide que seleccionemos alguno de los256 servicios compatibles mencionados  al principio del posot:

Cada uno de estos servicios tiene uno o más eventos que pueden configurarse como una causa. Desde luego aquí ha habido trabajo, porque la cantidad de causas con este abanico de servicios no es para nada pequeña. Delicious, Facebook, RSS, Twitter, mensajes de texto, Vimeo

“Alguien publica un mensaje”, “Alguien publica un mensaje”, “Un contacto determinado publica un mensaje”… todo son eventos de Twitter que podemos seleccionar como un detonante de nuestra tarea automática. Vamos a escoger que dicha causa en nuestro caso sea que uno de nuestros amigos escriba un mensaje, sea cual sea. Tras seleccionar la opción, escogemos qué amigo de nuestra lista de followings en Twitter queremos usar y queda finalmente la causa definida en nuestra “frase” principal, quedando por determinar el That o la tarea en sí

Repetimos lo que acabamos de hacer seleccionando uno de los servicios y una de las tareas que son capaces de hacer, y ya tenemos lista nuestra tarea. En nuestro caso hemos seleccionado publicar un mensaje en Facebook como consecuencia, de modo que globalmente tenemos que cuanto uno de nuestros amigos publique algo en Twitter, entonces que automáticamente ese mensaje se publique en nuestro perfil de Facebook, a modo de difusión:

that

Ahora simplemente tenemos que añadir una descripción a la tarea si así lo queremos y crear la tarea para que ésta empiece a ejecutarse sin nuestra interacción y nos podamos olvidar de ella.

Las posibilidades son muy grandes debido a la gran cantidad de servicios que son compatibles con ifttt: eventos de varias redes sociales, de protocolos RSS o incluso de lo que pueda pasar con una empresa en bolsa o los cambios de temperatura. He aquí el servicio ideal para mandarle un mensaje al Facebook de su hijo si la temperatura baja de 10 grados: “niño, tápate que hace frío“.

El servicio es completamente gratuito, y cada usuario registrado puede crear un máximo de veinte tareas.