rendered paste body#!/usr/bin/perl -w
use Irssi;
use XML::Simple;
use LWP::Simple;
sub evt_own {
my($server,$text,$channel,$hostmask)=@_;
csekk_youtube($server,$text,$channel);
}
sub evt_other {
my($server,$text,$nick,$hostmask,$channel)=@_;
csekk_youtube($server,$text,$channel);
}
sub csekk_youtube
{
my($server,$text,$channel)=@_;
if ($text =~ m/youtube\.com|youtu\.be/ )
{
my $d;
$text =~ /(v=|be\/|\/v\/)(.{11})/;
my $match;
if ($2 eq "") {
$match = "boo";
}
else {
$match = $2;
}
if($d = get("http://gdata.youtube.com/feeds/api/videos/" . $match ))
{
if($d ne "Invalid id")
{
my $xml = new XML::Simple;
my $meta = $xml->XMLin($d);
$server->command("MSG $channel de hiszen ez " . $meta->{title}->{content} );
}
else
{
Irssi::print("invalid id: $text");
}
}
else
{
Irssi::print("connect failed / invalid id / not yt link: " . $text);
}
}
}
Irssi::signal_add_last("message public", "evt_other");
Irssi::signal_add_last("message own_public", "evt_own");