Archive for the ‘CoreWitness’ Category

CoreWitness 1.3.0

Monday, March 9th, 2009

CoreWitness Plug-inI just released an update to my CoreWitness plugin. This minor release adds the showing of the current preference value in the OnPreferenceChanged and OnPreferenceInvalid events. Here is a sample trace I get when I toggle all the check boxes in the privacy tab off, click apply, and then check them again and click save:

01:58.754 [gusblog  ] DAccEvents::OnPreferenceChange - 'aimcc.Privacy.DiscloseTypingStatus'
   new value = No
01:58.755 [gusblog  ] DAccEvents::OnPreferenceChange - 'aimcc.privacy.discloseBuddyFeed'
   new value = No
01:58.764 [gusblog  ] DAccEvents::OnPreferenceChange - 'aimcc.Privacy.DiscloseIdleTime'
   new value = No
01:58.777 [gusblog  ] DAccEvents::OnPreferenceChange - 'aimcc.privacy.disclosePluginsToBuddyFeed'
   new value = No
01:58.777 [gusblog  ] DAccEvents::OnPreferenceChange - 'aimcc.Privacy.DiscloseWireless'
   new value = No
02:03.859 [gusblog  ] DAccEvents::OnPreferenceChange - 'aimcc.Privacy.DiscloseTypingStatus'
   new value = Yes
02:03.860 [gusblog  ] DAccEvents::OnPreferenceChange - 'aimcc.privacy.discloseBuddyFeed'
   new value = Yes
02:03.868 [gusblog  ] DAccEvents::OnPreferenceChange - 'aimcc.Privacy.DiscloseIdleTime'
   new value = Yes
02:03.869 [gusblog  ] DAccEvents::OnPreferenceChange - 'aimcc.Privacy.DiscloseWireless'
   new value = Yes
02:03.869 [gusblog  ] DAccEvents::OnPreferenceChange - 'aimcc.privacy.disclosePluginsToBuddyFeed'
   new value = Yes

You can get the latest version here.

Please note that activation of the CoreWitness plugin is now automatic. No registration is needed.

This is a free plugin for Open AIM developers.

Tip on Finding Preferences in Open AIM

Tuesday, January 13th, 2009

Every now and then I have to look up a preference specifier in AIM in order to use it in a plugin.

For example, the other day I wanted to determine if the user has enabled the pushing of AIM Plugins to their buddy feed. I usually check in technote 10 on preferences in the AIM SDK technotes. However, you can also do this empirically in AIM with my CoreWitness plugin. All ‘aimcc.*’ preference changes will cause the OnPreferenceChanged event to fire on all listeners so you can simply make a change in the client to see what preference specifier is changing.

To make it easier, the latest version of my CoreWitness plugin lets you filter the messages being logged by pressing the * button in the title bar. To filter the log to just the OnPreferenceChanged event, open the filter dialog and proceed as follows. Click on the ‘clear all’ button and then start typing the word “preference” in the filter edit box until you see “OnPreferenceChange” appear in the list. Select this event and click OK. Here is a screen shot of this step:

DAccEvents Monitor Filter

After doing the above, I changed the ‘I have installed a new AIM Plugin’ check box in the privacy tab of AIM 6.9’s Settings and clicked apply. Here is a screen shot of my results:

As you can see the preference is called ‘aimcc.privacy.disclosePluginsToBuddyFeed’. Finding the preference specifier is only the beginning. I will cover how to read it in a future post.

NOTE: This will only work for aimcc.* preferences. So it is possible that you can make a change in the settings that does not get notified via OnPreferenceChange because it is internal to the client. Internal preferences are not available to pluigns at this time.

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.

CoreWitness 1.0.7 Shipped

Monday, July 28th, 2008

I have updated the CoreWitness Plugin. This version has two new features called DAccEvents Wizard and Symbol Lookup.

The DAccEvents Wizard helps you generate the code needed to handle Open AIM events in your own clients and plugins. It can generate code in C++ and JavaScript. The latter is useful for developing AMO plugins.

The Symbol Lookup window lets you quickly find the value of a particular constant. You can search by entering a partial name to see all the symbols containing that name. Or, you can do a reverse look up by entering a numeric value to see all the symbols with that value. You can click on any of the static text elements under the list box to copy the text to the clipboard. Clicking on the symbol’s name will copy an assignment statement to the clipboard.

You can find more information including screen shots and a download link here.

CoreWitness 1.0.3

Tuesday, August 21st, 2007

I just released an updated version of the CoreWitness plug-in.

This version adds support for the AIM SDK version 1.3.0 while maintaining backwards compatibility to prior versions. AIM 6.1 uses the AIM SDK Version 1.2.4 while the latest AIM 6.2 beta uses version 1.3.0.

I also added support to dump the contents of the buddy list via the “bl” command. Just open an IM to yourself and send it to see the data in the log window.

IMHO, this is a must have plug-in for developing Open AIM clients and plug-ins. I wouldn’t write a plug-in or develop a client with out it.

Your comments and suggestions are always welcome.

Enjoy.

A Few Good Updates…

Monday, March 5th, 2007

IM Control PanelJust a quick post to let you know that I have updated my IM Control Panel and CoreWitness plugin. Basically, the IM Control Panel now supports AIM 6.1 and I added more details in the logging for secondary sessions in my CoreWitness plugin. See the respective links for more details.

I want to thank you all for your privately sent comments and suggestions for my RX-Plugin. I am prioritizing my list of new features to add and will be working on them soon. No ETA on when this will be out.

Finally, plugins 3 and 4 (as I am calling them) are in the early stages of development they should be interesting when they are done later this year.

CoreWitness Plug-in Update

Friday, February 16th, 2007

CoreWitness Plug-inWhile I have not posted on this plug-in since I announced it back in December, I have been uploading minor improvements as soon as they were working. This plug-in is a great way to visualize how the Open AIM SDK works by observing the sequence of events it receives.

I highly recommend the CoreWitness plug-in if you are planning on developing your own custom AIM clients and plug-ins. You can register and download the latest version here.

Feel free to leave any comments on questions you may have about the plug-in or the traces it produces.

Announcing The CoreWitness Plug-in for Open AIM

Sunday, December 3rd, 2006

This plug-in is a visualizer of sorts—in a “green-matrixy” sort of way. It logs all the calls that come from the IAccSession event source interface in the Open AIM SDK. This is a great way to learn about the Open AIM API and see how it works. It is also a great tool to help you debug your own clients and plug-ins.

All the enumerated types are decoded and shown using their symbolic names. The current state of some of the relevant objects like: BART items, messages, users, alerts and plugin information are also shown under certain conditions.

You can open the plug-in’s settings window from your client’s plug-in manager. It can also be opened it from the right-click context menu of the plug-in’s log window which is available in the actions menu on the buddy list as “Open CoreWitness Window”.

Here are two screen shots (click to see larger images):

CoreWitness Log Window and Context Menu

CoreWitness Settings Window

You can download this plug-in here. Please give it a try and let me know if you have any suggestions on how I could improve it. Thanks.