Aplikasi Chatting Berbasis Java dan Jabber/XMPP


Hampir seluruh manusia di dunia yang mengenal dunia teknologi informasi, pernah mendengar atau bahkan pernah menggunakan aplikasi chatting seperti Yahoo!Messenger, GoogleTalk, MSN, dan mIRC. Semua itu merupakan aplikasi yang digunakan untuk berkomunikasi dengan teman-teman yang terhubung melalui internet.

Saya akan memberikan sedikit contoh cara membuat aplikasi chatting sederhana menggunakan Java dengan memanfaatkan protokol yang sudah tidak asing lagi yaitu Jabber/XMPP. Library yang akan dipakai adalah Smack API, yang merupakan open source library untuk membuat aplikasi chatting berbasis XMPP.

Sebelum teman-teman mulai membuat aplikasi chatting sederhana berbasis Java ini, tentunya dibutuhkan server Jabber/XMPP, dan saya menggunakan Openfire, yang juga bersifat open source. Jadi jika aplikasi tersebut belum ter-install di komputer, install-lah terlebih dahulu. Kalau sudah ter-install dengan baik, kemudian jalankan Openfire (seperti gambar di bawah ini).

Kalau server Jabber/XMPP (Openfire) sudah berjalan, coba lakukan tes terlebih dahulu apakah server yang sudah ter-install bisa berjalan dengan baik. Tes ini bisa menggunakan aplikasi client yang ada, saya mencoba dengan Pidgin, dengan konfigurasi seperti gambar di bawah ini.

Kalau teman-teman bisa login dengan sukses menggunakan aplikasi client (Pidgin), berarti server yang ter-install sudah berjalan dengan baik.

Langkah berikutnya adalah membuat aplikasi berbasis Java. Teman-teman bisa menggunakan berbagai IDE (baca: editor) yang bisa digunakan untuk kompilasi kode Java, sebagai contoh Eclipse dan Netbeans. Untuk mempelajari lebih lanjut mengenai kode program Java untuk membuat aplikasi chatting, berikut saya berikan program kecil yang berfungsi untuk mengirimkan pesan ke salah satu user Jabber yang sudah terdaftar di server:

/**
* Filename: SendJabberMessage.java
* @author secangkirkopipanas
*/
package jabber;
import org.jivesoftware.smack.Chat;
import org.jivesoftware.smack.ChatManager;
import org.jivesoftware.smack.ConnectionConfiguration;
import org.jivesoftware.smack.MessageListener;
import org.jivesoftware.smack.XMPPConnection;
import org.jivesoftware.smack.XMPPException;
import org.jivesoftware.smack.packet.Message;
public class SendJabberMessage {
public static void main(String[] args) {
try {
// Create a connection to the localhost server on a specific port (default is 5222)
ConnectionConfiguration config = new ConnectionConfiguration("127.0.0.1", 5222);
XMPPConnection conn = new XMPPConnection(config);
conn.connect();
conn.login("secangkirkopipanas", "password");
ChatManager chatmanager = conn.getChatManager();
Chat newChat = chatmanager.createChat("secangkirkopipanas@localhost", new MessageListener() {
public void processMessage(Chat chat, Message message) {
System.out.println("Received message: " + message);
}
});
newChat.sendMessage("Hello World!");
} catch (XMPPException xe) {
xe.printStackTrace();
}
}
}

Setelah Anda menuliskan kode program di atas, sekarang adalah saatnya kompilasi. Setelah selesai kompilasi, jalankan program tersebut. Jangan lupa untuk menjalankan aplikasi client (Pidgin) menggunakan user yang berbeda untuk melihat hasilnya. Berikut hasil yang diperoleh:

Tidak sesulit yang dibayangkan, bukan? Setelah berhasil, teman-teman bisa membuat aplikasi chatting serupa dengan adanya modifikasi tentunya.

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