Étape 3: traitement
Vous aurez besoin d’installer la bibliothèque twitter4j donc il peut être utilisé par la transformation.
Téléchargez-le ici : http://twitter4j.org/en/index.html#download
Installez-le ici (ou équivalent): C:\Program Files\processing-1.5.1\modes\java\libraries
Vous avez terminé.
Accédez-y ici : traitement > Esquisse > Bibliothèque d’importation... > twitter4j
Et quand vous le faites, il va ajouter ceci vers le haut de votre code :
Import twitter4j.conf.* ;
Import twitter4j.internal.async.* ;
Import twitter4j.internal.org.json.* ;
Import twitter4j.internal.logging.* ;
Import twitter4j.http.* ;
Import twitter4j.api.* ;
Import twitter4j.util.* ;
Import twitter4j.internal.http.* ;
Import twitter4j.* ;
Soit dit en passant, vous allez également ajouter Serial i/o de l’esquisse > Bibliothèque, mais ce n’est pas important maintenant.
Alors pourquoi avez-vous besoin twitter4j ? La réponse courte est qu’il vous fournit des fonctionnalités simples si vous n’avez pas à écrire tout un tas de code fou chaque fois que vous voulez accéder à Twitter. Nous utilisons twitter4j parce que c’est génial et ça rend notre travail plus facile.
// #####################################################################
// #####################################################################
simpleTweet_00_p
/*
croquis de traitement simpleTweet_00 (à utiliser avec
simpleTweet_00 arduino croquis) par Juin2011
L’Arduino est relié à un circuit avec un capteur qui
déclenche le code : Serial.write(n) ; où n = 1 ou 2.
L’esquisse de traitement écoute pour ce message, puis
utilise la bibliothèque twitter4j pour se connecter à Twitter
Via OAuth et poste un tweet.
compareMsg() est ajouté dans le cas où vous voulez comparer
les tweets actuels et précédents pour empêcher des retweets.
Ce code de traitement requiert la bibliothèque twitter4j
et vos infos app enregistrés de dev.twitter.com
En savoir plus sur l’arduino, traitement, twitter4j,
OAuth et inscription de votre application avec Twitter...
Visitez <
Visitez < http://www.twitter.com/msg_box>
Ce code a été rendu possible et améliorée sur avec
aider des gens à travers l’internet. Merci.
Shoutouts spécial pour des rôdeurs utiles à twitter4j,
Arduino, traitement et les blogueurs dans le monde, et
à la crowdsource adafruit & ladydada.
Et surtout, à ma charmante épouse, sans
dont l’un, rien de tout cela aurait été possible.
Ne soyez pas une bite.
*/
Import processing.serial.* ;
Import twitter4j.conf.* ;
Import twitter4j.internal.async.* ;
Import twitter4j.internal.org.json.* ;
Import twitter4j.internal.logging.* ;
Import twitter4j.http.* ;
Import twitter4j.api.* ;
Import twitter4j.util.* ;
Import twitter4j.internal.http.* ;
Import twitter4j.* ;
public static String OAuthConsumerKey = « Votre clé de consommateur » ;
public static String OAuthConsumerSecret = « Votre consommation SECRET » ;
public static String AccessToken = « Votre jeton d’accès » ;
public static String AccessTokenSecret = « YOUR ACCESS TOKEN SECRET » ;
Arduino Serial ;
Twitter twitter = new TwitterFactory().getInstance() ;
void setup() {}
taille (125, 125) ;
frameRate(10) ;
Background(0) ;
println(Serial.List()) ;
String arduinoPort = Serial.list() [0] ;
Arduino = nouvelle série (ce, arduinoPort, 9600) ;
loginTwitter() ;
}
void loginTwitter() {}
twitter.setOAuthConsumer (OAuthConsumerKey, OAuthConsumerSecret) ;
AccessToken accessToken = loadAccessToken() ;
twitter.setOAuthAccessToken(accessToken) ;
}
private static AccessToken loadAccessToken() {}
retour de nouveau AccessToken (AccessToken, AccessTokenSecret) ;
}
{} void draw()
Background(0) ;
texte ("simpleTweet_00", 18, 45) ;
texte ("30, 70) ;
listenToArduino() ;
}
void listenToArduino() {}
String msgOut = "" ;
int arduinoMsg = 0 ;
Si (arduino.available() > = 1) {}
arduinoMsg = arduino.read() ;
Si (arduinoMsg == 1) {}
msgOut = "ouvert la porte de" + hour()+":"+minute()+":"+second() ;
}
Si (arduinoMsg == 2) {}
msgOut = "porte fermée" + hour()+":"+minute()+":"+second() ;
}
compareMsg(msgOut) ; Cette étape est facultative
postMsg(msgOut) ;
}
}
void postMsg(String s) {}
try {}
Statut = twitter.updateStatus(s) ;
println ("nouveau tweet--: {" + status.getText() + "}:--") ;
}
{} catch (TwitterException e)
println ("Status Error:" + e + «; » statusCode: "+ e.getStatusCode()) ;
}
}
void compareMsg(String s) {}
comparer le nouveau msg contre dernier tweet pour éviter les reTweets
statuts de java.util.List = null ;
String prevMsg = "" ;
String newMsg = s ;
try {}
statuts = twitter.getUserTimeline() ;
}
{} catch (TwitterException e)
println ("erreur de chronologie:" e + «; » statusCode: "+ e.getStatusCode()) ;
}
Statut = (Status)statuses.get(0) ;
prevMsg = status.getText() ;
String [] p = splitTokens(prevMsg) ;
String [] n = splitTokens(newMsg) ;
println("("+p[0]+") ->"+ n[0]) ; débogage
Si (p[0].equals(n[0]) == false) {}
postMsg(newMsg) ;
}
println(s) ; débogage
}