Skip to content

Instantly share code, notes, and snippets.

@atomize
Created March 1, 2012 08:13
Show Gist options
  • Save atomize/1948266 to your computer and use it in GitHub Desktop.
Save atomize/1948266 to your computer and use it in GitHub Desktop.
Processing and Twitter - A little animated banner searching for a certain term
//berti thanks Jungho Yeom 2010-11-06
Twitter twitter;
java.util.List statuses = null;
PImage a;
PFont fontA, fontB;
String accessToken = "XXXXXXXXXXXXXXXXXX";
String accessTokenSecrect = "XXXXXXXXXXXXXXXXXX";
String consumerKey = "XXXXXXXXXXXXXXXXXX";
String consumerSecret = "XXXXXXXXXXXXXXXXXX";
String updateMessage = "d @github o0o0ops i dm'ed you";
float fontsize = 24;
void setup(){
background(0, 0, 0);
size(1048, 90, P3D);
smooth();
frameRate(25);
twitter = new TwitterFactory().getOAuthAuthorizedInstance(consumerKey,consumerSecret, new AccessToken(accessToken,accessTokenSecrect));
fontA = createFont("GillSans-Bold-32.vlw", fontsize);
fontB = createFont("GillSans-LightItalic-100", fontsize+60);
textFont(fontA);
}
void draw(){
background(0, 0, 0);
Query();
delay(4500);
loop();
}
void Query() {
try {
Query query = new Query("#ff");
query.setRpp(8);
QueryResult result = twitter.search(query);
ArrayList tweets = (ArrayList) result.getTweets();
int ytext = 15 ;
for (int p = 1; p < tweets.size(); p++) {
ytext += p;
}
for (int i = 0; i < tweets.size(); i++) {
Tweet t = (Tweet) tweets.get(i);
String user = t.getFromUser();
String msg = t.getText();
// String lines = "@"+ user +"\n "+ msg + "\n";
String lines = ""+ msg + "\n";
Date d = t.getCreatedAt();
fill(random(22, 255), random(12, 222), random(34, 214), random(200, 235));
int h = (i*2);
textMode(SCREEN);
textAlign(LEFT);
background(0,0,0,50);
textFont(fontA);
text(lines, 10, h+(i*2), 1000, ytext+(120*i) );
redraw();
textFont(fontB);
fill(random(22, 255), random(45, 234), random(34, 243), random(77, 107));
text("@"+ user+"", 37, h-(i+2*2), 1000, ytext+(120*i) );
loop();
};
}
catch (TwitterException te) {
println("Couldn't connect: " + te);
};
};
void callMyTweet() {
try
{
statuses = twitter.getUserTimeline();
}
catch (TwitterException e)
{
println(e.getStatusCode());
}
for (int i = 0; i<statuses.size();i++){
Status status = (Status)statuses.get(i);
println("Friend name: "+status.getUser().getName() +" My tweet: "+status.getText());
};
}
/*
void callHomeTimeline() { //call latest 20 tweets posted from you and your firneds
try
{
statuses = twitter.getHomeTimeline();
}
catch (TwitterException e)
{
println(e.getStatusCode());
}
for (int i = 0; i<statuses.size();i++){
Status status = (Status)statuses.get(i);
text("@"+status.getUser().getScreenName() +": "+status.getText(), 60, (60+i)*2);
}
}
void updateMyTweet(String mes) { //update your tweet
try
{
Status upMes = twitter.updateStatus(mes);
}
catch (TwitterException e)
{
println(e.getStatusCode());
}
}
void mousePressed() {
redraw();
Query();
delay(100);
redraw();
}
*/
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment