Update: This setup no longer works. Microsoft, Google et al. have abandoned these platforms. Reab about the deprecated APIs on the Adium help page. I think most people have unfortunately moved to Twitter and other social media platforms.

Like most technology people I know, I have multiple Instant Messenger (IM) accounts because not all the people I chat with use the same provider. My personal favourite is Google Talk because I like simple interfaces, open platforms and Larry Page is a University of Michigan alumnus (Go Blue!).

But most of my family and friends have settled on either one of MSN, AOL, or Yahoo. At first, I downloaded each of the client applications but tired of installing and launching multiple IM clients each with a unique interface. I wanted one protocol to bind them and one client to rule them all. I discovered the wonderful world of multi-protocol instant messaging clients like GAIM.

A free chat client used by millions. Connect easily to MSN, Google Talk, Yahoo, AIM and other chat networks all at once.

Wow, I thought. That sounds awesome! Yes. It is. I downloaded GAIM and several plug-ins, and for a while, I was quite happy. Users can log in to multiple accounts on multiple IM networks simultaneously and chat with their friends on AOL, MSN and Yahoo. This worked well for a while. GAIM even supports Lotus Sametime which is used at my employer. Now I had one client to rule them all. But I soon discovered that Yahoo support started failing. Then it was fixed. Then MSN support started failing. And it was fixed. Then AOL support started failing. And it was fixed. And on and on.

Of course, the problem is that the major IM providers all use different proprietary systems and protocols. They kept making changes to their systems which would break the functionality of GAIM. The GAIM developers would update the software, and then the IM vendors would change the protocol and …….on and on.

The search for a solution

Then I bought an Apple Mac mini and a MacBook, and I had to start the process all over again. I discovered that OS-X’s iChat messaging client supported on iChat, AOL and Jabber. I never got GAIM to work on OS-X but I did find IM clients based on GAIM such as Adium. Adium was no better than GAIM and crashed very often. I searched for a better way, and that way was Cavemonkey.

While Googling for a solution I came across and article on the Cavemonkey blog. The blog’s author, Ronald Heft, Jr. is a freshman at Penn State in Lehigh Valley, PA. He details how to use the Jabber protocol to add Google Talk, MSN, Yahoo and AOL connectivity to iChat. I followed his directions and was soon using iChat to ping my friends. It was when I returned to work the following day and logged into Google Talk that I discovered the brilliance of this solution. All of the IM protocols were bound to my Google Talk account. I could IM my friend on MSN from Google Talk. The magic is that Google Talk is built on the Extensible Messaging and Presence Protocol (XMPP) protocol that was developed by the Open-source Jabber community.

“[Jabber is] an open, secure, ad-free alternative to consumer IM services like AIM, ICQ, MSN, and Yahoo (see the IM quickstart). Under the hood, Jabber is a set of streaming XML protocols and technologies that enable any two entities on the Internet to exchange messages, presence, and other structured information in close to real time.” — jabber.org

Jabber supports the concepts of transports. A transport is a small computer program that runs on a Jabber server and “translates” messages from other networks into the Jabber format.

Jibber Jabber

So enough already! How do we do this? My buddy Chris P. was excited when I mentioned that he could use Google Talk to communicate with the other IMs. So these instructions are written for Chris P.

The Google Talk servers do not provide transports so we will use another jabber server and client to bind the transports back to our Google Talk server accounts. A list of public Jabber servers can be found here but for this example I will use the jam. At server. NOTE: I did this on Windows Vista beta two but it will work on Windows XP.

  1. Download and install Google Talk.
  2. Download and install Psi.
  3. Setup Psi to use your Google Talk account. The instructions are here.
  4. Account setupNow add the public Jabber server to Psi and create an account on that server. Click the Psi symbol in the lower left corner of the Psi application window and select “Account Setup” to launch the Account Manager. In the account manager, click on the add button. On this screen, enter in anything you want to call the account and be sure to check the register new account check box.
  5. Add account wizard
  6. Now, enter in a user name in the Jabber ID box, and add @[your main Jabber server] to the end of it. Choose a password, and click register. We’re done setting up the account!
  7. Register the account
  8. Going onlineNow we want to attach transports to the Google Talk account. Make sure you are logged into the jabber and the Google Talk account. Right-click the account and select “Online.”
  9. Service Discovery
  10. To add transports right-click the Google Talk server icon again and click “Service Discovery.” This will bring up a window with a list of service transports. Since Google Talk servers do not provide transports, we need to first connect to a server with the transports we require. Just enter in the server with the transports in the address field and click browse. Now both Google Talk and regular Jabber users are in sync.
    We will add the MSN transport first, but each of the others can be added just as quickly.
  11. Transport list
  12. Registering a transportRight-click the MSN transport and click “Register.” Enter your MSN password and click “Register.” Do the same for all the other transports. Once you’ve registered all your transports, click close, and close Psi. You no longer need it.
  13. Launch and log-in to Google Talk and your contacts should appear instantly.
  14. Google Talk

