Reaching MSN networks from Linux with aMSN

Window Talk


aMSN lets Linux users communicate with associates on Microsoft instant messaging networks. In this article, we'll show you how to reach out to your friends in the empire.

By Mirko Albrecht

Melanie Taylor, Fotolia

Instant messaging is a convenient tool for contacting people in remote places with the use of chat technologies that send files, hold conferences, and even exchange live webcam images. The major players courting the favor of the community are ICQ, AIM (AOL), Yahoo, Jabber, and MSN (Microsoft Network).

In former times, Linux systems mainly concentrated on linking up the fairly small community of IRC users with typical Windows messaging protocols. Today, developers tend to concentrate on extending the features of individual clients or adding multi-protocol, plugin-based support, as is the case with Kopete [1] and Pidgin (formerly known as Gaim) [2]. One chat client focuses on giving users access to Microsoft's proprietary MSN chat solution. In this article, I describe how Linux users can chat with MSN customers via aMSN [3].

Installation

Before you start to install the aMSN client, you first need to visit Microsoft's Internet portal, MSN. When you get to the website for Microsoft's MSN messaging product [4], you will notice that the powers that be in Redmond like to rename their products, too, and that MSN Messenger has now been dubbed Windows Live Messenger.

Luckily, the Microsoft registration form [5] does not ask you for too many details, and it should not take you too long to obtain a Windows ID (i.e., a hotmail address). MSN does not ask you for your real email address because it does not send you an activation code by email, so you don't need to worry about spam.

Binary packages and source code of aMSN version 0.96 are available for the Linux, Windows, Mac OS X, and FreeBSD platforms. Most major distributions now include aMSN in their repositories, so you should have no trouble installing the package via your distribution's package manager.

SUSE users will need to add the Guru's repository [6] as an additional package source; Ubuntu users will need to enable the Universe repository.

If your distribution is not in this list, your only option is the aMSN download page [3], which offers a really neat, distribution-independent installer. Some of you might be reminded of Windows at this phase (Figure 1). To launch the script, you need to type:/amsn-0.96-2.tcl84.x86.package. If you do not have the right permissions set to execute the file, enter chmod u+x amsn-0.96-2.tcl84.x86.package to change. The rest of the procedure is self-explanatory.

Figure 1: aMSN comes with a graphical installer for Linux.

First Contact

A first glance at the newly launched program window reveals a Tcl/Tk GUI, which could be prettier in many people's opinion, along with a disproportionately shaped dialog box. In some cases, you can't see the button labels, and in other situations, you need to manually drag the dialog box to its full width to see what is going on. Fortunately, aMSN turns out to be very flexible and extensible, so you will be able to do something about reducing the strain on your eyes fairly soon.

When you log on with the user account you just set up, the program gives you two options: you can either enter your hotmail address and password or set up a profile. The latter profile option gives you the ability to use more than one account. If you are using an existing MSN account, your buddylist should appear now because Microsoft stores the list on one of its servers. To open the chat window, double-click an online user. A pop-up appears in the system tray at the bottom of the window to let you know when you have received a message.

Some features of aMSN are very intuitive. The two-panel chat window (Figure 2) gives you icons for changing the font, selecting emoticons (smileys), inviting other people to join, sending files, or launching a video chat session. To set your status and edit your profile settings, you can click on your avatar in the main window.

Figure 2: aMSN's two-panel design provides a convenient view for managing chat functions.

The envelope icon takes you straight to the web interface for your Hotmail email account. The drop-down menu in the system tray lets you modify a few of these settings and mute the sound output, if necessary. Incidentally, the default sounds are far less jarring in aMSN than in, say, Kopete.

Settings

To help you customize aMSN, the developers have added a number of settings that you can access via Account | Preferences or Ctrl+P. For example, you can set the font in the Appearances tab or customize chat sessions in the next tab by setting inactivity timeouts. Also, you can block uninvited MSN users who get on your nerves, log conversations, and define the ports your firewall will use for file transfers. Finally, you can specify the programs that aMSN will use if you open an HTML address or access a file manager. The options are mostly self-explanatory.

Skins help you customize your client's appearance. To do so, go to Account | Select Skin and click on the Get more skins link at the bottom of the window. If you entered a browser in the Account | Preferences | Others tab (such as firefox $url), the browser should now launch and offer to download additional skins. What the skins mainly do is give you different icons and a colored scroll bar. They don't change the GUI itself. In your file manager, you can either right-click downloaded ZIP packages to unpack, or enter unzip skin-name.zip at the command line and move the results to your ~/.amsn/skins folder.

