#!/usr/bin/perl use strict; use URI::Escape qw(uri_unescape); my @data; sub GetVars { my $tmp; push(@data,DCOPGrab('amarok player totalTime')); $tmp = DCOPGrab('amarok player bitrate'); $tmp =~ s/ kbps//; push(@data,$tmp); push(@data,DCOPGrab('amarok player sampleRate')); push(@data,DCOPGrab('amarok player artist')); push(@data,DCOPGrab('amarok player album')); push(@data,DCOPGrab('amarok player title')); push(@data,DCOPGrab('amarok player type')); push(@data,DCOPGrab('amarok player year')); push(@data,DCOPGrab('amarok player genre')); # this a stream or not? $tmp = DCOPGrab('amarok player encodedURL'); $tmp = uri_unescape($tmp); if($tmp !~ m/^file\:/) { push(@data,1); } else { push(@data,0); } } sub GetStatus { my $check = DCOPGrab('amarok player isPlaying'); unless($check eq 'true') { Irssi::print("No song playing!"); return 0; } else { return 1; } } sub DCOPGrab { my $dcopline = shift; my $dcopreturn = qx{dcop --user nhewitt $dcopline}; chomp($dcopreturn); $dcopreturn =~ s/\t//g; return $dcopreturn; } if(GetStatus()) { GetVars(); my $c = @data; foreach(@data) { print $_; if($c>1) { print "\t"; $c--; } } }