All pastes #1641830 Raw Edit

clueless

public text v1 · immutable
#1641830 ·published 2009-10-24 18:40 UTC
rendered paste body
package LinuxRulz::Bot::Plugin::HTTPDPlugin;use Moses::Plugin;use namespace::autoclean;use Data::Dumper;use POE::Component::Server::HTTP;use HTTP::Status;with "LinuxRulz::Bot::Role::Plugin";has _httpdaliases => (    isa        => 'HashRef',    accessor   => 'httpdaliases',    lazy_build => 1,);sub _build__httpdaliases {	POE::Component::Server::HTTP->new(    	Port => 8000,    	ContentHandler => {        	'/' => \&handler,		},		Headers => { Server => 'My Server' },	);}sub handler {	my ($request, $response) = @_;    $response->code(RC_OK);    $response->content("Hi, you fetched ". $request->uri);    return RC_OK;}sub S_plugin_add  {	my ( $self, $irc ) = @_;		return PCI_EAT_ALL;}sub S_msg {    my ( $self, $irc, $nickstr, $target, $msg ) = @_;	return $self->handle_message($irc, $$nickstr, $$target, "priv", $$msg);    return PCI_EAT_NONE;}sub S_bot_addressed {    my ( $self, $irc, $nickstr, $channel, $msg ) = @_;		return $self->handle_message($irc, $$nickstr, $$channel, "chan", $$msg);	    return PCI_EAT_NONE;}sub handle_message {	my ( $self, $irc, $nickstr, $where, $source, $message ) = @_;    my ($nick) = split /!/, $nickstr;	if($message =~ /^!testhttpd$/)	{		$self->send_msg($irc, $nickstr, $where, $source, "Test");	}	return PCI_EAT_NONE;}__PACKAGE__->meta->add_method( S_public => \&S_bot_addressed );1;