OS/2 eZine

16 Sept 2000
 
Christopher B. Wright is the Editor in Chief of OS/2 eZine, a title he tried to duck for many months with little success. When he's not working on OS/2 eZine (what? he's not supposed to have any other jobs!) he works on his web comic strip, Help Desk.


If you have a comment about the content of this article, please feel free to vent in the OS/2 eZine discussion forums.

Previous Article
Home
Next Article

ICQ for OS/2

ICQ (pronounced "I seek you") is sort of a pager for the internet: if you have ICQ you can send messages to anyone else who has ICQ in real time. It's incredibly popular -- among some people, it's used more than usenet is. It's been imitated by both America Online and Microsoft, and despite the fact that none of its clients have ever (to my knowledge) gone past beta status it has become sort of an informal standard for how instant messaging works.

Which begs the question... can we play too?

The short answer is "yes, we can." There are a number of native OS/2 clients that work reasonably well, as well as Mirabillis' own java-based client. The longer answer is "yes, we can, but there are issues." The latest version of ICQ for the windows platform comes with a lot of features that most of the clients available for OS/2 don't have, so incompatibilities will arise when Windows users try to interact with OS/2 users. Also, many of the ICQ clients are in various stages of development and are not the most stable of applications, so crashes can be common occurrences.

What I reviewed

I reviewed Mirabillis' Java port of their ICQ client, and 3 OS/2 ICQ clones. These are not the only ICQ applications available for OS/2 users, but they are the ones that seemed the furthest along in terms of development. Because I was looking for applications that seemed to have the best chance of meeting all the basic features of ICQ on the Windows client, I didn't review the text-mode clones that were available on Hobbes... and I did not review Licq, a very feature-complete port of a Unix ICQ clone, because I couldn't find any installation documentation available in English (it's all in Russian).

The ICQ clients I reviewed were:

When reviewing these applications, I tried to evaluate their stability, ease of use, convenience, and how many of the features of the Windows client they were able to match.

Mirabilis' ICQJava Client

When the Java ICQ client first appeared it was notoriously unstable and would crash my machine left and right. This was a testament to the infancy of Java more than anything else, however, because this client has not been updated in quite some time and now that I have Java 1.1.8 installed on my machine it seems to run just fine.

Because there are no installation instructions for OS/2 users, configuring it was a bit challenging. I had to open up the icqjava.bat file (set up to run the program under windows) and modify it so that all the relevant directories pointed to their respective places on my OS/2 system, then copy the file icqjava.bat to icqjava.cmd (so it would be recognized as an OS/2 application). After that, it was simple enough to create an OS/2 program icon, associate it with the icqjava.cmd file, and set it to minimize the OS/2 prompt window to give it the illusion of being a strictly PM program. Then I double-clicked the program icon, and ICQ Java appeared.

The main window (left) is very simple -- it displays all of the people who are online in blue, above the "offline" divider (no online people are shown in this screen shot). Then it displays all the people you have in your contacts list who aren't actually connected to the ICQ network at that time in red, and any people who you are waiting on to authorize you in yellow at the bottom. When someone sends you a message via ICQ, the icon beside their name will flash (and ICQ will generate a sound, if you desire).

The icon next to the person's name also displays his or her status -- if they're set to "invisible" mode (which many do to avoid the random ICQ spambots who advertise their porn sites indiscriminately) the icon changes to an eye. If the person is connected to the network but away form their machine, the icon has a little white sign hanging in front of it. This allows you tell at a glance whether or not they're available, or just online.

The ICQ Java client allows you to search the ICQ Global directory for people to add to your list. If you know their name, their email address, or their ICQ number you can search the ICQ database for any matches, and then choose from those which one you're looking for (right).

To send a message to someone, all you need to do is double-click on their name. It opens up a dialog box that allows you to type in your message (there seems to be a cap after 450 or 550 characters) and then send it to your target. If your target is online, the message will be transmitted directly to them. If your target is offline (see graphic below) the message will sit on the ICQ servers until they appear, and will be sent to them at that point. Sort of like a much less distributed form of email.

One annoying thing about the ICQ Java client is its sluggishness. No one ever accused a Java program of being fast, and if you're being contacted by more than one person, it can get annoying to have to wait the second for the message windows to open and render on the screen. Also, unlike the latest version of ICQ for windows (which allows you to keep a message window open, with your and your targets messages displayed in a top frame while you type in the bottom frame) the message window closes every time you send a message. If you're engaged in a long conversation, that can get very tiring.