The same thing applies to plugins, which aMSN uses to extend functionality. The plugin manager is available in Account | Select Plugins. Follow the same procedure as for changing a skin. The selection of plugins does not add anything world shattering: The most interesting candidate gives two chatters the ability to play MSN games - provided both have the same plugin or the original Microsoft client. Other plugins let you draw on-screen and send the results. Users with impaired vision can install a screen reader, provided they have a text-to-speech system [7] running. Don't bother looking for a plugin to implement another chat protocol such as ICQ or Yahoo - the developers don't intend to code one.

Vision without Sound

aMSN's highlight has to be the video function (Figure 3). For this function to work, Linux has to support your webcam and load the corresponding driver modules. The webcam test in this issue gives you more details on supported webcams.

Figure 3: aMSN's webcam support lets you glimpse the household across your connection.

If you go to Account | Preferences | Others and open the Configure webcam dialog, a window shows you whether NAT or a firewall is preventing you from sending or receiving webcam signals. If this is the case, you will need to open up port 6891 on your firewall for the program and make sure that your router forwards the data to port 6891 on your machine.

The function of the I want to make my webcam available to others button is unknown. In our lab, the webcam image was not displayed until the program had asked for confirmation at both ends, but after confirming, the images were shown to multiple chatters. Because Help does not say anything about this function, it's probably best to ignore it for the time being. The Use a low-resolution webcam function reduces resolution to save bandwidth.

To modify the display quality of your webcam, press Edit video settings, click your webcam below Devices, and click on the channel specified to the right. Then, click Change video settings. This enables a preview image in the lower part of the window and, at the same time, opens a window with a second preview and controls that let you modify the image to suit your preferences. Unfortunately, the controls are buggy and only support three states: minimum, average, and maximum. Interestingly, you can hold down the mouse button and drag the mouse over the slide control - without actually moving the slider - to change the preview video continuously. Unfortunately, this won't help you much because it doesn't modify the actual video image: you can't save these settings.

If you would like to share your video image with one or multiple chat buddies, click the camera icon above the text box in the chat window. The second camera icon above your buddy's name is used to request a video image. To give other participants access to your video image, just repeat the procedure. Although fast movements led to jerky and blurred images in our tests (despite a fast broadband Internet connection), I achieved fairly good image quality when I tested this feature in our lab.

The developers have not implemented audio transmission thus far, so you will have to live with silent movies for the time being. In the Preferences dialog, the Logging tab lets you specify whether or not you want aMSN to log video sessions. Contacts | View Webcam Sessions lets you relive your recorded sessions. Note that the habit of storing webcam sessions will use up vast amounts of your disk space.

Interaction with other IMs

aMSN only supports the proprietary MSN protocol; thus, it can't talk to users of other major services such as ICQ, AIM, or Yahoo Messenger. However, I wanted to know how compatible aMSN is with other IM clients for Linux: the two major players, Pidgin (ex Gaim) and Kopete, both have a plugin for talking to the MS network.

Although I had no trouble sending messages, Kopete and Pidgin both ignored font changes in aMSN. Exchanging files also was no trouble . The latest version of Gaim 1.5 can't handle video, but Kopete had no trouble receiving and displaying the image once I confirmed the prompt (Figure 3). This also worked in the reverse direction, with aMSN displaying video streams generated by Kopete.

Conclusions

aMSN is a fairly solid instant messaging program with a couple of minor bugs. Good user controls, intuitive button labeling, and a host of useful features more than compensate for minor bugs in the GUI.

The dialog that prompts users to send in bug reports is annoying, appearing as it does in the context of various plugin errors. Apart from this, aMSN proved to be stable. The lack of support for other protocols restricts the program's usefulness for some, but if you only need MSN support, the program gives you a very usable and ad-free client. If you want to keep in touch with friends and acquaintances on other networks, Kopete or Pidgin are your only options.

INFO
[1] Kopete: http://kopete.kde.org
[2] Pidgin: http://pidgin.im/pidgin/home
[3] aMSN: http://amsn-project.net
[4] Microsoft Messenger: http://get.live.com/messenger/overview
[5] Registering with Live Messenger: http://my.msn.com
[6] Guru's repository: http://linux01.gwdg.de/~pbleser/
[7] Festival text-to-speech system: http://www.cstr.ed.ac.uk/projects/festival