Merubah Status Yahoo! Messenger Penulis

Bagi yang sering memanfaatkan IM (Instant Messenger) ini, kemungkinan besar sering memanfaatkan fasilitas status dan availibilty.

Status YM (Yahoo! Messenger) menunjukkan keadaan kita saat ini, sehingga dapat terlihat oleh para chatter lainnya. Biasanya kita melakukan perubahan status tersebut melalui menu yang telah disediakan oleh YM sendiri. Bisa dengan memilih status yang telah disediakan, atau mengisikan sendiri status tersebut.

Beberapa aplikasi dapat melakukan perubahan status di YM secara eksternal, misalnya saja plug-in WinAmp yang bernama YM Status Changer, yang akan merubah status di YM sesuai dengan lagu yang sedang dimainkan pada WinAmp.

Berikut ini akan dibahas cara merubah status di YM menggunakan aplikasi Visual Basic. Contoh yang digunakan adalah mirip dengan YM Status Changer, yaitu merubah status YM, dengan mengambil lagu yang sedang dimainkan di WinAmp. Dari contoh tersebut, tentu dapat dikembangkan sesuai dengan kebutuhan sendiri.

Cara mengambil lagu yang dimainkan oleh WinAmp, kita menggunakan caption pada windownya:

  • Dengan Windows API, kita mencari handle window dengan class Winamp v1.x WinAmpHnd = FindWindow(“Winamp v1.x”, vbNullString)
  • Ambil caption pada handle tersebut dengan fungsi GetWindowText wname = Space(260)
    GetWindowText WinAmpHnd, wname, 260
    wname = Left(wname, InStr(wname, Chr(0)) – 1)

Sedangkan cara melakukan perubahan status di YM adalah sebagai berikut:

  • Dari registry YM, ambil nama user yang sedang login (aktif) saat iniUserAktif = Regs.GetStringValue(“HKEY_CURRENT_USER\Software\Yahoo\pager”, “Yahoo! User ID”)
  • Dengan nama tersebut, tentukan lokasi path Profile user aktifProfilePath = “HKEY_CURRENT_USER\Software\Yahoo\pager\profiles\” & UserAktif & “\Custom Msgs”
  • Rubah Custom Message (status) sesuai dengan caption dari WinAmpRegs.SetStringValue ProfilePath, “5”, wname
  • Rubah status user visibility jugaRegs.SetDWORDValue ProfilePath, “5_DND”, 0
  • Dengan Windows API, cari handle window yang menggunakan class YahooBuddyMain (class-nya YM)YMWnd = FindWindow(“YahooBuddyMain, vbNullString)
  • Berikan pesan (PostMessage) pada handle tersebut untuk merubah statusnyaPostMessage YMWnd, &H111, &H188, 0

Nilai status yang baru, diletakkan pada entri 5 agar dianggap sebagai entri baru oleh YM, sehingga status saat ini (sebelum dirubah), akan bergeser ke nomor 4. Sedangkan entri nomor 4 akan pindah ke nomor 3, dan seterusnya. Entri 1 akan hilang. Total adalah 5 status yang disimpan oleh YM.

Untuk visibility digunakan nilai 0 untuk visible, dan 1 untuk invisible.

Pada contoh Source-code, atau aplikasi jadi, aplikasi akan merefresh status secara terus menerus (interval default 3 detik), untuk mengecek status di WinAmp dan menerapkannya di YM.
Hal ini berbeda dengan YM Status Changer yang karena keberadaannya sebagai plug-in dari WinAmp, sehingga dia dapat melakukan perubahan status hanya jika ada perubahan lagu.

Fungsi tersebut dapat dimanfaatkan untuk hal lain yang mungkin saja lebih berguna🙂

Silahkan Beri Komentar

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s