Nge-Tweet Dengan Java

Kalau kemarin-kemarin saya post beberapa artikel pemrograman yang sepertinya ‘tidak ada gunanya’ seperti algoritma dan sebagainya, kali ini saya ingin menulis sesuatu yang konkritšŸ˜€.

Kali ini saya akan membahas bagaimana kita bisa mengakses Twitter dengan Java. Mari persiapkan dulu. Saya menggunakan library bernama twitter4j yang bisa diunduh di alamat http://twitter4j.org. IDE yang saya gunakan adalah NetBeans, silakan unduh di http://www.netbeans.org.

Selain itu, sebelum Anda bisa mengintegrasikan program Anda ke Twitter, pastikan Anda telah memiliki account di Twitter. Jika sudah semua persiapannya, mari kita mulai membuat programnya.

Pertama, agar aplikasi yang kita buat bisa mengakses Twitter, kita harus memiliki terlebih dahulu Consumer Key, dan Consumer Key Secret dari Twitter. Key ini berguna sebagai autentikasi aplikasi kita nanti agar dapat mengakses Twitter. Untuk mendapatkannya, daftarkan dulu program yang akan dibuat ini dengan membuka alamat http://dev.twitter.com.

Klik link yang no. 2: Register an app. Anda akan dibawa ke sebuah halaman registrasi. Isikan data yang dibutuhkan. Jangan lupa untuk memilih setting bahwa Anda akan membuat desktop application dan memerlukan akses penuh: Read, Write, & Private Message.

Daftarkan aplikasi Anda dengan mengklik Register Application. Anda akan di bawa ke halaman informasi aplikasi Anda. Di halaman tersebut, Anda akan mendapatkan Consumer Key dan Consumer Secret.

Contoh aplikasi di atas saya beri nama TweetFromDesktop, ini hanya contoh saja. Nama aplikasi yang akan Anda buat tentu terserah Anda.

Consumer Key dan Consumer Secret hanya mengautentikasi aplikasi Anda di Twitter. Sedangkan, untuk mengkoneksikan aplikasi Anda dengan suatu account, Anda membutuhkan Access Token dan Access Token Secret yang sifatnya unik untuk setiap user. Untuk account Anda, silakan lihat di navigasi halaman di atas tadi si sebelah kanan, klik menu My Access Token, Anda akan mendapatkannya di sana. Access Token tersebut adalah milik account Anda.

Satu hal yang harus Anda perhatikan, masing-masing key dan token di atas adalah sama pentingnya dengan username dan password Anda. Jaga dengan aman karena jika Consumer Key dan Consumer Key Secret diketahui orang lain, berarti orang lain tersebut akan memiliki autorisasi penuh terhadap aplikasi dan account Anda. Jaga dengan baik.

Kedua, setelah melakukan registrasi, silakan unduh library twitter4j di situs yang saya sebutkan di atas tadi. Saat saya menggunakannya, versinya adalah 2.2.2 yang stable.Ā Paketnya berupa file zip. Setelah selesai mengunduh, ekstrak di suatu tempat di komputer Anda.

Struktur Folder twitter4j

Oke, ketiga, langkah terakhir, kita akan menyelesaikan aplikasi kita di NetBeans. Buka IDE Anda, buat project baru. Kali ini saya tidak akan membuat aplikasi dengan Graphical User Interface, karena saya hanya ingin menjelaskan konsep. Anda nantinya bisa mengembangkannya sesuai dengan keinginan Anda.

Setelah selesai membuat project, Anda harus menambahkan library twitter4j ke dalam project Anda. Caranya, lihat panel Projects (biasanya di sebelah kiri), klik kanan di node Libraries yang ada di bawah project Anda (nama project saya adalah TweetWithJava), lalu pilih Add JAR/Folder…

Masuk ke directory tempat Anda mengekstrak file twitter4j tadi, kemudian cari folder lib, ada 5 buah JAR file di situ. Blok semuanya, klik Open.

Pastikan library twitter4j Anda telah ter-import. Caranya klik tanda [+] di node Libraries, Anda seharusnya bisa melihat daftar library twitter4j Anda yang telah di-import.

Selesai, mari melangkah ke coding.Ā Saya akan contohkan, bagaimana menge-post status Twitter Anda.

public static void main(String[] args) {
    String consumerKey = "consumerkeyAndaisidisini";
    String consumerSecret = "consumersecretkeyAndaisidisini";
    String accessToken= "accesstokenuntukaccountAndasilakanisidisini";
    String accessTokenSecret = "accesstokensecretAndasilakanisidisini";

    ConfigurationBuilder cb = new ConfigurationBuilder();

    cb.setDebugEnabled(true)
      .setOAuthConsumerKey(consumerKey)
      .setOAuthConsumerSecret(consumerSecret)
      .setOAuthAccessToken(accessToken)
      .setOAuthAccessTokenSecret(accessTokenSecret);

    Twitter myTwitter = new TwitterFactory(cb.build()).getInstance();

    try {
        Status myStatus = myTwitter.updateStatus("Hai, ini menggunakan library twitter4j (http://twitter4j.org)");
        System.out.println("Lihat account Twitter Anda sekarang, status telah berhasil di-post.");
    }
    catch (Exception ex) {
        System.out.println("Gagal melakukan aksi di Twitter. Pesan kesalahan:\n" + ex.getMessage());
    }
}

Ini adalah contoh sederhana saja. Dengan menggunakan library ini, kita memiliki object bernama ‘Twitter’ yang dapat digunakan untuk mengakses Twitter. Kalau Anda melihat statement ConfigureBuilder sebelumnya, itu adalah cara untuk mengautentikasi aplikasi Anda dengan Key dan Token yang Anda miliki. Tanpa itu, Anda tidak bisa mengautentikasi aplikasi Anda dan status tidak bisa di-post. Ada 3 cara yang disediakan oleh twitter4j untuk mengkonfigurasi Key dan Token untuk aplikasi Anda, tidak harus dari dalam program seperti di atas, tapi juga bisa dengan cara lain. Silakan baca dokumentasinya di sini.

Ini pengantarnya, banyak yang bisa Anda lakukan dengan twitter4j ini. Di paket yang Anda download tadi, Anda bisa menemukan contoh banyak sekali di dalam directory berikut

twitter4j-2.2.2\twitter4j-examples\src\main\java\twitter4j\examples

Demikian tulisan ini. Ke depannya saya berencana menulis beberapa hal lain lagi tentang library ini. Silakan berkomentar untuk saran, perbaikan, ataupun pertanyaan.

Semoga bermanfaat.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s