Authors: William Gaul, Michael Terada
Original Program By: Baohuy Ung
Version: 0.5
Twitterator is an attempt to allow for automated, remote collection of Twitter data to help the Hawaii Computer-Human Interaction (HICHI) group with their research. The project is designed to be self-contained, portable, and extensible. When launched, it spawns a web server, H2 database server, and Twitter stream, and handles the connections between these components.
- authentication: classes for user authentication, primarily OAuth
- db: H2 database interface and info classes
- export: export modules for representing data in a variety of formats
- twitterFeed: custom classes for handling the Twitter bridge (slated to be deprecated)
- twitterator: core application classes that handle the web server, logging etc.
- webapp: HTML, CSS, and JavaScript resources
View the SQL Statements to look at the structure of various tables in stored in the database.
In order to run this product you will need to have a valid Twitter account and register a new Twitter application to this account. Authentication is a two-step process:
- Registering the App: requires a Consumer Key and Consumer Secret
- Registering the User: requires an Access Token and Secret Token
Registering a user allows the app to make requests on behalf of the user. In theory, this also allows multiple streaming connections.
-
You must have a valid
config.propertiesfile located in the src directory with the following entries:- ATP: Public Twitter account access token
- ATS: Secret Twitter account access token
- AKP: Public Twitter application key
- AKS: Secret Twitter application key
- SUPERUser: Default login username
- SUPERPass: Default login password
You may also have ATPTest, ATSTest, AKPTest, and AKSTest entries which correspond to a test Twitter account/application. That way you can continue to develop and test the product while also running a production server.
-
Change the
DEBUGvariable inTwitterator.javato either true (test mode) or false (production mode) -
Build the project as a JAR
-
You can now run the JAR from the command line and users should be able to connect via IP:Port to the server
Twitterator is built with Java 7.0 in NetBeans, and is NOT compatible with Java 6.0. All dependencies are available in the LIBS folder.
- Thomas Mueller: H2 Database Engine
- Eclipse Foundation: Jetty Web Server
- Yusuke Yamamoto: Twitter4J Java-Twitter API
- Suhail Dawood: CSS3 Slick Login Form
- Alex Ehlke: Tag-it Editing Widget
- Haran: Base website design