AIM Mailbag Part II

Last time on AIM Mailbag, we covered versioning, mobile privacy, colorizing screen names and of course the Mac AIM experience (or lack thereof)…and now the mailbag conclusion.

Q: What are some of the new key features being implemented in the upcoming versions of AIM?

A: I always love these questions, but hate answering them because plans are always changing but in addition since this is a public forum, I cannot share all my cards. With that being said, we continue to make important improvements in connectivity both with regards to just signing in through all sorts of network topology as well as for p2p activities like live audio and video. I think you will see improvements in how developers can interact with the client via plugins, which means that users will have cool add ons and extensions to make their AIM experience more fun. Tighter integration with mobile messaging is in the works, as well as handling all different types of mobile data. Like I said, it is not fun being vague, but we are working on some good stuff that will definitely get you excited in using AIM.

Q: Is AIM coming any closer to being inter operable with GTalk?

A: I was asked this same question in Dublin at MashupCamp a few weeks ago, and I will give the same answer. Both of us continue to work on an interop solution and when there is more to share you know you will be able to find it on this blog.

Q: There haven’t been a lot of AIM custom clients. Are you planning to introduce any yourselves?

A: My team is not actively writing any new custom clients, we have AIM Lite, however we have numerous partners who are writing custom clients right now. I am not sure how many full feature AIM clients you will see on Windows, but other platforms are actively being worked upon. Hopefully our partners will be sharing some news real soon.

Here is a quick list of some custom clients:

– AIM

– AIM Lite

– AIM Pro

– Playlinc

– PCD Lounge

Q: My AIM MusicLink is still not working at all it will not show what song i am listening to through iTunes, WMP 11, or Yahoo Music Jukebox.

A: I have to say this one issue has baffled me. Here is what I am guessing is going on, first if you set yourself away and are expecting MusicLink to work, it will listen for your music, but updating the status will not work. Second, if you have installed iTunes in a directory other than the default path (c:program filesitunes) then MusicLink will not work because we need to import the interfaces to access the iTunes API. So if you have iTunes installed in a path other than the default please point it to the default and then all should work. For the other players I have tested against the latest WMP and Yahoo Music Jukebox as well as 10 of my independent testers and we have not been able to reproduce this case unless we are set as away. If you are experiencing problems what would help beyond AIM version and media player version is to make sure you note what your status is (away, idle, invisible, mobile, etc), and if you are signed in on multiple locations.

Q: Who is AIM’s chief software architect?

A: I never comment on personnel here at AOL, but from the Open AIM SDK point of view I am the lead evangelist/dev guy for Open AIM, thus the reason you will see me at conferences, etc.

Q: What do you and people from AIM dev and IM-Host dev team think about alternative clients that use directly OSCAR protocol, not AIMCC?

A: Interesting question. For those who do not know, OSCAR is AIM’s proprietary protocol for communication. OSCAR is very complex and has lots of antiquated and unused things in it, some of which are specific to AOL clients going back to AOL 5.0, and some of which are deprecated. Much like the reason why we did not open up the low layer libraries in AIM known as COOL, we feel like from an elegance and simplicity view, the Web AIM APIs and AIMCC provide a more manageable way of writing clients. In addition, things like libPurple and other libraries do not always interact with the protocol properly. Anyone notice that their buddy lists are not always displayed properly or that Adium does not do file transfer properly? As we evolve the protocol obviously things like Web AIM and AIMCC incorporate the changes immediately, while the unofficial libraries are slow to get these changes if at all.

AIM Mailbag Part I

I got a lot of questions, both on the blog and via the Wimzi widget on the right side of the blog, as a result I am going to break down the Mailbag in to two parts. Thanks for all the questions, and remember you can always ask questions not just when I am doing a mailbag. On with the questions:

Q: Could there be a way to have for privacy reasons the Cell/Mobile Icon be a preference where you can shut it off on your own will when connecting via mobile.

A: There is a preference in the Privacy Settings (AIM Buddy List Menu: Edit | Settings) to allow, or not allow others to see that you are mobile. If you uncheck that box, people will not see the icon. However if you are forwarding your IMs this preference will not work, so what happens when you set up mobile forwarding, is that you have an option of adding a group that can only send you IMs. This is accessible in the Mobile Settings accessible in the same way that Privacy Settings can be accessed. When the group is added to your buddy list, you can add buddies to the group, and only those buddies will see you online as mobile and be able to IM you. Here is the Mobile Preference window:

Q: Beta testers have been asking for actually colorized Screennames in their buddylists… like a buddy sound call it a buddy color. I am sure there is alot of technical issues to work out on that.

A: We actually have this in the API, in the IAccBartItem interface under the prop AccBartItemType_RichName. The only client that supports this is the AOL 9.0 client in both displaying the text and setting the text. What is interesting about this code is that it is very complex and a maintenance nightmare. I actually had the task of reverse engineering the protocol for this feature to support it in OpenAIM, and it was no picnic. In any case here is a screen capture of what custom colorized Screen Names in the Buddy List looks like in AOL:

