Posts Tagged ‘Plugin’

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.

AccEx C++ Library R3

Sunday, February 8th, 2009

AccEx Library for Open AIM DevelopersA new release of the AccEx library is now available. This is a library of functions and classes for C++ based Open AIM clients and plugins using the AIM SDK.

This release adds three new classes.

AccEx::CAccExPluginPreferences

This class wraps an AccEx::CAccExPreferences object to help you manage the reserved name space for preferences in a plugin. Open AIM Plugins can keep any number of preferences under the “aimcc.plugin.__GUID__.prefs.__PREF__” key specifier where __GUID__ is your plugin key and __PREF__ is any alphanumeric name for your preference.

The class is initialized with a pointer to the session and the plugin’s CLSID. It builds the base preference specifier for the plugin and gives you easy access to the preferences under it. The class also has methods to let you test if a given specifier is in the plugin’s name space and is of a particular preference. The GetPref() and SetPref() methods are identical to that of AccEx::CAccExPreferences with the only exception that you use the __PREF__ suffix rather than the full specifier.

AccEx::CAccExDAccEventSink

This class helps you implement your own DAccEvents handler. It differs from a the CAccEventSink supplied by the Open AIM SDK in a number of ways.

  1. Supports ATL
  2. Adds an OnPreEventMapFilter() function that you can use to filter out events
  3. Adds an OnUnknownDispId() function that you can use to catch unhandled events
  4. Wraps all calls to your handler functions in an exception handler
  5. Adds an OnException() function that is called when an exception occurs
  6. Event handlers are not virtual functions
  7. Does not implement the IAccSession manager (See: AccEx::CAccExIAccSessionArray)

AccEx::CAccExIAccSessionArray

This class helps you keep track of up to 10 IAccSession objects. The purpose of this class is to encapsulate the management of these interfaces in an array along with their connection point cookie. You can add, remove, and find sessions. There are handy methods to get the first session, also known as the primary session, check if the array is empty, and check if a session is already registered.

You can download the latest release and get more information at the AccEx page.

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.

Easy tool for generating AIM plugin fingerprints

Sunday, December 7th, 2008

Ever wanted a command line version of acchash.exe that simply displays the fingerprint and copies it to the clipboard without any mouse clicks?

Here you go:

use Digest::SHA;
use Win32::Clipboard;
 
$file = shift;
 
if ( -e $file && -f $file )
{
   $hash = uc( Digest::SHA->new(256)->addfile($file, 'b')->hexdigest );
   print "Plugin Fingerprint for '$file' (copied to clipboard): $hash\n";
   Win32::Clipboard()->Set( $hash );
}
else
{
   print "Usage: gushash [plugin_file_to_hash]\n";
}

Save this as gushash.pl in a location where your command shell can find it.

You will need Perl and the Digest-SHA package to use this script. The latter can be obtained through the ppm (Perl Package Manager) tool that is installed with Perl.

I’m always making little tools like this in Perl and Python to help me automate stuff.

This is here in case someone finds it useful…

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.