Provided by: libbot-basicbot-pluggable-perl_0.98-2_all bug

NAME

       Bot::BasicBot::Pluggable::Module::Infobot - infobot clone redone in B::B::P.

VERSION

       version 0.98

SYNOPSIS

       Does infobot things - basically remembers and returns factoids. Will ask another infobot about factoids
       that it doesn't know about, if you want. Due to persistent heckling from the peanut gallery, does things
       pretty much exactly like the classic infobot, even when they're not necessarily that useful (for example,
       saying "Okay." rather than "OK, water is wet."). Further infobot backwards compatibility is available
       through additional packages such as Bot::BasicBot::Pluggable::Module::Foldoc.

IRC USAGE

       The following examples assume you're running Infobot with its defaults settings, which require the bot to
       be addressed before learning factoids or answering queries. Modify these settings with the Vars below.

         <user> bot: water is wet.
          <bot> user: okay.
         <user> bot: water?
          <bot> user: water is wet.
         <user> bot: water is also blue.
          <bot> user: okay.
         <user> bot: water?
          <bot> user: water is wet or blue.
         <user> bot: no, water is translucent.
          <bot> user: okay.
         <user> bot: water?
          <bot> user: water is translucent.
         <user> bot: forget water.
          <bot> user: I forgot about water.
         <user> bot: water?
          <bot> user: No clue. Sorry.

       A fact that begins with "<reply>" will have the "<noun> is" stripped:

         <user> bot: what happen is <reply>somebody set us up the bomb.
          <bot> user: okay.
         <user> bot: what happen?
          <bot> user: somebody set us up the bomb.

       A fact that begins "<action>" will be emoted as a response:

         <user> bot: be funny is <action>dances silly.
          <bot> user: okay.
         <user> bot: be funny?
           * bot dances silly.

       Pipes ("|") indicate different possible answers, picked at random:

         <user> bot: dice is one|two|three|four|five|six
          <bot> user: okay.
         <user> bot: dice?
          <bot> user: two.
         <user> bot: dice?
          <bot> user: four.

       You can also use RSS feeds as a response:

         <user> bot: jerakeen.org is <rss="http://jerakeen.org/rss">.
          <bot> user: okay.
         <user> bot: jerakeen.org?
          <bot> user: jerakeen.org is <item>; <item>; etc....

       You can also ask the bot to learn a factoid from another bot, as follows:

         <user> bot: ask bot2 about fact.
          <bot> user: asking bot2 about fact...
         <user> bot: fact?
          <bot> user: fact is very boring.

       Finally, you can privmsg the bot to search for particular facts:

         <user> search for options.
          <bot> I know about 'options indexes', 'charsetoptions override', etc....

METHODS

VARS

       min_length
           Defaults to 3; the minimum length a factoid, or inquiry, must be before recognizing it.

       max_length
           Defaults to 25; the maximum length a factoid, or inquiry, can be before ignoring it.

       num_results
           Defaults to 20; the number of facts to return for "search for <term>" privmsg.

       passive_answer
           Defaults to 0; when enabled, the bot will answer factoids without being addressed.

       passive_learn
           Defaults to 0; when enabled, the bot will learn factoids without being addressed.

       require_question
           Defaults to 1; determines whether the bot requires a question mark before responding to a factoid.
           When enabled, the question mark is required (ie. "water?").  When disabled, the question mark is
           entirely optional (ie. "water" would also produce a response).

       stopwords
           A comma-, space-, or pipe- separated list of words the bot should not learn or answer. This prevents
           such insanity as the learning of "where is the store?" and "how is your mother?" The default list of
           stopwords contains "here", "how", "it", "something", "that", "this", "what", "when", "where",
           "which", "who" and "why").

       unknown_responses
           A pipe-separated list of responses the bot will randomly choose from when it doesn't know the answer
           to a question. The default list of response contains "Dunno.", "I give up.", "I have no idea.", "No
           clue. Sorry.", "Search me, bub.", and "Sorry, I don't know."

       allow_searching
           Defaults to 0.

           Searching on large factoid lists is ... problematic.

       http_timeout
           Time in seconds for an http request to timeout. When this value is set to a very high value, a slow
           site can disconnect a bot by blocking it. Defaults to 10.

       rss_items
           Maximal numbers of items returns when using RSS feeds. Defaults to 5.

BUGS

       "is also" doesn't work on <reply>s (ie. "<bot> cheetahs! or <reply>monkies.")

       "is also" doesn't work on <action>s (same as the previous bug, hobo.)

       The pipe syntax for random replies doesn't actually work. At all. Um.

       We should probably make a "choose_random_response" function.

       "<bot>?" fails, due to removal of <bot> name from $mess->body.

       "ask" syntax doesn't work in a private message.

       The tab stops are set to 2, not 4. OHMYGOD.

       If a "search" fails, the bot doesn't tell you.

       "search" is case-sensitive.

       If Title module is loaded, <rss> factoids don't work cos of told/fallback.

REQUIREMENTS

       URI

       LWP::Simple

       XML::Feed

AUTHOR

       Mario Domgoergen <mdom@cpan.org>

       This program is free software; you can redistribute it and/or modify it under the same terms as Perl
       itself.