AOLserver-CtrlPort

 view release on metacpan or  search on metacpan

lib/AOLserver/CtrlPort.pm  view on Meta::CPAN

    my $t = Net::Telnet->new(%options);

    DEBUG("Connecting to port=$options{Host}:$options{Port}");
    $t->open();

    my $self = { telnet => $t,
               };

    $t->login("", "");

    DEBUG("Waiting for prompt");
    $t->waitfor();

    bless $self, $class;
}

=item $conn->send_cmds("$cmd1\ncmd2\n...")

Send one or more commands, separated by newlines, AOLserver's
control port. The method will return the server's response as a string.
Typically, this will look like

    $out = $conn->send_cmds(<<EOT);
        info tclversion
        info commands
    EOT

and return the newline-separated response as a single string.

=cut

############################################################
sub send_cmds {
############################################################
    my ($self, $lines) = @_;

    my $output = "";
    my $line_output;

    for (split "\n", $lines) {
        DEBUG("Send: [$_]");
        $line_output = join "", $self->{telnet}->cmd("$_");
        # Last line is the prompt, scrap it
        $line_output =~ s/^.*\Z//m;
        DEBUG("Recv: [$line_output]");
        $output .= $line_output;
    }

    return $output;
}

1;

=back

=head1 Debugging

AOLserver::CtrlPort is Log4perl enabled. If your scripts don't do 
what you want and you need to find out which messages are being sent
back and forth, you can easily bump up AOLserver::CtrlPort's
internal debugging level by saying something like

    use Log::Log4perl qw(:easy);
    Log::Log4perl->easy_init($DEBUG);

in your test script before any AOLserver::CtrlPort commands are called.

Please check out the Log::Log4perl documentation for details.

=head1 AUTHOR

Mike Schilli, 2004, m@perlmeister.com

=cut



( run in 2.834 seconds using v1.01-cache-2.11-cpan-13bb782fe5a )