use strict;
use vars qw($VERSION %IRSSI);
use Irssi;
$VERSION = '1.00';
%IRSSI = (
authors => 'tobbez',
contact => 'tobbez@ryara.net',
name => 'Last.fm now playing',
description => 'Fethes the currently playing track and prints it to the current channel.',
license => 'MIT',
);
my $lastfmuser = "USERNAME";
sub getNp {
my ($args, $server, $target) = @_;
my ($raw_data);
$raw_data = `curl --silent http://www.last.fm/user/$lastfmuser | grep -A 1 '
' | head -n2 | tail -n1 | sed -e 's#<[^>]*>##g' | sed 's#^[\ \t]*##' | recode utf-8..iso-8859-1`;
if($raw_data eq "Add this track to your playlist")
{
Irssi::print "Nothing playing!";
return;
}
if(!$server || !$server->{connected}) # are we even connected?
{
Irssi::print $raw_data;
return;
}
if($args)
{
$server->command("msg $args $raw_data");
}
else
{
Irssi::active_win()->command('say ' . $raw_data) || Irssi::print $raw_data;
}
}
Irssi::command_bind('np', 'getNp');
|