Archive for the ‘AIM’ Category

AIM 7.0 Beta 2 Now With AIM Lifestream

Monday, July 6th, 2009

AOL released the second beta of AIM 7.0 for Windows today. This build has a lot of changes since the first beta. While some are very noticeable like the new color/theme chooser and the Lifestream and Me tabs, others might not be so noticeable like the total footprint on disk was reduced by 3MB between the two betas. AIM 7 now installs in under under 15MB of disk space. By comparison (chosen totally at random), Digsby takes up 67.7MB on my PC.

Here is my Buddy List using the new “Grass” theme:

AIM Buddy List with Grass theme

There are a lot of cool and very new things to try out in this beta. AOL needs your help. If you find any issues or have some suggestions, be sure to click on the “Beta Feedback” link and leave a comment. The IM window has a handy “Beta Feedback” link at the top as shown here:

AIM Beta Feedback

Clicking on that link will open a browser window where you can leave your comments. Here is a screen shot of me leaving some feedback.

Sample AIM Beta Feedback

Remember, like saved away messages, you have to ask for the features you want in order to give them the attention you believe they deserve. Just make sure you ask for something you really want. Please comment early and often. The more details the better.

If you have not tried the first beta, be sure to try this one today.

Could it be the fastest AIM client yet?

AIM 6.9 for Windows

Friday, May 1st, 2009

AIM 6.9 Running Man Buddy IconBy now I am sure you have heard about the new AIM 6.9 client that was announced by AOL this week.

Don’t let the minor version number fool you. These days, any version number higher than the previous one can signify an important update. AIM 6.9 is much improved over AIM 6.8, it is still FREE, and best of all, AOL has officially brought back the Running Man!

You can read more about this client on the AIM website and in some of my fellow teammate’s blog posts. There are also plenty of folks tweeting about it too.

I have been using this client throughout the betas and can confirm that all of my plugins work with AIM 6.9 as long as you update to their latest versions.

Try it today.

As a bonus tip, here is a quick way to switch your current buddy icon to the new Running Man (pictured above):

Click Here to Get the New Running Man Buddy Icon

Enjoy.

Buddy Updates Feed URL Generator

Friday, January 23rd, 2009

Ever wanted to keep tabs on what your buddies are doing? Well, here is a tool you can use to generate the URL used to get your buddy’s updates feed.

The buddy updates feed is a collection of all AIM Plugin installations, away and status message changes, third-party social media feeds, and more that your buddy has associated with his or her account.

The tool generates a URL for the Web AIM API that gets a user’s feed. This API is not bound by any authentication mechanism at this time so you can use it like any other RSS feed.

Give the AIM Buddy Feed URL Generator a try. The tool lets you enter the buddy’s name, feed format (rss,xml,json), optional category, max number of items, and level of detail. [NOTE: I have to admit that the feed category option did not work for me. I will investigate and add a comment when I have an answer.]

Here is a URL that returns the full RSS format of my feed.

The AIM SDK version 1.6.8 and the one used with AIM 6.8 both expose a Buddy Feed API that you can use to push additional content. I will cover how you can use this API to push any kind of data you want in a future post.

FAQ
Q: How can I control what goes in my buddy updates feed?
A: You can control what goes into your buddy feed at the AIM Settings Website. Just click on the “My Buddy Updates” tab.

Reading an AIM SDK Preference via C++

Wednesday, January 14th, 2009

The AIM SDK (AIMcc) has an interface called IAccPreferences that is used for reading and writing preferences. Preferences are associated with a session so they can only be accessed once you have an IAccSession object.

It is up to clients to implement the actual data store behind these preferences by registering an object that implements either IAccPreferencesHook or IAccPreferencesHook2. You can find more information about these interfaces in technote 3 of the AIM SDK.

In this two-part series I will provide some sample code for reading preferences. This first post provides an ATL/C++ example and my next post will provide a JavaScript example.

In the process of making easy to use sample code, I will need to create some helper classes. These classes will be part of an evolving distribution called AccEx which I am hereby placing in the public domain. I will start by distributing these as source files only until I have more classes. AccEx distributions will be available here.

For this post, I created a helper class in AccEx called CAccExPreferences in order to make it easy to read and write preferences in C++. This class has overloaded methods to help you read a preference in various native formats like bool, int, float, etc. and one method to write a preference from a CComVariant.

So let’s use this thing. Like I said above, the IAccPreferences interface is implemented by AIMcc and associated with the IAccSession since they are (mostly) per-user preferences. Therefore, the only thing you need to initialize a CAccExPreferences object is an IAccSession pointer. The class will take care of acquiring the IAccPreferences interface for you. Here is a simple use-case that reads a real AIMcc preference.

// This sample source is public domain
#include <stdafx.h>
#include "AccExPreferences.h"
 
static WCHAR kDisclosePluginsToBuddyFeed[] = 
    OLESTR("aimcc.privacy.disclosePluginsToBuddyFeed");
 
HRESULT CanDisclosePluginsToBuddyFeed(IAccSession *pIAccSession)
{
    bool enabled;
    AccEx::CAccExPreferences prefs(pIAccSession);
 
    if ( SUCCEEDED( 
            prefs.GetPref(kDisclosePluginsToBuddyFeed, enabled) 
         ) && enabled )
    {
        // preference is enabled.
        return S_OK;
    }
    return S_FALSE;
}

Stay tuned for my next post where I will do the same using JavaScript.

AIM Blast Power User Tips