The nice thing about the ICQ Java client, though, is that it has almost all the main features of the Win32 version. You can send and receive files, URLs, and even open up a chat session, which thankfully doesn't have the deranged format of the latest Windows client. In fact, it looks a lot like an IRC session, with the list of participants in the right-hand pane, the actual dialog in the left-hand pane, and the area where you type in the lower pane. The big difference, however, is that the other people can see what you're typing while you type it -- it doesn't wait for you to press enter before you send it. So make sure you don't type anything you'll regret, then delete it thinking you haven't sent it yet.!


The Native Apps

There are also some native OS/2 ICQ client applications available on Hobbes. All of these are in beta or alpha versions, and none of them have been updated in the last few months. The most recent was PWICQ, updatd in June. The next most recent was ICECQ, updated in January. ICQ/2 was last updated in December, according to the files on Hobbes.

ICQ/2

ICQ/2 is definately a work in progress, but it's still a useful application and has some features implemented better here than on any other version of ICQ that runs under OS/2.

It is something of an ugly duckling -- the interface is crude, and the buttons take up far more screen space than they really need to. Crude & Ugly does not mean useless, however, and while it does not have all of the features of the Windows app (no chat, no sending/recieving files or URLs) it's very stable for what it can do.

ICQ/2's main screen is similar to the Java clients, though usually much wider because the status button (the one that says "login" on the screen shot to the left). Also, ICQ/2 doesn't necessarily sort the people on your contact list into online and offline groups -- although, anyone who sends you a message will be taken to the top of the list.

Like the ICQ Java client, ICQ/2 uses icons next to the contact's name to differentiate between who is online, who is away, who is invisible. Unfortunately, these icons are very small, and at high resolutions I found it difficult to differentiate between them. I could tell when someone had set their client to "away," but that was about it.

Something that more than makes up for this, however, is the way ICQ/2 actually handles sending and receiving messages. ICQ/2 uses a split-paned conversation approach (see the screen shot below for an example of this). In the top pane, ICQ/2 keeps a track of your entire conversation. In the bottom pane, you type in what you want to say, and then send it by clicking the "send" button. Hitting the tab key once, while you are in the bottom field, will highlight the "send" button, and hitting a key (like the space bar) will send the message.


The best thing about the way this version is implemented is that, as in the latest Windows client, when you click send, the message window does not close. This means that any messages sent back to you from the contact will appear in the same window, and you don't have to open a new one each time. This is by far one of the most attractive and compelling features of all the ICQ chat applications, and I desperately wish some of the other more feature-complete ones had this capability.


Like ICQ for Java, ICQ/2 comes with tools that allow you to add currently unlisted contacts to your list by searching through the ICQ database. It also comes with a configuration panel that allows you to customize some of the basic settings of the application, but not all of those settings work. I noticed that from time to time ICQ/2 would log itself out of the network if it wasnt' being used, and I tried to fix that by setting the timeout to 0, setting it to 45, 90 and a few other settings -- none of them did much of anything at all, and ICQ/2 still kept dropping out and resetting itself to "offline."



IceCQ

Visually striking and elegant designed program, IceCQ is shareware -- but it's still a beta product. The demo version is limited to having no more than 10 people in your contact list, and there are a few other limitations of that sort, but while it limits the number of people you can use its features on, it doesn't limit the features themsleves.

The latest version of this product can be downloaded from the developers Russian/2 OS/2.ru site (the link to the english page is at the bottom of this article). As long as you don't go over 10 contacts you can pretty much use this application to its fullest, and with one exception I've found all of its features to be extremely stable and useable. If you want to register the program, you can do that from their page as well, though some may balk at registering it at this point in its development.

As you can see on the left, IceCQ uses the same basic layout that the Java client and ICQ/2 do, though the look is a bit more ornate and polished. It's preferences notebook (below) is very complete, and allows you to customize the way it works a great deal.


Like the other applications, IceCQ comes with a frontend that allows you to search the ICQ database for people to add to your contact list. And like the other ICQ applications (with the notable exception of ICQ/2), it sticks to the old one -pane-one-message-send-it-and-it-closes model of communication, which I really find quite annoying. However, an interesting feature on this one is the ability to instantly view the conversation "history" with the contact (i.e., a log of your previous conversations) by clicking on the history button the upper-right corner. However, this feature is not very stable. I found I was just as likely to lock up the entire application, requiring that kill it externally, as I was able to read the message logs. Maybe next release...


