Aplikasi Java Untuk Instant Messaging Berbasis Jabber/XMPP


Pasti teman-teman semua sudah pernah menggunakan aplikasi semacam Yahoo!Messenger, GoogleTalk, MSN, dan mIRC. Semua itu merupakan aplikasi yang digunakan untuk berkomunikasi melalui internet, atau istilah kerennya aplikasi chatting. Mungkin pernah berpikir, gimana sich cara buatnya?

Aku akan memberikan contoh sedikit cara membuat aplikasi chatting menggunakan Java dengan memanfaatkan protokol yang sudah tidak asing lagi, Jabber/XMPP. Pustaka yang akan aku pakai adalah Smack API, yang merupakan pustaka open source untuk membuat aplikasi chatting berbasis XMPP.

Sebelum teman-teman mulai mengembangkan aplikasi ini, tentunya dibutuhkan server XMPP, dan aku menggunakan Openfire, yang juga bersifat open source. Jadi jika belum ada di komputer, install-lah terlebih dahulu. Kalau sudah ter-install dengan baik, jalankan Openfire.

Kalau server XMPP (Openfire) sudah berjalan, coba lakukan pengetesan apakah server sudah terinstall dengan baik dengan menjalankan aplikasi XMPP client, aku mencoba dengan Pidgin, dengan konfigurasi seperti gambar di bawah ini.

Kalau teman-teman bisa login, berarti server sudah berjalan dengan baik.

Langkah berikutnya adalah membuat aplikasi Java. Berikut adalah 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();
      }
   }
}

Kompilasi code di atas, dan jalankan. Jangan lupa untuk menjalankan aplikasi client terlebih dahulu untuk melihat hasilnya. Berikut hasil yang diperoleh jika menggunakan Pidgin:

Tidak sesulit yang dibayangkan, bukan? Good luck ya, semoga berhasil.

10 thoughts on “Aplikasi Java Untuk Instant Messaging Berbasis Jabber/XMPP

  1. thx ya… berguna banget… kebetulan skrg lagi bikin aplikasi chat j2me nyoba make openfire… gagal mulu loginnya.. mau coba cara yg d atas deh… mudah2an berhasil…😀

    Reply
  2. Pingback: Link berkenaan dengan openfire « san script

  3. Howdy! I know this is sort of off-topic however I had to ask.
    Does running a well-established blog such as yours take a lot of work?
    I am brand new to operating a blog but I do write in my diary every day.
    I’d like to start a blog so I can share my experience and thoughts online. Please let me know if you have any kind of recommendations or tips for new aspiring bloggers. Appreciate it!

    Reply

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