Libraries to connect to Instant Messaging (IM) services like Yahoo , MSN, AIM through Java Program [closed]
Asked Answered
P

6

7

I am looking for some library that will help me connect to IM networks through a Java program.

My requirement is as follows:

  1. User should be able to login, retrieve friend list, and able to send messages to his friends
  2. Messages should be delivered to offline friends too.

I have done some research about lib-purple. But its not written in Java. Is there any Java wrapper available for the same, so that I can use it with a Java program ?? Or some libpurple plugin that can be used with an XMPP server ?? Or is there any other solution.

Thanks Aneez

PS:

I have tried Openfire XMPP server in conjuction with the IM Gateway Plugin (also tried the Kraken IM Gateway Plugin too). It does not deliver offline messages to MSN and AIM friends (works fine for Yahoo and GTalk).

I have also tried the following libraries and found that they too do not support message delivery to offline friends

  • Java MSN Library
  • jYMSG (for Yahoo)
  • DAIM (for AIM)
Pocketknife answered 25/5, 2009 at 10:28 Comment(1)
can you please show me the code how did you manage to get connect with yahoo i installed openfire on server and currently using xmpp sample code but not able to get connected with yahoo and msn id. Appreciate your help. Thanks, RonakBerberidaceous
P
1

Do you want the offline messages to be stored locally or on a server? I know AIM/ MSN have some kind of server to store offline messages, but i haven't done enough research to know how accessible that is. Another method would be to create (or use an existing) bot that you send the messages to which would handle delivery.

For aim, JAIMBot appears to provide a library that supports this: http://jaimbot.sourceforge.net/

By Googling "msn offline messaging bot" or similar queries, you might be able to find similar libraries/ bots to handle other systems.

Best of luck!

Petulia answered 26/5, 2009 at 2:4 Comment(2)
My requirement is that once I send the message, say to an offline MSN contact, he should receive it when he next logs in...the message should reach him and not get lost. I believe all this mechanism of message being stored and delivered to an offline contact should be dealt at the service-provider's end, namely MSN and AIM. I say this, because for Yahoo and GTalk, I do nothing but send the message, and they get automatically get deleivered to the offline contacts when they next log in.Pocketknife
Ok..I forgot to mention that I had tried JAIMBot too. It did not work for me. Apparently there has not been much development activity lately on JAIMBot and the protocol they support seems not to be supported by AIM anymore. This is the error I got when I used JAIMBot:'ERROR: failed to handle aim protocol properly'.Pocketknife
S
1

The same people who created the openfire XMPP Server created a very good Java Library for communication with Xmmp Servers and through the Jabber transport system to nearly every single instant messaging possibility.

The Library is called Smack and can be found on the homepage of Ignite Realtime.

I worked with different versions of Smack for some projects and build a custom Jabber client with it. The library seems very stable and mature now.

I don't know how outgoing messages to offline users are handled but incoming messages to you while you are offline are stored on the openfire server

Seditious answered 29/5, 2009 at 2:29 Comment(1)
@Seditious Well to talk to the Openfire XMPP server, I had used smack. Infact Smack can be used to talk directly through GTalk server But, smack cannot be used to connect to Legacy IM services as Yahoo, AIM and MSN. I don't think these services provided an XMPP gateway.Pocketknife
B
1

I've been struggling to make this post. Apparently I am not allowed to add hyperlinks or even URLs.

Google "java aim api"

The first item is Creating AIM-Enabled Applications in Java, Part 1. Good read. You basically need to request a development key. The article will then walk you through setting up Eclipse.

I suspect the other services require a dev key as well.

Cheers!

Bambibambie answered 29/5, 2009 at 14:33 Comment(0)
M
1

With Java Native Interface you can use libraries from other languages, e.g. c++. So, you could connect to ICQ using ICQ.dll from Miranda IM, etc.

Monotheism answered 29/5, 2009 at 18:2 Comment(0)
E
0

Check Kraken from the same people who created Openfire... Just Google "Kraken Jabber" and click the first result

Here is a short description: Kraken is a continuation of the Openfire IM Gateway plugin, but in a way that works for any XMPP server. It provides a way for XMPP users to log into, and communicate through, their legacy IM accounts such as AIM, ICQ, MSN, Yahoo, and friends.

Seems to be working fine on a server I set up

Eal answered 2/6, 2009 at 0:6 Comment(0)
R
0

You can connect with Kik Messenger mobile IM service using Kik API. It lets your Android or iPhone apps to use Kik's own transport and infrastructure to send rich content and files to other mobile app users. It is also very quick to integrate - 5 lines of code, in simpler scenarios. There's more info on the API website or blog: http://www.kik.com/dev and http://apiblog.kik.com

Disclaimer: I'm one of the guys behind Kik API :)

Renfro answered 27/7, 2011 at 2:23 Comment(1)
Does Kik provide XMPP access anymore and can I get on it using pidgin?Mirabella

© 2022 - 2024 — McMap. All rights reserved.