That’s all there is to it. Now you can use Google Talk to communicate with your buddies on other IM services. There is one caveat regarding adding contacts. When adding contact you will have to use the following format: [contact name]@[protocol].[server]. So if you wanted add a Yahoo account ( shane@yahoo.com) on the jabber server you would use shane@yahoo.jaim.at. MSN contacts ( bhavana@msn.com ) are a little different: bhavana%msn@msn.jaim.at.

25 thoughts on “Get Google Talk, iChat, MSN, Yahoo and AOL all talking

  1. So I followed your directions and but it seems I broke it. None of my contacts are appearing online… I will try again a little later and post my results but so far no go.

  2. now if you can tell me how to undo this process and have my gtalk account back to normal that would be wonderful ^_^

  3. Recommend you try http://www.meebo.com/ … it’s a web page that gives you access to all of the chat services and you can use it on the most restrictive of PCs (my team is responsible for the security of servers and workstations).

  4. I did some tests on this “integrated” IM thing based on your explanation. Personally, I like to have all my contact in one IM but I am still not confident enough with the reliability of the public jabber server. If you are interested about my test, I put the result on http://rendo.info/?p=82

  5. Not sure why Adium would crash constantly on you. Even back in 06 when this article was written, I was having no trouble at all running Adium all day long. My biggest problem with Adium is that it’s not integrated into the OS like iChat, and video and audio chat don’t work. Otherwise, no problems here with Adium since late ’04.

  6. i did that and am now able to use GT to chat with MSN contact. however, all the MSN contacts go off line when i turn off PSI. Does this mean i have to keep my PSI online if I want to use GT? Please advise!

  7. To reverse this:

    Open up Psi, click “View” and make sure that you’ve enabled/highlighted the options that say:
    – Show Offline Contacts
    – Show Hidden Contacts
    – Show Agents/Transports

    Once you’ve expanded your buddy list and you can see everyone, just right click in the section of the list labeled “Agents/Transports” where you find the server you used to register with Yahoo!, AIM, MSN, or whatever and select “Authorize >” and then select “REMOVE AUTHORIZATION”

    Then you can delete the buddy (“agent”) from your list and problems are resolved! Good luck, all.

  8. Hi Everyone,

    I am logged into Ichat using my Gtalk id and chatting works fine. What I was looking for is to make audio calls to my frd’s… but it seems its not possible from Ichat to gtalk on windowns and there is no gtalk version available for Mac yet. Tried MSN live messenger and that has the same problem. Yahoo is not help full as most of my frds are using gtalk or msn.

    Any suggestion how can make audio calls to work if possible on Ichat using gtalk or MSN live ID or any other messenger tat can help. Thanks in advance.

  9. Thank you for posting this! I am totally done with MSN. I have Gmail and I want to chat with Google Talk now.
    I follow the steps in this blog to make contact with my MSN-contacts in Google Talk.
    I can talk to them now, but I have still one problem: If I talk to them, they see the adress of my MSN. Is it possible to let them see my Google-address?

  10. Someone help me please! This only works while I’m online on psi, if I turn it off, all my msn contacts go off on GTalk as well! How can I fix this?

  11. Hi, I´m trying to do this on a mac, so far ia have my gtalk account working on iChat but I can´t talk to mis msn contacts ¿Can you help me?

  12. Do not try this at home, kids.
    It just does not work anymore. Seems that gtalk does not 'show' your MSN contacts anymore, even if you do the PSI mambo jambo. If you, however, made this a couple of months ago, and your jabber server+transport is still up, you'd be able to use it. But there's no way to run a new configuration again.

    I hope Gtalk engineers fix that. the Jabber community seems to be aware of this.
    sigh

Comments are closed.