I am not sure if we will ever add this to AIM/ICQ, but if we do, it will be different from the way AOL did it.

Q: You are probably sick of hearing the quesion…Is there any new info you can give on AIM for Mac?

A: (No I am not sick of hearing this question as I type from my MacBook Pro) 😉 In case you are not aware Open AIM has a full API available on Mac (Linux and Win Mobile as well). The Mac SDK contains a full Mac AIM client written by one of the engineers on my team, the only issue is that you have to compile it yourself via XCode. I am very confident that by the end of the year at the latest I will be able to share some news regarding a Mac Client.

Q: Why did you do aim 6.5 refresh instead of just going to aim 6.6 and also how come you skipped 6.2,3, and 4?

A: I wish I could say we engineers decide on version numbers for the client releases we do, but we do not. In the old days when I first started on AIM during AIM 2.5, we, the engineers, definitely tried to control the versioning based on features we added and bugs we fixed. So when we did bug fixes and minor features we would increment in tenths (AIM 3.0 to AIM 3.1). If we did a major release like when we moved to host based buddy lists we incremented by the whole number (AIM 3.5 to 4.0). In the case of Open AIM, my team chooses version numbers based on when we modify or add to the interfaces. For example when we release multiple versions of Open AIM 1.3 the differences are non-interface changes (mainly bug fixes). For the client, there is no exact reason why we skip version numbers, it may be related to business/marketing or technical reasons.

So that is the mailbag for tonight, I will get to more questions tomorrow where we will cover new features, GTalk, custom clients and the always popular why will my AIM MusicLink not work.

Mashup Help

I am a big proponent of mashups, both in music and in technology. In music, nothing beats a great rock anthem mixing it up with some hip-hop, ala Jay-Z and Linkin Park years ago. In the technology world, taking two things that were not designed to go together, and make it work, is actually kind of cool. To make Flickr work with AIM is definitely something we never had intended. In fact mashing up a COM based API and make it work with Javascript is very “Frankenstein-ish, no way engineers at Microsoft thought about that when they started writing COM/ATL years ago.”

Those who have followed my blog and what I am doing on AIM, and AOL knows that I have written a lot of code that mashes up not only AOL properties but other stuff out on the web. I have sporadically shared my code with you on the old blog, and now I want to give everyone a better access to the stuff I have written. I have set up a page where you can view the code I have written and some tutorials I have given. You can check out the page here. Use the code as a reference to help build mashups of your own with AIM and the AIM network. I will be adding some samples up on the website in the near future.

Tiny Buddy version 3.20 and AIM Fight Widget

One of the most common question I get is what are we doing with operating systems other than Windows. Most people know that the AIM core platform that my team writes is cross platform, in other words it works on Mac, Linux, and Windows Mobile operating system, and of course Windows. Even better from a cross-platform point-of-view are the Web AIM APIs, which will work everywhere.

With this in mind here are two Apple related releases to check out. The first one, TinyBuddy, is not new, but definitely a helpful little application for iPhone and iPodTouch to send quick IMs to people without incurring the SMS charges. The latest TinyBuddy version 3.20, has the following improvements:

  • Better performance for large buddy lists.
  • One less prompt on sign-in and first IM sent.
  • Better status message display (previously it did not show status messages, just away messages).
  • Better information if you are signed off because Mobile Safari suspended the page for too long (happens if you switch to another application or web page).
  • Uses Dojo 1.0 for the JavaScript toolkit.

You can check out TinyBuddy here: http://x.aim.com/ty/

Last week there was an article written by John Fronckowiak, about how he built a Mac OS X Dashboard Widget for AIM Fight. Using the AIM Fight interface John built a very slick widget that not only allows you to easily fight other SNs but also shows fighting history. Check it out here: http://www.apple.com/downloads/dashboard/justforfun/aimfight.html

New TwitterMan and Colorizer is Fixed!

I am releasing a new version of TwitterMan version 3.0 that works seemlessly in AIM 6.5. The widget, will listen for when your status updates in the AIM 6.5 client, and if you are authenticated to Twitter, will automatically update with the new status. If you are not authenticated, then the plugin will prompt you for Twitter authentication, then store the credentials for the lifetime of the session. The widget can be downloaded here, and as always feedback is appreciated. This plugin works with AIM 6.5 and better.

Many people have been pinging me this week asking why the Colorizer plugin stopped working. Well we hit the monthly rate limit on the key, which happens to be 2 Million sessions. So first thanks to everyone who is using colorizer, and second, the key is now unlimited so we should not have any more issues with it. For those who are wondering what Colorizer is, it is a plugin written by Justin Uberti back in 2005 when he and I were building JAMS (which were a suite of plugins that we wrote to test the OpenAIM API). Colorizer changes your out going IM text to appear as different colors to your buddies. Each IM results in a different color being sent.

Mashup Camp Dublin

