view libpurple/plugins/mono/GetBuddyBack.cs @ 27168:463ed40d4031

Deal with buddies on MSN more gracefully. Look ahead to see if we have information about the protocol of the buddy, because by the time we process the protocol, we may have done too many other things, e.g. update status, set idleness etc., which means the real buddy doesn't get updated properly.
author Sadrul Habib Chowdhury <imadil@gmail.com>
date Wed, 24 Jun 2009 08:17:33 +0000
parents 80ee585fb53c
children
line wrap: on
line source

using Purple;

public class GetBuddyBack : Plugin
{
	private static PluginInfo info = new PluginInfo("mono-buddyback", "C# Get Buddy Back", "0.1", "Prints when a Buddy returns", "Longer Description", "Eoin Coffey", "urled");

	public GetBuddyBack()
		: base (info)
	{
	}

	public void HandleSig(object[] args)
	{
		Buddy buddy = (Buddy)args[0];
		
		Debug.debug(Debug.INFO, "buddyback", "buddy " + buddy.Name + " is back!\n");
	}
	
	public override void Load()
	{
		Debug.debug(Debug.INFO, "buddyback", "loading...\n");
		
		/*Signal.connect(BuddyList.GetHandle(), this, "buddy-back", new Signal.Handler(HandleSig));*/
		BuddyList.OnBuddyStatusChanged.connect(this, new Signal.Handler(HandleSig));
	}
	
	public override void Unload()
	{
	}
	
	public override void Destroy()
	{
	}
}