view plugins/test.pl @ 8808:bbd8cdaf0ad5

[gaim-migrate @ 9570] A massive patch by shx to reorganize MSN some more and add command processor support. This allows us to do cool things like produce more detailed error messages. For example, the Invalid Username dialog now shows the username of the invalid user. I modified the aforementioned dialog so it'll look a little nicer looking, and also mention the account this happened on. It also removes the user from your blist, as there's no point to keeping the user on there. committer: Tailor Script <tailor@pidgin.im>
author Christian Hammond <chipx86@chipx86.com>
date Sun, 25 Apr 2004 22:02:06 +0000
parents b1ea29d1293e
children
line wrap: on
line source

#!/usr/bin/perl -w

use Gaim;

%PLUGIN_INFO = (
	perl_api_version => 2,
	name             => 'Test Perl Plugin',
	version          => '1.0',
	summary          => 'Provides as a test base for the perl plugin.',
	description      => 'Provides as a test base for the perl plugin.',
	author           => 'Christian Hammond <chipx86@gnupdate.org>',
	url              => 'http://gaim.sf.net/',

	load             => "plugin_load",
	unload           => "plugin_unload"
);

sub account_away_cb {
	Gaim::debug_info("perl test plugin", "In account_away_cb\n");

	my ($account, $state, $message, $data) = @_;

	Gaim::debug_info("perl test plugin", "Account " .
	                 $account->get_username() . " went away.\n");
	Gaim::debug_info("perl test plugin", $data . "\n");
}

sub plugin_init {
	return %PLUGIN_INFO;
}

sub plugin_load {
	Gaim::debug_info("perl test plugin", "plugin_load\n");
	my $plugin = shift;

	Gaim::debug_info("perl test plugin", "Listing accounts.\n");
	foreach $account (Gaim::accounts()) {
		Gaim::debug_info("perl test plugin", $account->get_username() . "\n");
	}

	Gaim::debug_info("perl test plugin", "Listing buddy list.\n");
	foreach $group (Gaim::BuddyList::groups()) {
		Gaim::debug_info("perl test plugin",
		                 $group->get_name() . ":\n");

		foreach $buddy ($group->buddies()) {
			Gaim::debug_info("perl test plugin",
			                 "  " . $buddy->get_name() . "\n");
		}
	}

	Gaim::signal_connect(Gaim::Accounts::handle, "account-away",
	                     $plugin, \&account_away_cb, "test");
}

sub plugin_unload {
	my $plugin = shift;
}