POE::C...:Hailo(3pm)

πŸ“¦
version 6.95 Β· 4 versions
, in ubuntu resolute, ubuntu stonking

πŸ‘‘ POE::Component::IRC::Cookbook::Hailo πŸ’–

okay bestie, welcome to POE::C...:Hailo(3pm), which is the terminal's little nickname for POE::Component::IRC::Cookbook::Hailo β€” it lives in the User Contributed Perl Documentation corner of your system and it is, and I cannot stress this enough, a blabbering IRC bot. like. a bot. that blabbers. iconic behavior honestly πŸ’…


✨ NAME ✨

POE::Component::IRC::Cookbook::Hailo β€” a blabbering IRC bot πŸ¦‹

no cap, that's literally the whole pitch. she talks. that's the job. πŸŽ€


🌸 SYNOPSIS 🌸

so this bot uses POE::Component::IRC::Plugin::Hailo for most of its magic ✨ β€” that plugin is doing the heavy lifting, the recipe is just the vibe around it.

ngl bestie, as of yet, this recipe just contains a SYNOPSIS that is copied from its documentation. like, that's it. that's the whole recipe. fr fr. πŸ™ˆ


πŸ’œ DESCRIPTION πŸ’œ

here's the whole thing, verbatim, no edits, because we do not touch the code in this house 🫢

#!/usr/bin/env perl

use strict;
use warnings;
use POE;
use POE::Component::IRC::Plugin::AutoJoin;
use POE::Component::IRC::Plugin::Connector;
use POE::Component::IRC::Plugin::Hailo;
use POE::Component::IRC::State;

my $irc = POE::Component::IRC::State->spawn(
    nick   => 'Brainy',
    server => 'irc.freenode.net',
);

my @channels = ('#public_chan', '#bot_chan');

$irc->plugin_add('AutoJoin', POE::Component::IRC::Plugin::AutoJoin->new(Channels => \@channels));
$irc->plugin_add('Connector', POE::Component::IRC::Plugin::Connector->new());
$irc->plugin_add('Hailo', POE::Component::IRC::Plugin::Hailo->new(
    Own_channel    => '#bot_chan',
    Ignore_regexes => [ qr{\w+://\w} ], # ignore lines containing URLs
    Hailo_args     => {
        brain_resource => 'brain.sqlite',
    },
));

$irc->yield('connect');
$poe_kernel->run();

quick tour because I know you're gonna ask 🧚:

  • nick => 'Brainy' and server => 'irc.freenode.net' β€” she's named Brainy and she hangs out on irc.freenode.net. main character energy tbh.
  • my @channels = ('#public_chan', '#bot_chan'); β€” the two channels in her little universe πŸ‘‘
  • plugin_add('AutoJoin', ...AutoJoin->new(Channels => \@channels)) β€” she joins @channels automatically, no manual labor πŸ’…
  • plugin_add('Connector', ...Connector->new()) β€” the Connector plugin keeps her connected. very much her emotional support plugin.
  • plugin_add('Hailo', ...Hailo->new(...)) β€” the star of the show, with Own_channel => '#bot_chan', Ignore_regexes => [ qr{\w+://\w} ] (which, as the comment says, ignores lines containing URLs β€” she is not clicking your links, bestie πŸ’€), and Hailo_args => { brain_resource => 'brain.sqlite' } for her literal brain 🧠
  • $irc->yield('connect'); then $poe_kernel->run(); β€” connect, then run the POE kernel forever. periodt. πŸ”₯

πŸŽ€ AUTHOR πŸŽ€

Hinrik Γ–rn SigurΓ°sson, hinrik.sig@gmail.com β€” thank you for your service, king πŸ«‘πŸ’–


okay that's the whole page, you ate it, you read it, you understood it ⭐ one last thing: this was perl v5.40.1, dated 2025-08-21, and the man page's own header/footer were just calling her POE::C...:Hailo(3pm) the whole time because she's too fabulous for a full name in a terminal margin πŸ’… bye bestie, go build a blabbering bot 🌈

πŸ“¦ where this page comes from