Talk to Bob via the Internet by running the interactive script. Press Ctrl-C to quit.
use strict;
use warnings;
use HTTP::Request;
use LWP::UserAgent;
use HTML::Form;
print "Initializing...\n\n";
my $agent = "Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.4) Gecko/2003
+0624";
my $url = "http://www.pandorabots.com/pandora/talk?botid=e48a36fe6e34d
+0a6";
my $form = initform($agent, $url);
my $reply = getreply("hi there", $form);
print "Bob says> $reply\n\n";
print " You say> ";
while (<STDIN>) {
$reply = getreply($_, $form);
print "Bob says> $reply\n\n";
print " You say> ";
}
sub initform {
my ($agent, $url) = @_;
my $ua = new LWP::UserAgent(agent=>$agent);
my $request = new HTTP::Request('GET', $url);
my $response = $ua->request($request);
my $html = $response->content;
my $form = HTML::Form->parse($html, $url);
return $form;
}
sub getreply {
my ($msg, $form) = @_;
$form->value(message => $msg);
my $response = LWP::UserAgent->new->request($form->click);
my $reply = $response->content;
$reply =~ /<b>mytest:<\/b>\s*(.*?)<br>/s;
return $1;
}