Code: Select all
#!"C:\xampp\perl\bin\perl.exe"
# tv.cgi
#print "Content-type: text/plain\n\n";
use warnings;
use strict;
use Net::UPnP::ControlPoint;
my $upnp = Net::UPnP::ControlPoint->new();
my @devs = $upnp->search();
my $tv;
foreach my $dev ( @devs )
{
foreach my $serv ( $dev->getservicelist() )
{
if ( $serv->getservicetype() =~ /TVAgent/ )
{
$tv = $serv;
last;
}
}
}
die "TVAgent not found\n" unless $tv;
my $res = action( 'GetCurrentExternalSource' );
print "?????";
print "$res->{CurrentExternalSource}";
print "%%%%%";
if($res->{CurrentExternalSource} == 'TV')
{
$res = action( 'GetCurrentMainTVChannel' );
if($res->{CurrentChannel} =~ /<MajorCh>(.+?)<\/MajorCh>/)
{
print "$1";
print "@@@@@";
}else{
print "Something went wrong";
}
}
exit 0;
# -----------------------------------------------------------------------------
sub action
{
my ( $act, $args ) = @_;
my $r = $tv->postaction( $act, $args );
unless ( 200 == $r->getstatuscode() )
{
die "Error $act: ". $r->getstatuscode()."\n";
}
my $res = $r->getargumentlist();
unless ( 'OK' eq $res->{Result} )
{
die "Error $act response $res->{Result}\n";
}
return $res;
}
# -----------------------------------------------------------------------------
__END__
And? How do i open .dat files? eg. the channel list from GetChannelListURL?
Cheers!