Facing jet lag and two presentations, one on Open AIM and one on Open Auth, I really debated just staying in bed all day. I did definitely get out of bed and headed to the Guinness Storehouse to see how Europe handles the Mashup world. John Herren opened the proceedings by explaining Mashup culture and how to get started. John is the Mashup king, he won the competition in Boston earlier this year. John Musser from Programmable Web gave the keynote yesterday afternoon and dove into how the Social Media API world is exploding with new APIs on a daily basis. While heavily pimping OpenSocial, he managed to give props to others like AIM for leading the way in the messaging API world.

In my two sessions I covered the client side of Open AIM by showing how easy it is to make a plugin, and some excellent examples out there today. In addition I showed how all messaging clients are built off of Open AIM, whether it be accsample included in our SDK, or AIM Lite or AIM 6.5, at their heart they all start off the same way. I also managed to squeeze in some time to show off AIM Tunes, and was successful in streaming U2’s Where the Streets Have No Name (apropos for Dublin, since street signs are non-existent) from my computer in Bethesda, Maryland across the Atlantic over conference WiFi in the Guinness Storehouse. Needless to say, that demo got a round of applause.

Since we are at the most famous brewery in all of the world, we were given free Guinness and a trip to the top of the factory for beers at the Gravity Bar and a view of Dublin. Coming up today is a presentation by fellow AIM-er Stephen Benedict where he will talk about Open AIM via the Web AIM APIs.

Gravity Bar @ Guinness Storehouse

Gravity Bar @ The Guinness Storehouse

Presenting on Open AIM Bots

Presenting on Open AIM Bots

Thoughts from across the pond.

I am over in Dublin for the weekend to give a couple of presentations at MashupCamp, and to do a presentation at our AOL offices. If you are in the Dublin area or at the conference make sure to stick around until after lunch, have a beer, and come listen to a talk about Open AIM and OpenAuth.

I already see there is some feedback on the latest AIM MusicLink I released on Thursday, and I have tried reproducing a few of the issues reported. Namely that iTunes 7.5 results in the song playing not appearing in your status or profile. I downloaded iTunes 7.5.0.20 and with the latest AIM MusicLink and the latest AIM client, I had no issues. I am planning on looking at Windows Media Player 11 to see if something broke, but again it is an API that SHOULD be backward compatible. Make sure you are setting your preferences, and that you are not setting yourself as away, and everything should be working.

I will be posting my presentations from today on the blog later today so check back tomorrow and they will be up there. In addition, I have added some of my older presentations from 2006 to page, so if you want to see what was going on back then, you can now reference them.

New AIM MusicLink

UPDATE 6/9/08 11:00PM EST – The latest AIM MusicLink can be found at the home of AIM MusicLink. (http://www.gregsmind.com/musiclink)

I finished up a new version of AIM MusicLink version 2.0.0.4 last night based on feedback I was getting on the previous release. In version 2.0.0.4, I have added support for MediaMonkey, so AIM MusicLink now supports 7 different media players:

  • iTunes
  • WinAmp (version 5.5)
  • Windows MediaPlayer (version 10+)
  • Yahoo Jukebox
  • Real Player
  • Songbird (must manually install included extension)
  • MediaMonkey

I have also fixed a few bugs. First the situation of the first character being cut off. I had real trouble reproducing a case where I saw this, but I figured during streaming of music to WinAmp or Yahoo is where this would occur. In addition I fixed a problem where your status could be set to “[Buffering…” if you were listening to AIM Tunes songs in WinAmp. I also added an “About” screen via the new IAccCommand flag AccCommandFlag_AboutUi.

Here is the new about screen:

To access the preferences click the actions menu as shown and choose “AIM MusicLink Preferences”

Once you set the preferences you will start seeing your status and profile updated like this:

You can download the plugin here and as always I appreciate any feedback you guys have.

Open AIM 1.5

We posted Open AIM 1.5 today on developer.aim.com. This new update represents the same Open AIM engine that AIM 6.5 launched with earlier this month. Here are some of the changes we have made from Open AIM 1.3, the full release notes can be found here:

  • In the Java Wrapper we updated to current AIMCC APIs.
  • Support for sub menu plugin commands, so now you can have a plugin command menu item that is a fly out. (Note that the AIM 6.5 client will be adding this support in the next release, so you will not see sub menus until that release.)
  • Added a new property for user and session called AvTrack. This property is used for extended info for the current video or audio track that is playing in your media player.
  • In addition to the property we added for AvTrack, we added an interface for the AvTrack so you can pass up the data easily to the host.

As always the SDK contains plenty of samples and our documentation is live on the web here. If you have questions or feedback you can leave them on our message boards.

Are We Still Doing AIM Betas?

The most popular question I have been getting lately has been regarding AIM Betas and whether we will be releasing betas in the future. I guess it has been made known that some members of our beta team were impacted by last month’s changes. In my 8+ years working on AIM we always have done betas and I can assure you this will continue. We will still be getting your feedback via the usual channels, beta.aol.com, my blog, forums, and Report-A-Bug. In fact we are working on a release right now, and it will makes it way out the door very soon. I encourage everyone if they have questions to leave comments below or send me an IM using AIM Wimzi on the right side of the screen. Next week we will have some Open AIM news. Have a great weekend, and enjoy Super Bowl 41.5 tomorrow.