Another aggravating feature in this client: you can set any incoming messages to automatically open when you recieve them, which is nice, but when they open the "OK" button is highlighted by default and the message window is immediately given focus. When I tried to use this feature I found that if I was in the middle of writing something else, I'd often accidentally close the message before I had a chance to read it, because I'd be typing, the window would appear, and would be given focus just as I was hitting a key, which would activate the "OK" button and immediately close it. That is a very, very, very, very annoying feature, and needs to be fixed. Oh, yes, it does...

ICQ sending/receiving files and ICQ chat are not yet implemented, but are mentioned as "to do" items on the program's web site. I hope that in future releases they change the message panel to a layout similar to ICQ/2's and the latest Windows clients. All in all though, I really liked using this program.

PWICQ

PWICQ is another application that looks as though quite a bit of thought was put into the design and implementation of user interface. It's arrangements are logical and attractive, and is a fairly polished-looking program.

When you start PWICQ for the first time, it asks you to log in to the ICQ network -- you can enter your UIN and your password here, and it will take you to the next screen. I fyou specify that the password be saved, you won't have to keep re-typing the information. PWICQ assumes that you already have an ICQ account before you fire it up, so have that information handy.

After this you're taken to the main screen, which like the other applications is modeled very closely after the Windows version of the ICQ application. It allows you to filter out all of your contacts who aren't online by clicking the "online" button at the top of the window, search for and add other contacts by clicking on the Search/Add button below the contacts list, read incoming system messages by clicking on the System button below that, changing your system status (Online, Offline, Invisible, etc.) by choosing it from the bottom right button, and use the rest of its features by clicking on the PWICQ button on the bottom left. It all does exactly what you'd expect it to do, everything behaves appropriately.

The settings panel for PWICQ is just as extensive as ICECQ's with the added bonus that you can apparently assign REXX functions to run while you're using it. This looked neat, but I'm not a REXX programmer so I can't comment on that feature specifically. It does seem to have some built-in chat functionality, but I wasn't able to test that either (more on that in a minute).


It comes with the standard search features, communication method is similar to the ICQ Java and IceCQ methods (open, send, open, send). It seems like it would be a very nice, useable ICQ client, except...


... I can't get it to run more than once.

I would install it, run it for the first time, create my contacts list, use it for a while, then exist the program. Then, when I'd try to run it again, it would not only crash but it would hang up somewhere (as in, crash but not really close) and refuse to close externally (I'd have to reboot just to get rid of the thread). Every time I've tried to use this program the result has been the same, on Fixpak 8, Fixpak 12, Fixpak 13 and 14. I can't figure out what's making it crash, but it does, consistently. Deleting the directory and re-installing it will allow it to run again -- once -- but once you exist and try and re-start, it crashes and hangs again.

And the winner is...

So, which client did I like the best? Which one had the best feature? Which one do I use? The answer to all three of those questions are, as it turns out, completely different.

The application I like using most is IceCQ -- I think it looks gorgeous, it's fairly stable (except for when you try and view a contact's chat history) and it's very intelligently laid out. Alas, it doesn't have features that people on other platforms continue to assume that I have (file transfer, chat). I get kind of tired of always telling them "email me the file, that feature doesn't work on this ICQ client" so I've stopped using it.

The feature I like the most is the way that sending and recieving messages work under ICQ/2 (with both appearing in the same window, which stays open during the entire conversation). I've been using ICQ quite a lot lately, and I find that being able to leave a conversation open when I know I'm going to be talking to the contact a lot is useful beyond words. ICQ/2 doesn't have any group chat or file transfer features, however, and it keeps dropping out of the network, so I tend not to use it.

The client I use most of the time is the ICQ Java client. While it isn't my favorite in terms of user interface, is a bit sluggish, and can be frustrating to configure to run properly, it has all the basic features that all the other ICQ users have: group chat, file transfer, URL transfer, and of course one on one conversation. It's simply the one with the most cross-platform compatibility, so it's the one I use.

As for PWICQ, it actually looks as though it could rival IceCQ as far as ICQ clients that I like -- but it keeps crashing, and I can't figure out why. I'll definately keep my eye peeled for future releases, in the hopes that I'll be able to use it consisently enough to form a fair opinion on it, but at the moment it's at the bottom of the pile simply because it's too unstable on my machine.

Mirabilis' Java ICQ Client

ICQ/2

ICECQ

PWICQ

Previous Article
Home
Next Article