matabot, branch HEADa silly irc bot
f94e98fd6f9486cc5452fee1347e21ec0c486ea42026-04-05T03:01:45Z2026-04-05T03:01:45Zpublic domain itnoodlenoodle@pastanoggin.comcommit f94e98fd6f9486cc5452fee1347e21ec0c486ea4
parent bb2ae5913b6b8c7eccc4c6311a0cdcaa5f2d9a78
Author: noodle <noodle@pastanoggin.com>
Date: Sun, 5 Apr 2026 03:01:45 +0000
public domain it
bb2ae5913b6b8c7eccc4c6311a0cdcaa5f2d9a782026-04-05T02:56:30Z2026-04-05T02:56:30Zchange script and project name to matabot.pl and matabot.git, respectivelynoodlenoodle@pastanoggin.comcommit bb2ae5913b6b8c7eccc4c6311a0cdcaa5f2d9a78
parent 5169add85db2bafc6dc680db0206d6b6a499dd95
Author: noodle <noodle@pastanoggin.com>
Date: Sun, 5 Apr 2026 02:56:30 +0000
change script and project name to matabot.pl and matabot.git, respectively
5169add85db2bafc6dc680db0206d6b6a499dd952026-01-15T18:05:53Z2026-01-15T18:05:53Zmatabot.8: document the RSS feature and add more infonoodlenoodle@pastanoggin.comcommit 5169add85db2bafc6dc680db0206d6b6a499dd95
parent 16d0d03f980f192b1d5fbb3efbce9ed1aaf2f1ed
Author: noodle <noodle@pastanoggin.com>
Date: Thu, 15 Jan 2026 18:05:53 +0000
matabot.8: document the RSS feature and add more info
16d0d03f980f192b1d5fbb3efbce9ed1aaf2f1ed2026-01-15T18:05:11Z2026-01-15T18:05:11Zadd RSS feature pointing to analognowhere.comnoodlenoodle@pastanoggin.comcommit 16d0d03f980f192b1d5fbb3efbce9ed1aaf2f1ed
parent 3af4a1f76a207c8113cce7539b513a3af26dff8d
Author: noodle <noodle@pastanoggin.com>
Date: Thu, 15 Jan 2026 18:05:11 +0000
add RSS feature pointing to analognowhere.com
3af4a1f76a207c8113cce7539b513a3af26dff8d2026-01-09T17:27:01Z2026-01-09T17:27:01Zfix msgmax calculation and add an initial msgmax heuristic to fallback onnoodlenoodle@pastanoggin.comcommit 3af4a1f76a207c8113cce7539b513a3af26dff8d
parent 32d1199ddfacc2acda862cd1ad7032be610f2d37
Author: noodle <noodle@pastanoggin.com>
Date: Fri, 9 Jan 2026 17:27:01 +0000
fix msgmax calculation and add an initial msgmax heuristic to fallback on
fixed incorrect msgmax calculation in response to WHO reply code 352, which
didn't account for the":nick!user@" part before hostname nor the space before
$priv.
additionally, an upcoming RSS feature would sometimes need to send news before
reading any messages back from server (and WHO reply code 352 might never return
or might not return on time), so a conservative fallback msgmax heurestic
calculation was added before the evasdrop loop. it uses a maximum hostname
length of 63 from RFC 2812 and accounts for the the non-ident tilde (~) that
might get prepended to username until we know what the actual hostname and
username are.
32d1199ddfacc2acda862cd1ad7032be610f2d372026-01-07T20:40:45Z2026-01-07T20:40:45Zuse a hash for init() variables and change || to // for better default value assignmentnoodlenoodle@pastanoggin.comcommit 32d1199ddfacc2acda862cd1ad7032be610f2d37
parent 857e8780e0133566f375c18fe274c410ee1d9967
Author: noodle <noodle@pastanoggin.com>
Date: Wed, 7 Jan 2026 20:40:45 +0000
use a hash for init() variables and change || to // for better default value assignment
857e8780e0133566f375c18fe274c410ee1d99672026-01-07T19:22:31Z2026-01-07T19:22:31Zrefactor ping-pong and make ping check timer start after last message from servernoodlenoodle@pastanoggin.comcommit 857e8780e0133566f375c18fe274c410ee1d9967
parent 182fcdb4dc02479e7748c872f6a8d5a0b0fd540b
Author: noodle <noodle@pastanoggin.com>
Date: Wed, 7 Jan 2026 19:22:31 +0000
refactor ping-pong and make ping check timer start after last message from server
182fcdb4dc02479e7748c872f6a8d5a0b0fd540b2026-01-07T18:59:11Z2026-01-07T18:59:11ZTODO: delete getopts because solved and JOIN because ambigious. adda an undef errornoodlenoodle@pastanoggin.comcommit 182fcdb4dc02479e7748c872f6a8d5a0b0fd540b
parent 402253c39d37b317d814246129d6db4a5f5d752a
Author: noodle <noodle@pastanoggin.com>
Date: Wed, 7 Jan 2026 18:59:11 +0000
TODO: delete getopts because solved and JOIN because ambigious. adda an undef error
402253c39d37b317d814246129d6db4a5f5d752a2026-01-03T11:49:44Z2026-01-03T11:49:44Ztighten empty socket response check and bump used perl to v5.42noodlenoodle@pastanoggin.comcommit 402253c39d37b317d814246129d6db4a5f5d752a
parent 5720da41f70fef5581ee1a9149046d73c6ec6e5f
Author: noodle <noodle@pastanoggin.com>
Date: Sat, 3 Jan 2026 11:49:44 +0000
tighten empty socket response check and bump used perl to v5.42
5720da41f70fef5581ee1a9149046d73c6ec6e5f2026-01-03T11:20:32Z2026-01-03T11:20:32Zchange numerical uppercase variables to use "constant" and change $NVERSE hash to NBIBLE and NQURANnoodlenoodle@pastanoggin.comcommit 5720da41f70fef5581ee1a9149046d73c6ec6e5f
parent dbcfa451afea4a8bf56933462988cf943d663490
Author: noodle <noodle@pastanoggin.com>
Date: Sat, 3 Jan 2026 11:20:32 +0000
change numerical uppercase variables to use "constant" and change $NVERSE hash to NBIBLE and NQURAN
dbcfa451afea4a8bf56933462988cf943d6634902025-12-24T23:12:21Z2025-12-24T23:12:21Zgo back to buffered line io because unbuffered char io breaks on liberanoodlenoodle@pastanoggin.comcommit dbcfa451afea4a8bf56933462988cf943d663490
parent ccf6cafd5702b1123984566174106667c39070a5
Author: noodle <noodle@pastanoggin.com>
Date: Wed, 24 Dec 2025 23:12:21 +0000
go back to buffered line io because unbuffered char io breaks on libera
ccf6cafd5702b1123984566174106667c39070a52025-12-24T20:26:05Z2025-12-24T20:26:05Zfix missing \n in usage message and correct to nwe flag usage in EXAMPLESnoodlenoodle@pastanoggin.comcommit ccf6cafd5702b1123984566174106667c39070a5
parent 333e51c3107833915c41cfcd0939b6ae6faffe2d
Author: noodle <noodle@pastanoggin.com>
Date: Wed, 24 Dec 2025 20:26:05 +0000
fix missing \n in usage message and correct to nwe flag usage in EXAMPLES
333e51c3107833915c41cfcd0939b6ae6faffe2d2025-12-24T20:18:49Z2025-12-24T20:18:49ZThe Grand Refactor:tm: (Sorry!!)noodlenoodle@pastanoggin.comcommit 333e51c3107833915c41cfcd0939b6ae6faffe2d
parent 7317d784aaa81fab85efb43c0ce240c22bb063bb
Author: noodle <noodle@pastanoggin.com>
Date: Wed, 24 Dec 2025 20:18:49 +0000
The Grand Refactor:tm: (Sorry!!)
kill useless code, abbreviate, redo logging, tighten security,
and make matabot a bit smarter.
7317d784aaa81fab85efb43c0ce240c22bb063bb2025-11-07T12:25:17Z2025-11-07T12:25:17Zuse braces around 2 vars inside stringsnoodlenoodle@pastanoggin.comcommit 7317d784aaa81fab85efb43c0ce240c22bb063bb
parent b66fc03f425758acb9e2becc7edafd7c7032ae4f
Author: noodle <noodle@pastanoggin.com>
Date: Fri, 7 Nov 2025 12:25:17 +0000
use braces around 2 vars inside strings
b66fc03f425758acb9e2becc7edafd7c7032ae4f2025-11-07T09:09:01Z2025-11-07T09:33:31Zremove duplicate return due to empty chunk (thanks, c0co!)noodlenoodle@pastanoggin.comcommit b66fc03f425758acb9e2becc7edafd7c7032ae4f
parent c5c28543561eda2d2c5cb8fdd17735338fcb7da3
Author: noodle <noodle@pastanoggin.com>
Date: Fri, 7 Nov 2025 09:09:01 +0000
remove duplicate return due to empty chunk (thanks, c0co!)
c5c28543561eda2d2c5cb8fdd17735338fcb7da32025-11-07T08:59:36Z2025-11-07T09:06:54Zset a default empty string value for "reply" variablesnoodlenoodle@pastanoggin.comcommit c5c28543561eda2d2c5cb8fdd17735338fcb7da3
parent b8d800b81cd3af0db4ec48a50e26531b81066e23
Author: noodle <noodle@pastanoggin.com>
Date: Fri, 7 Nov 2025 08:59:36 +0000
set a default empty string value for "reply" variables
b8d800b81cd3af0db4ec48a50e26531b81066e232025-11-07T00:02:52Z2025-11-07T00:02:52Zadd allah command (quran and bible api's by prahou. thank you!)noodlenoodle@pastanoggin.comcommit b8d800b81cd3af0db4ec48a50e26531b81066e23
parent 4236ee7a4f84626a5ae6ecdc54eb58967ee5db44
Author: noodle <noodle@pastanoggin.com>
Date: Fri, 7 Nov 2025 00:02:52 +0000
add allah command (quran and bible api's by prahou. thank you!)
4236ee7a4f84626a5ae6ecdc54eb58967ee5db442025-11-07T00:02:00Z2025-11-07T00:02:00Zball: fix typonoodlenoodle@pastanoggin.comcommit 4236ee7a4f84626a5ae6ecdc54eb58967ee5db44
parent 269fb2e4eae6c17f3ec67b54baa460bdbe6d2580
Author: noodle <noodle@pastanoggin.com>
Date: Fri, 7 Nov 2025 00:02:00 +0000
ball: fix typo
269fb2e4eae6c17f3ec67b54baa460bdbe6d25802025-11-07T00:01:34Z2025-11-07T00:01:34Zincrease PONG_TIMEOUT to 300 and set reply to '' by default for sub evasdropnoodlenoodle@pastanoggin.comcommit 269fb2e4eae6c17f3ec67b54baa460bdbe6d2580
parent 8bd45e7d5623562961dfadff125f318921abb447
Author: noodle <noodle@pastanoggin.com>
Date: Fri, 7 Nov 2025 00:01:34 +0000
increase PONG_TIMEOUT to 300 and set reply to '' by default for sub evasdrop
8bd45e7d5623562961dfadff125f318921abb4472025-09-25T20:14:30Z2025-09-25T20:14:30Zadd a bible command and extra sanitization before sending anything outnoodlenoodle@pastanoggin.comcommit 8bd45e7d5623562961dfadff125f318921abb447
parent f3609fac601b54d2d303f2588e6ec35858bbaa00
Author: noodle <noodle@pastanoggin.com>
Date: Thu, 25 Sep 2025 20:14:30 +0000
add a bible command and extra sanitization before sending anything out
f3609fac601b54d2d303f2588e6ec35858bbaa002025-09-25T17:13:20Z2025-09-25T17:13:20Zfix edge case where yt vid id starting with a - always fails to get a titlenoodlenoodle@pastanoggin.comcommit f3609fac601b54d2d303f2588e6ec35858bbaa00
parent 2663f4a88905a632336b826779343e60765999d3
Author: noodle <noodle@pastanoggin.com>
Date: Thu, 25 Sep 2025 17:13:20 +0000
fix edge case where yt vid id starting with a - always fails to get a title
2663f4a88905a632336b826779343e60765999d32025-09-24T15:27:34Z2025-09-25T15:42:04Zchange variable from "content" to "body" in GET responses to not shadow previos variablesnoodlenoodle@pastanoggin.comcommit 2663f4a88905a632336b826779343e60765999d3
parent f9efd6b48a0e79f731e3bf966c4857744d0cd42a
Author: noodle <noodle@pastanoggin.com>
Date: Wed, 24 Sep 2025 15:27:34 +0000
change variable from "content" to "body" in GET responses to not shadow previos variables
f9efd6b48a0e79f731e3bf966c4857744d0cd42a2025-07-25T04:01:42Z2025-07-25T04:01:42Zmatabot.8: fix usage example as channels shouldn't start with #noodlenoodle@pastanoggin.comcommit f9efd6b48a0e79f731e3bf966c4857744d0cd42a
parent 3ff36cb661ddc3f32e16b82f917937b19d418d33
Author: noodle <noodle@pastanoggin.com>
Date: Fri, 25 Jul 2025 07:01:42 +0300
matabot.8: fix usage example as channels shouldn't start with #
3ff36cb661ddc3f32e16b82f917937b19d418d332025-07-24T03:28:54Z2025-07-24T03:28:54Zfix IO::Socket::SSL errors not workingnoodlenoodle@pastanoggin.comcommit 3ff36cb661ddc3f32e16b82f917937b19d418d33
parent 3c901ffa8c40127dd9552b6c7ee9bb66862ed603
Author: noodle <noodle@pastanoggin.com>
Date: Thu, 24 Jul 2025 06:28:54 +0300
fix IO::Socket::SSL errors not working
3c901ffa8c40127dd9552b6c7ee9bb66862ed6032025-06-27T18:38:40Z2025-06-27T18:38:40ZTODO: add more tasksnoodlenoodle@pastanoggin.comcommit 3c901ffa8c40127dd9552b6c7ee9bb66862ed603
parent 0cca054666fef7deeb28606157a057c70c6dda5b
Author: noodle <noodle@pastanoggin.com>
Date: Fri, 27 Jun 2025 21:38:40 +0300
TODO: add more tasks
0cca054666fef7deeb28606157a057c70c6dda5b2025-06-26T14:15:08Z2025-06-26T18:35:51ZTODO: add more itemsnoodlenoodle@pastanoggin.comcommit 0cca054666fef7deeb28606157a057c70c6dda5b
parent 699af575932db751f5e8b569ade0eba9899dbe19
Author: noodle <noodle@pastanoggin.com>
Date: Thu, 26 Jun 2025 17:15:08 +0300
TODO: add more items
699af575932db751f5e8b569ade0eba9899dbe192025-06-26T12:28:45Z2025-06-26T12:28:45Zrefactor and change -l and -v descriptionnoodlenoodle@pastanoggin.comcommit 699af575932db751f5e8b569ade0eba9899dbe19
parent a90fe83e647b257c36e5a230a373f884ea57430b
Author: noodle <noodle@pastanoggin.com>
Date: Thu, 26 Jun 2025 15:28:45 +0300
refactor and change -l and -v description
a90fe83e647b257c36e5a230a373f884ea57430b2025-06-26T11:50:46Z2025-06-26T11:50:46Zmatabot.8: cleanup and add a noodle commandnoodlenoodle@pastanoggin.comcommit a90fe83e647b257c36e5a230a373f884ea57430b
parent dc0cf8254d3a05b6940c03fa729729d5d7b7f184
Author: noodle <noodle@pastanoggin.com>
Date: Thu, 26 Jun 2025 14:50:46 +0300
matabot.8: cleanup and add a noodle command
dc0cf8254d3a05b6940c03fa729729d5d7b7f1842025-06-26T11:39:43Z2025-06-26T11:39:43Zfix regression with HUUUH line and improve regex intelligencenoodlenoodle@pastanoggin.comcommit dc0cf8254d3a05b6940c03fa729729d5d7b7f184
parent 226a18d30068bb5656e736ec939efde93a145eb2
Author: noodle <noodle@pastanoggin.com>
Date: Thu, 26 Jun 2025 14:39:43 +0300
fix regression with HUUUH line and improve regex intelligence
226a18d30068bb5656e736ec939efde93a145eb22025-06-26T11:12:29Z2025-06-26T11:12:29Zmake -l only log errors and add -v for verbose loggingnoodlenoodle@pastanoggin.comcommit 226a18d30068bb5656e736ec939efde93a145eb2
parent 3d896652c9fe14bb83f6731110257ea690d9b733
Author: noodle <noodle@pastanoggin.com>
Date: Thu, 26 Jun 2025 14:12:29 +0300
make -l only log errors and add -v for verbose logging
3d896652c9fe14bb83f6731110257ea690d9b7332025-06-25T02:58:24Z2025-06-25T02:58:24ZMerge branch 'fix_noreconnect'noodlenoodle@pastanoggin.comcommit 3d896652c9fe14bb83f6731110257ea690d9b733
parent 86570063ad83611f48faed399981abc0281313cc
Author: noodle <noodle@pastanoggin.com>
Date: Wed, 25 Jun 2025 05:58:24 +0300
Merge branch 'fix_noreconnect'
86570063ad83611f48faed399981abc0281313cc2025-06-21T16:13:58Z2025-06-25T02:52:34Zmake a todo file and add tasksnoodlenoodle@pastanoggin.comcommit 86570063ad83611f48faed399981abc0281313cc
parent bd94232e64b4cf9da6ada91db50b5dd554e20493
Author: noodle <noodle@pastanoggin.com>
Date: Sat, 21 Jun 2025 19:13:58 +0300
make a todo file and add tasks
283be9bcdbad1a84d7467f6db1713f09aae8ef842025-06-25T02:46:49Z2025-06-25T02:46:49Zimplement reconnectionnoodlenoodle@pastanoggin.comcommit 283be9bcdbad1a84d7467f6db1713f09aae8ef84
parent f4d13731461ca8fb7e2f947c3b3ad725ae8ca8fd
Author: noodle <noodle@pastanoggin.com>
Date: Wed, 25 Jun 2025 05:46:49 +0300
implement reconnection
bot now reconnects after a cooldown on socket creation error, falsy
return value of recv, or server not responding with PONG after a set
amount of time from a PING (sent after a set amount of time too).
thanks #perl for showing me the recv() -> 0/undef trick :3
f4d13731461ca8fb7e2f947c3b3ad725ae8ca8fd2025-06-22T18:08:54Z2025-06-22T18:13:42Zremove i/o side effects from most subroutinesnoodlenoodle@pastanoggin.comcommit f4d13731461ca8fb7e2f947c3b3ad725ae8ca8fd
parent bed1c8b3df1d2b12cf73a38fc42f12bfc165211b
Author: noodle <noodle@pastanoggin.com>
Date: Sun, 22 Jun 2025 21:08:54 +0300
remove i/o side effects from most subroutines
subroutine msg was deleted too as it was used only once after the
purification. now only logger, out, evasdrop and the toplevel main
code is impure. i might try to optimize them further later. for now,
we'll be implementing reconnection as i/o has been minimized
bed1c8b3df1d2b12cf73a38fc42f12bfc165211b2025-06-21T18:18:34Z2025-06-21T18:25:36Zpurify functional mutation of globals/parametersnoodlenoodle@pastanoggin.comcommit bed1c8b3df1d2b12cf73a38fc42f12bfc165211b
parent 05d86fdaa37573e395f40904af86c8516c40456d
Author: noodle <noodle@pastanoggin.com>
Date: Sat, 21 Jun 2025 21:18:34 +0300
purify functional mutation of globals/parameters
05d86fdaa37573e395f40904af86c8516c40456d2025-06-18T20:13:44Z2025-06-18T20:13:44ZMerge branch 'master' into fix_noreconnectnoodlenoodle@pastanoggin.comcommit 05d86fdaa37573e395f40904af86c8516c40456d
parent 2db6fade2e537f4ddb75b816dd3fb197ba8f4f8d
Author: noodle <noodle@pastanoggin.com>
Date: Wed, 18 Jun 2025 23:13:44 +0300
Merge branch 'master' into fix_noreconnect
bd94232e64b4cf9da6ada91db50b5dd554e204932025-06-18T17:30:07Z2025-06-18T17:30:07Zmake matabot's nick rollable at the last characternoodlenoodle@pastanoggin.comcommit bd94232e64b4cf9da6ada91db50b5dd554e20493
parent dd5b28e6c5ea21aac50ebd8a565e2f5202ff5960
Author: noodle <noodle@pastanoggin.com>
Date: Wed, 18 Jun 2025 20:30:07 +0300
make matabot's nick rollable at the last character
dd5b28e6c5ea21aac50ebd8a565e2f5202ff59602025-06-18T17:24:27Z2025-06-18T17:24:27Zsimplify http link regexnoodlenoodle@pastanoggin.comcommit dd5b28e6c5ea21aac50ebd8a565e2f5202ff5960
parent 3f948ae7aa2915c2dcb6a69adf9c15ded9c31f86
Author: noodle <noodle@pastanoggin.com>
Date: Wed, 18 Jun 2025 20:24:27 +0300
simplify http link regex
3f948ae7aa2915c2dcb6a69adf9c15ded9c31f862025-06-18T17:08:41Z2025-06-18T17:08:41Zmake matabot nick recognition more lenientnoodlenoodle@pastanoggin.comcommit 3f948ae7aa2915c2dcb6a69adf9c15ded9c31f86
parent 598064f27b382118202c70ac3dde81856ae5f6b2
Author: noodle <noodle@pastanoggin.com>
Date: Wed, 18 Jun 2025 20:08:41 +0300
make matabot nick recognition more lenient
598064f27b382118202c70ac3dde81856ae5f6b22025-06-18T16:30:06Z2025-06-18T16:30:06Zmatabot.8: add /i and /g regex modifiersnoodlenoodle@pastanoggin.comcommit 598064f27b382118202c70ac3dde81856ae5f6b2
parent 96ff42658bb89d7c05e6e98ba27cc4686ac5bdc1
Author: noodle <noodle@pastanoggin.com>
Date: Wed, 18 Jun 2025 19:30:06 +0300
matabot.8: add /i and /g regex modifiers
96ff42658bb89d7c05e6e98ba27cc4686ac5bdc12025-06-18T16:29:05Z2025-06-18T16:29:05ZMerge branch 'regex_modifiers'noodlenoodle@pastanoggin.comcommit 96ff42658bb89d7c05e6e98ba27cc4686ac5bdc1
parent b73dcbe95ef4d2048dab4178e615b15aa06a8564
Author: noodle <noodle@pastanoggin.com>
Date: Wed, 18 Jun 2025 19:29:05 +0300
Merge branch 'regex_modifiers'
50695633bea43723e3ed47e5610b0ea43ed77dd62025-06-18T16:28:06Z2025-06-18T16:28:06Zadd the /g and /i regex modifiers to the chat s/// commandnoodlenoodle@pastanoggin.comcommit 50695633bea43723e3ed47e5610b0ea43ed77dd6
parent e9ae263711555c8ad2f1dd9d39721ca918cd445e
Author: noodle <noodle@pastanoggin.com>
Date: Wed, 18 Jun 2025 19:28:06 +0300
add the /g and /i regex modifiers to the chat s/// command
b73dcbe95ef4d2048dab4178e615b15aa06a85642025-06-17T14:16:05Z2025-06-17T14:16:05Zmatabot.8: revamp and add missing infonoodlenoodle@pastanoggin.comcommit b73dcbe95ef4d2048dab4178e615b15aa06a8564
parent a199d22b47feb506d546b9ba5821830dc2b8c2f0
Author: noodle <noodle@pastanoggin.com>
Date: Tue, 17 Jun 2025 17:16:05 +0300
matabot.8: revamp and add missing info
a199d22b47feb506d546b9ba5821830dc2b8c2f02025-06-17T13:27:05Z2025-06-17T13:27:05Zmatabot.8: split lines that have more than one sentencenoodlenoodle@pastanoggin.comcommit a199d22b47feb506d546b9ba5821830dc2b8c2f0
parent e9ae263711555c8ad2f1dd9d39721ca918cd445e
Author: noodle <noodle@pastanoggin.com>
Date: Tue, 17 Jun 2025 16:27:05 +0300
matabot.8: split lines that have more than one sentence
mdoc takes care of inter-sentence spacing.
thanks, humm!
e9ae263711555c8ad2f1dd9d39721ca918cd445e2025-06-15T16:37:43Z2025-06-15T16:37:43Zball changes bc prahou is sillynoodlenoodle@pastanoggin.comcommit e9ae263711555c8ad2f1dd9d39721ca918cd445e
parent f9903ae1d7421f5422b5ff6d2a04c5a622ac2fbb
Author: noodle <noodle@pastanoggin.com>
Date: Sun, 15 Jun 2025 19:37:43 +0300
ball changes bc prahou is silly
f9903ae1d7421f5422b5ff6d2a04c5a622ac2fbb2025-06-15T16:33:56Z2025-06-15T16:33:56Zfix s/// not silincing on wrong regexnoodlenoodle@pastanoggin.comcommit f9903ae1d7421f5422b5ff6d2a04c5a622ac2fbb
parent 8c7ebe8f11d0d6d1803e7037024e41d52b8f0550
Author: noodle <noodle@pastanoggin.com>
Date: Sun, 15 Jun 2025 19:33:56 +0300
fix s/// not silincing on wrong regex
also made it so no regexes go into the user's buffer. it helps with
repeatedly iterating over a message with s/// even if the user got the
regex wrong in the middle
2db6fade2e537f4ddb75b816dd3fb197ba8f4f8d2025-06-15T14:32:17Z2025-06-15T14:32:17Zmove main loop to a function to implement reconnectionnoodlenoodle@pastanoggin.comcommit 2db6fade2e537f4ddb75b816dd3fb197ba8f4f8d
parent 8c7ebe8f11d0d6d1803e7037024e41d52b8f0550
Author: noodle <noodle@pastanoggin.com>
Date: Sun, 15 Jun 2025 17:32:17 +0300
move main loop to a function to implement reconnection
8c7ebe8f11d0d6d1803e7037024e41d52b8f05502025-06-15T13:55:39Z2025-06-15T13:55:39Zadd `the' as an alt for `a' in "who's a good boy"noodlenoodle@pastanoggin.comcommit 8c7ebe8f11d0d6d1803e7037024e41d52b8f0550
parent 77a3e6a10769bafbec246f66294ef7ade2f414a1
Author: noodle <noodle@pastanoggin.com>
Date: Sun, 15 Jun 2025 16:55:39 +0300
add `the' as an alt for `a' in "who's a good boy"
77a3e6a10769bafbec246f66294ef7ade2f414a12025-06-15T13:39:13Z2025-06-15T13:39:13Zadd a .gitignore to ignore rc_scriptnoodlenoodle@pastanoggin.comcommit 77a3e6a10769bafbec246f66294ef7ade2f414a1
parent c50e33f6ec8e6895fe98991fc6aa46fd99b8f8f8
Author: noodle <noodle@pastanoggin.com>
Date: Sun, 15 Jun 2025 16:39:13 +0300
add a .gitignore to ignore rc_script
c50e33f6ec8e6895fe98991fc6aa46fd99b8f8f82025-06-15T13:34:39Z2025-06-15T13:34:39Zremove the leading # from -j's argumentnoodlenoodle@pastanoggin.comcommit c50e33f6ec8e6895fe98991fc6aa46fd99b8f8f8
parent e5930bed6598d973ba680bc1229409d19819ed86
Author: noodle <noodle@pastanoggin.com>
Date: Sun, 15 Jun 2025 16:34:39 +0300
remove the leading # from -j's argument
it confuses /etc/rc.conf.local. updated and cleaned up the man page too
e5930bed6598d973ba680bc1229409d19819ed862025-06-15T13:12:40Z2025-06-15T13:12:40Zfix missing -H flag in manpagenoodlenoodle@pastanoggin.comcommit e5930bed6598d973ba680bc1229409d19819ed86
parent fed2dac4d23113e2b03b39ea10beba361fa62904
Author: noodle <noodle@pastanoggin.com>
Date: Sun, 15 Jun 2025 16:12:40 +0300
fix missing -H flag in manpage
fed2dac4d23113e2b03b39ea10beba361fa629042025-06-15T12:54:08Z2025-06-15T12:54:08Zfix more social regex edge-casesnoodlenoodle@pastanoggin.comcommit fed2dac4d23113e2b03b39ea10beba361fa62904
parent 4f76af659eee110392a0c363d6976641cc8bf385
Author: noodle <noodle@pastanoggin.com>
Date: Sun, 15 Jun 2025 15:54:08 +0300
fix more social regex edge-cases
4f76af659eee110392a0c363d6976641cc8bf3852025-06-15T08:27:13Z2025-06-15T10:53:30Zmake social regexes more lentientnoodlenoodle@pastanoggin.comcommit 4f76af659eee110392a0c363d6976641cc8bf385
parent 5b9e5f4d64640088c2ee10d9110165aa7d5ceb28
Author: noodle <noodle@pastanoggin.com>
Date: Sun, 15 Jun 2025 11:27:13 +0300
make social regexes more lentient
5b9e5f4d64640088c2ee10d9110165aa7d5ceb282025-06-15T01:59:28Z2025-06-15T02:04:50Zadd a response for wb/welcome backnoodlenoodle@pastanoggin.comcommit 5b9e5f4d64640088c2ee10d9110165aa7d5ceb28
parent 2181aa718261264da0f6ad021ac22cb023c25cf0
Author: noodle <noodle@pastanoggin.com>
Date: Sun, 15 Jun 2025 04:59:28 +0300
add a response for wb/welcome back
2181aa718261264da0f6ad021ac22cb023c25cf02025-06-14T23:24:43Z2025-06-14T23:33:33Zmake mata_bot smarter:noodlenoodle@pastanoggin.comcommit 2181aa718261264da0f6ad021ac22cb023c25cf0
parent a115fcfb9db5eabb3e049f7df02ae13dfd247713
Author: noodle <noodle@pastanoggin.com>
Date: Sun, 15 Jun 2025 02:24:43 +0300
make mata_bot smarter:
- added more language capabilites to the bot; like greetings, small
talk, and other responses to questions it gets typcially asked so it can
be more lively (added a new `hellos' file for choosing a random
greeting)
- added the *pray* command for prahou
- made link fetch error messages less noisy
- added case-insensitive flags to html regexes so we can accept
non-lowercase html
- links can now end anywhere before whitespace of end of line
a115fcfb9db5eabb3e049f7df02ae13dfd2477132025-06-14T18:05:20Z2025-06-14T18:06:21Zadd a man page! this boy has become a man!noodlenoodle@pastanoggin.comcommit a115fcfb9db5eabb3e049f7df02ae13dfd247713
parent 9a845840fcd8688495db20d2454274982b170e99
Author: noodle <noodle@pastanoggin.com>
Date: Sat, 14 Jun 2025 21:05:20 +0300
add a man page! this boy has become a man!
9a845840fcd8688495db20d2454274982b170e992025-06-14T18:01:33Z2025-06-14T18:01:33ZMerge branches 'change_mom' and 'fix_chat_regex_error'noodlenoodle@pastanoggin.comcommit 9a845840fcd8688495db20d2454274982b170e99
parent abd40d0d1f54a510a2dae21077f38ddb05d3a92c
Author: noodle <noodle@pastanoggin.com>
Date: Sat, 14 Jun 2025 21:01:33 +0300
Merge branches 'change_mom' and 'fix_chat_regex_error'
abd40d0d1f54a510a2dae21077f38ddb05d3a92c2025-06-14T17:51:41Z2025-06-14T17:58:42Zgive mata_bot devil powers:noodlenoodle@pastanoggin.comcommit abd40d0d1f54a510a2dae21077f38ddb05d3a92c
parent ff52d78cdd15c4a3705b9e9bf42d0a469080c74a
Author: noodle <noodle@pastanoggin.com>
Date: Sat, 14 Jun 2025 20:51:41 +0300
give mata_bot devil powers:
- absolute paths are now being used for the ball and quotes file
- default options changed to make local testing easier
- the makefile now installs to /usr/local: mata_bot.pl gets installed in sbin
as matabot, ball and quote go into share
- a PREFIX-aware rc script to run matabot as a daemon (configured during make)
makefile and rc script inspired by catgirl and kitd (thx June!)
63862862150b3cc203b30b489e5b1dfc9aa276472025-06-14T17:36:04Z2025-06-14T17:36:04Zfix bot crashing on regex errors when the regex was passed from chatnoodlenoodle@pastanoggin.comcommit 63862862150b3cc203b30b489e5b1dfc9aa27647
parent ff52d78cdd15c4a3705b9e9bf42d0a469080c74a
Author: noodle <noodle@pastanoggin.com>
Date: Sat, 14 Jun 2025 20:36:04 +0300
fix bot crashing on regex errors when the regex was passed from chat
we're ignoring the regex error lol (because it's from chat and they don't care
about errors)
3ede964a14e475c38c71a8bc9bc78236dee8aaec2025-06-14T17:30:59Z2025-06-14T17:30:59Zmata_bot gets a new momnoodlenoodle@pastanoggin.comcommit 3ede964a14e475c38c71a8bc9bc78236dee8aaec
parent ff52d78cdd15c4a3705b9e9bf42d0a469080c74a
Author: noodle <noodle@pastanoggin.com>
Date: Sat, 14 Jun 2025 20:30:59 +0300
mata_bot gets a new mom
ff52d78cdd15c4a3705b9e9bf42d0a469080c74a2025-06-14T16:56:22Z2025-06-14T16:56:22Zchange name in the licensenoodlenoodle@pastanoggin.comcommit ff52d78cdd15c4a3705b9e9bf42d0a469080c74a
parent aea5ed0ac930ec730878292360f7354051a59b7c
Author: noodle <noodle@pastanoggin.com>
Date: Sat, 14 Jun 2025 19:56:22 +0300
change name in the license
aea5ed0ac930ec730878292360f7354051a59b7c2025-03-22T16:27:17Z2025-03-22T16:27:17Zadd a silly quoteboredpastaboredpasta@tutanota.comcommit aea5ed0ac930ec730878292360f7354051a59b7c
parent e0a8c22b4982a03d853e8aed4563cc30cc30389e
Author: boredpasta <boredpasta@tutanota.com>
Date: Sat, 22 Mar 2025 18:27:17 +0200
add a silly quote
e0a8c22b4982a03d853e8aed4563cc30cc30389e2025-03-22T16:23:17Z2025-03-22T16:23:17Zadd a makefile for easier setupboredpastaboredpasta@tutanota.comcommit e0a8c22b4982a03d853e8aed4563cc30cc30389e
parent b4ece6465dd7dd6d2a913b20740825d6d79b2d8f
Author: boredpasta <boredpasta@tutanota.com>
Date: Sat, 22 Mar 2025 18:23:17 +0200
add a makefile for easier setup
b4ece6465dd7dd6d2a913b20740825d6d79b2d8f2025-03-22T15:14:16Z2025-03-22T15:14:16Zrestore 8ball's ambiguity (nevermind, i'm stupid)boredpastaboredpasta@tutanota.comcommit b4ece6465dd7dd6d2a913b20740825d6d79b2d8f
parent 706953f4eb9adcc7c3cef9784ead676e0226bd4f
Author: boredpasta <boredpasta@tutanota.com>
Date: Sat, 22 Mar 2025 17:14:16 +0200
restore 8ball's ambiguity (nevermind, i'm stupid)
706953f4eb9adcc7c3cef9784ead676e0226bd4f2025-03-22T14:55:45Z2025-03-22T14:55:45Zmake 8ball into a know-it-allboredpastaboredpasta@tutanota.comcommit 706953f4eb9adcc7c3cef9784ead676e0226bd4f
parent 2a1492c1de32786cb1ed38ad5e194578d56bda44
Author: boredpasta <boredpasta@tutanota.com>
Date: Sat, 22 Mar 2025 16:55:45 +0200
make 8ball into a know-it-all
2a1492c1de32786cb1ed38ad5e194578d56bda442025-03-20T23:22:54Z2025-03-20T23:22:54Zonly accept dice command when prefixed by nick and improve other nick cmdsboredpastaboredpasta@tutanota.comcommit 2a1492c1de32786cb1ed38ad5e194578d56bda44
parent 509cddf0ac6b76eacaefe3a31c7006a337443a20
Author: boredpasta <boredpasta@tutanota.com>
Date: Fri, 21 Mar 2025 01:22:54 +0200
only accept dice command when prefixed by nick and improve other nick cmds
509cddf0ac6b76eacaefe3a31c7006a337443a202025-03-20T22:58:10Z2025-03-20T22:58:10Zadd 8ballboredpastaboredpasta@tutanota.comcommit 509cddf0ac6b76eacaefe3a31c7006a337443a20
parent ba7e7f3f13cddd9880bb688e0ce081d2ecbb281c
Author: boredpasta <boredpasta@tutanota.com>
Date: Fri, 21 Mar 2025 00:58:10 +0200
add 8ball
ba7e7f3f13cddd9880bb688e0ce081d2ecbb281c2025-03-20T17:18:49Z2025-03-20T17:18:49Zadd dice lolboredpastaboredpasta@tutanota.comcommit ba7e7f3f13cddd9880bb688e0ce081d2ecbb281c
parent 511bd5fb6f999ef2f9fd3dd38c8342c099f3afe0
Author: boredpasta <boredpasta@tutanota.com>
Date: Thu, 20 Mar 2025 19:18:49 +0200
add dice lol
511bd5fb6f999ef2f9fd3dd38c8342c099f3afe02025-03-20T16:44:40Z2025-03-20T16:44:40Zrefactor replies and make them smarter (now with analognowhere quotes!)boredpastaboredpasta@tutanota.comcommit 511bd5fb6f999ef2f9fd3dd38c8342c099f3afe0
parent 9182b34d48f64b05205ec771911c24bcdf4c460a
Author: boredpasta <boredpasta@tutanota.com>
Date: Thu, 20 Mar 2025 18:44:40 +0200
refactor replies and make them smarter (now with analognowhere quotes!)
9182b34d48f64b05205ec771911c24bcdf4c460a2025-03-18T10:19:25Z2025-03-18T10:19:25Zreorder nick mentions to the bottom so they don't interfere with other commandsboredpastaboredpasta@tutanota.comcommit 9182b34d48f64b05205ec771911c24bcdf4c460a
parent 23fce65c5b46033fb91bcba9a57a96403b03078c
Author: boredpasta <boredpasta@tutanota.com>
Date: Tue, 18 Mar 2025 12:19:25 +0200
reorder nick mentions to the bottom so they don't interfere with other commands
23fce65c5b46033fb91bcba9a57a96403b03078c2025-03-18T10:07:32Z2025-03-18T10:07:32Zmake (:|,) optional for when someone is mentioning botboredpastaboredpasta@tutanota.comcommit 23fce65c5b46033fb91bcba9a57a96403b03078c
parent e3f5717173e9ae8510606ccb208712894ff8c6c7
Author: boredpasta <boredpasta@tutanota.com>
Date: Tue, 18 Mar 2025 12:07:32 +0200
make (:|,) optional for when someone is mentioning bot
e3f5717173e9ae8510606ccb208712894ff8c6c72025-03-17T12:20:32Z2025-03-17T12:20:32Zfix content-type detection failing when a text/html has extra items in responseboredpastaboredpasta@tutanota.comcommit e3f5717173e9ae8510606ccb208712894ff8c6c7
parent 60074d3c8558d25b17d21bd4d51a0117fea60c16
Author: boredpasta <boredpasta@tutanota.com>
Date: Mon, 17 Mar 2025 14:20:32 +0200
fix content-type detection failing when a text/html has extra items in response
60074d3c8558d25b17d21bd4d51a0117fea60c162025-03-17T10:49:45Z2025-03-17T10:49:45Zdelete errors on failed s/// cause chat thinks it's stupid xDboredpastaboredpasta@tutanota.comcommit 60074d3c8558d25b17d21bd4d51a0117fea60c16
parent 637be52e7d7e73817d5daae8213db28e08a1263d
Author: boredpasta <boredpasta@tutanota.com>
Date: Mon, 17 Mar 2025 12:49:45 +0200
delete errors on failed s/// cause chat thinks it's stupid xD
637be52e7d7e73817d5daae8213db28e08a1263d2025-03-17T10:45:01Z2025-03-17T10:45:01Zfix s/// subbing without the s part starting on it's own WORDboredpastaboredpasta@tutanota.comcommit 637be52e7d7e73817d5daae8213db28e08a1263d
parent 4f491dc8ed86f2039773c076fc52928121e18b97
Author: boredpasta <boredpasta@tutanota.com>
Date: Mon, 17 Mar 2025 12:45:01 +0200
fix s/// subbing without the s part starting on it's own WORD
4f491dc8ed86f2039773c076fc52928121e18b972025-03-17T01:10:30Z2025-03-17T01:10:30Zadd _ to the yt vid id regex allowed chars cause video ids supposedly use emboredpastaboredpasta@tutanota.comcommit 4f491dc8ed86f2039773c076fc52928121e18b97
parent cde208a02d810ec84081ab5d18f2c2cd732ad002
Author: boredpasta <boredpasta@tutanota.com>
Date: Mon, 17 Mar 2025 03:10:30 +0200
add _ to the yt vid id regex allowed chars cause video ids supposedly use em
cde208a02d810ec84081ab5d18f2c2cd732ad0022025-03-16T22:28:42Z2025-03-16T22:28:42Zadd a toggle `-j join' for choosing the chan to join (local testing :)boredpastaboredpasta@tutanota.comcommit cde208a02d810ec84081ab5d18f2c2cd732ad002
parent 4983457d819e8acfb0876ac8ef72b4aeefc19621
Author: boredpasta <boredpasta@tutanota.com>
Date: Mon, 17 Mar 2025 00:28:42 +0200
add a toggle `-j join' for choosing the chan to join (local testing :)
4983457d819e8acfb0876ac8ef72b4aeefc196212025-03-16T21:46:08Z2025-03-16T21:46:08Zadd a license and readme cause i have dementiaboredpastaboredpasta@tutanota.comcommit 4983457d819e8acfb0876ac8ef72b4aeefc19621
parent b32821211cdca8623856169669b5d9aa062397ec
Author: boredpasta <boredpasta@tutanota.com>
Date: Sun, 16 Mar 2025 23:46:08 +0200
add a license and readme cause i have dementia
b32821211cdca8623856169669b5d9aa062397ec2025-03-16T21:45:48Z2025-03-16T21:45:48Zsultana became a mom!boredpastaboredpasta@tutanota.comcommit b32821211cdca8623856169669b5d9aa062397ec
parent da3ba1c0f3134043355738d05c415f307dfead2a
Author: boredpasta <boredpasta@tutanota.com>
Date: Sun, 16 Mar 2025 23:45:48 +0200
sultana became a mom!
da3ba1c0f3134043355738d05c415f307dfead2a2025-03-16T21:35:50Z2025-03-16T21:35:50Zadd link previews for web pages and filesboredpastaboredpasta@tutanota.comcommit da3ba1c0f3134043355738d05c415f307dfead2a
parent 48c1da5086f9f301aad4bd750b0d6e2eae51bd14
Author: boredpasta <boredpasta@tutanota.com>
Date: Sun, 16 Mar 2025 23:35:50 +0200
add link previews for web pages and files
48c1da5086f9f301aad4bd750b0d6e2eae51bd142025-03-16T21:33:31Z2025-03-16T21:33:31Zkill bad characters [\000\r\n] and trim title for yt title commandboredpastaboredpasta@tutanota.comcommit 48c1da5086f9f301aad4bd750b0d6e2eae51bd14
parent b017d04575d36612f1d04d5de25c54f3cd90e26d
Author: boredpasta <boredpasta@tutanota.com>
Date: Sun, 16 Mar 2025 23:33:31 +0200
kill bad characters [\000\r\n] and trim title for yt title command
b017d04575d36612f1d04d5de25c54f3cd90e26d2025-03-16T21:25:25Z2025-03-16T21:33:07Zrefactor to use more returns to reduce indentation in `sub respond'boredpastaboredpasta@tutanota.comcommit b017d04575d36612f1d04d5de25c54f3cd90e26d
parent 4562f0eaec77f2a6ee960ade415b2053e808b449
Author: boredpasta <boredpasta@tutanota.com>
Date: Sun, 16 Mar 2025 23:25:25 +0200
refactor to use more returns to reduce indentation in `sub respond'
4562f0eaec77f2a6ee960ade415b2053e808b4492025-03-16T19:24:47Z2025-03-16T19:24:47Zimprove s/// msg when the text to replace don't exist in last msgboredpastaboredpasta@tutanota.comcommit 4562f0eaec77f2a6ee960ade415b2053e808b449
parent 7d5bcbc1da8b91e3d8df850abea8378bfea816b9
Author: boredpasta <boredpasta@tutanota.com>
Date: Sun, 16 Mar 2025 21:24:47 +0200
improve s/// msg when the text to replace don't exist in last msg
7d5bcbc1da8b91e3d8df850abea8378bfea816b92025-03-16T19:20:51Z2025-03-16T19:20:51Zadd youtube link title previewsboredpastaboredpasta@tutanota.comcommit 7d5bcbc1da8b91e3d8df850abea8378bfea816b9
parent 3bebabfb747e2a236bae7c7c246d06aaaf63cd94
Author: boredpasta <boredpasta@tutanota.com>
Date: Sun, 16 Mar 2025 21:20:51 +0200
add youtube link title previews
3bebabfb747e2a236bae7c7c246d06aaaf63cd942025-03-16T16:36:08Z2025-03-16T16:39:16Zadd a s/// commandboredpastaboredpasta@tutanota.comcommit 3bebabfb747e2a236bae7c7c246d06aaaf63cd94
parent 46ca98d72e0fc81ffc29c72899ccad7957cb7589
Author: boredpasta <boredpasta@tutanota.com>
Date: Sun, 16 Mar 2025 18:36:08 +0200
add a s/// command
46ca98d72e0fc81ffc29c72899ccad7957cb75892025-03-16T16:35:15Z2025-03-16T16:39:11Zadd support for commandline arguments to facilitate local testingboredpastaboredpasta@tutanota.comcommit 46ca98d72e0fc81ffc29c72899ccad7957cb7589
parent 772f93146a99b5428143b2323fb7daae8c14a182
Author: boredpasta <boredpasta@tutanota.com>
Date: Sun, 16 Mar 2025 18:35:15 +0200
add support for commandline arguments to facilitate local testing
772f93146a99b5428143b2323fb7daae8c14a1822025-03-15T23:54:13Z2025-03-15T23:54:13Zfix bot thinking it's being "commanded" on $NICK(:|,) with nothing afterwardsboredpastaboredpasta@tutanota.comcommit 772f93146a99b5428143b2323fb7daae8c14a182
parent 985f69561ab9b6eacef6a5c0348b777abaa24df6
Author: boredpasta <boredpasta@tutanota.com>
Date: Sun, 16 Mar 2025 01:54:13 +0200
fix bot thinking it's being "commanded" on $NICK(:|,) with nothing afterwards
985f69561ab9b6eacef6a5c0348b777abaa24df62025-02-24T21:21:08Z2025-02-24T21:21:08Zinitiate skynetboredpastaboredpasta@tutanota.comcommit 985f69561ab9b6eacef6a5c0348b777abaa24df6
Author: boredpasta <boredpasta@tutanota.com>
Date: Mon, 24 Feb 2025 23:21:08 +0200
initiate skynet