Sunday, January 11th, 2009

By now the web is buzzing with comments on AIM Blast. Don’t know what it is? AIM Blast is like an email list for IMs. You can create a permanent “blast group”, invite your friends, and then send/receive messages to/from all who are online at the time. It’s that simple. See the AIM Blast page for more details.

Blast groups appear as an automatically managed group in your buddy list. Once you have a blast group, just send an IM to the []-bracketed blast group buddy name.

You might have noticed that you need to reply with //1 or //2 when you receive an IM with the invitation to a blast group in order to accept or decline the invitation. It turns out there are many more commands that you can send to the blast group once you have joined.

Here is a list of additional commands you can send to blast group (NOTE: Most of these commands are handled by the host w/o being relayed to the blast group members):


//off
Stop receiving IMs. Use this when you are not interested in the current conversation. Don’t forget to send //on since this is in effect until then.

//on
Start receiving IMs again.

//invite name
Invite name to AIM Blast. An easy way to do this without having to go through the AIM Blast web site.

//history
Display last 10 IMs. This is an excellent way to check if you missed any recent blast messages.

//stats
Display stats

//soundon
Turn buddy sound on for the group

//soundoff
Turn buddy sound off for the group

//help
Get the list of // commands.

I found one more command that is not listed in the //help command and that is the //roll command to roll 2 six-sided dice; great for playing games and making random decisions via AIM Blast.

One last tip is that my Link Buddy plugin (also available from the AIM Gallery) has a link that gets you authenticated access to the AIM Blast web site so you don’t have to enter your password once you are signed-in to AIM.

Link Buddy Plugin

CoreWitness 1.1

Saturday, January 10th, 2009

I have released an update to my CoreWitness plugin for AIM. This version adds a few new features like the ability to pause and filter the messages being captured.

Here is a screen shot of the new filter dialog:

DAccEvents Monitor Filter

From this window you can select the messages you want to trace and click on apply, to activate your selection without closing the window, or OK to activate and close the window. You can save your selection as the default to be loaded at sign-on and when you click on load defaults button.

The contents of the event list will be updated as you type in the filter box to show just the events with the partial name. You can ctrl-click to select or de-select an event. The enable state of events not shown by the filter are preserved.

One last “feature” I added has more of a viral approach to getting the word out on this plugin (your help is appreciated). CoreWitness will push an activity to your buddy feed every time you install or upgrade this plugin. This will only be done if you have enabled the publishing of AIM Plugin installs in your privacy settings.

You can read more about this and download it on the Gus Verdun’s CoreWiteness Plugin-in web page.

AIM Vote ‘08 Plugin for AIM 6.8+

Thursday, October 30th, 2008

I just wanted to highlight a new plugin that was recently added to the AIM Gallery. The AIM Vote ‘08 plugin lets you vote for Obama or McCain and then see who your buddies vote for. Your vote is only visible while you are online and you can change your mind at any time.

Here is a capture from the AIM Gallery Web page:

AIM Vote on the AIM Gallery

This plugin is all aces in my book; Best part is that I did not even write it but I know the man that did.

Just look at the face of your candidate when he is winning or losing. Well done “Tommy Gunn”!

Click here to go to the AIM Gallery site where you can download this plugin.

Enjoy and be sure to vote on November 4th.

Have You Seen This Photo?

Wednesday, August 27th, 2008

I got this in an envelope from a local bank the other day:

Chevy Chase Bank Uses a Stock Photo

I was absolutely positive I had seen this photo before but could not remember where until I visited the aim.com website and saw this on the page:

aim.com uses the same stock photo

Have you seen this photo somewhere else? Post any you find in the comments (no spam please).

Open AIM Signon Problem

Tuesday, March 11th, 2008

As noted here, you need to make sure your system clock is fairly accurate when using the Open AIM SDK 1.6.7 in a client. This will be fixed in the next release.

Incidentally, the APIs we use for signon are clientLogin and startOSCARSession which are documented in the OSCAR protocol specifications.

AIM SDK 1.6.7 Q&A Volume I

Monday, March 10th, 2008

A number of you are trying out the recently released AIM SDK 1.6.7. I thought it would be a good idea to answer some of the early questions. So here they are in my usual Q&A style…

Q: What SDK files do I need to run an Open AIM client or bot?
A: You need to copy some of the DLL files from the dist\release folder into your application’s folder. You can omit the jg*.dll files if you don’t need to support talk (aka voice) sessions with legacy AIM clients like AOL 9.x and AIM 5.9. You can also omit the sipxtapi.dll if you don’t need to support the newer SIP based Audio/Video sessions in AIM 6.x. You only need the accjwrap.dll and the accjwrap.jar files if your bot or client is written in Java. All other DLLs are required.

Q: What are all these new DLLs for?
A: We added support for SSL based encryption to Open AIM clients, which is based on NSS and NSPR from Mozilla. We also updated the audio/video stacks for full multimedia support in Open AIM.

Q: How do I enable SSL based encryption in my bot or client?
A: You can enable this via the boolean preference named “aimcc.connect.secure”. The default is false.

Q: What does SSL based encryption protect?
A: This encrypts all regular IM traffic between the client and the AIM host. It will not encrypt direct IMs, picture sharing sessions, A/V sessions, file transfers, buddy art retrievals and uploads, or alerts. Note: for end to end security your buddy also needs to be running a client that uses SSL encryption, like AIM 6.5.9.1.

If I did not answer your question, feel free to ask in a comment or post it in one of the forums.