Commit Graph

63 Commits

Author SHA1 Message Date
Brian S. Stephan 6136127c5f move IRC server settings to database
this is the first step in trying to get the bot to support multiple
servers with different channels, countdown triggers, and so on

this also ends up affecting some configuration around:
* dispatch
* markov
* admin privmsg form
2021-04-25 10:17:41 -05:00
Brian S. Stephan 44d8b7db00 lint cleanups 2021-04-24 20:49:19 -05:00
Brian S. Stephan d518cb2b77 lint cleanups 2021-04-24 20:49:14 -05:00
Brian S. Stephan f2fb0a26a4 remove unnecessary unicode_literal future imports, we py3 now 2019-06-21 15:23:33 -05:00
Brian S. Stephan 2f98a64cdd version bumps and migration to django 2.2 2019-06-21 10:05:40 -05:00
Brian S. Stephan 0589939137 support multiple strings as counting as nick highlights
also, treat @nicks as being addressed, since we are doing discord
through bitlbee now
2019-01-10 08:48:15 -06:00
Brian S. Stephan 474afe2576 do some ircbot prospector cleanup
2017-03-10 18:51:36 -06:00
Brian S. Stephan dbc4e6fe6f rename event._recursing to event.recursing 2017-03-10 18:29:31 -06:00
Brian S. Stephan 1e428b77db bot: add most_specific_msg for convenience
returns original_msg or addressed_msg, depending on the context

related to bss/dr.botzo#32
2017-03-10 18:16:35 -06:00
Brian S. Stephan a79d0cdd9f bot: add a bunch of event attrs related to msgs
- event.addressed - msg started with 'bot: '
- event.original_msg - the pub/privmsg
- event.addressed_msg - pub/privmsg minus 'bot: '
- event.sender_nick - nick of event.source
- event.sent_location - channel or nick of event.source
- event.in_privmsg - if the event was in a privmsg or not

closes bss/dr.botzo#32
2017-03-10 18:16:11 -06:00
Brian S. Stephan 0003c0c16e bot: default _recursing to False 2017-03-09 08:06:31 -06:00
Brian S. Stephan 6f9bbd304f bot: don't strip []s if no replacement happened 2017-02-26 10:42:32 -06:00
Brian S. Stephan 995bb643f3 attempt to have outbound recursion
same logic as replacing [subcommand] with the output of subcommand, but
on the outbound side, via {subcommand}. this lets you do something like,

!echo {!facts buh}

and that won't get interpreted until '{!facts buh}' is on its way out of
the bot. thus, you could also put '{!facts buh}' into the output of some
other command, like a countdown reminder
2017-02-23 21:35:03 -06:00
Brian S. Stephan 1bbb64618d bot: capture exceptions, try to report on them
it beats crashing, probably
2017-02-22 22:08:04 -06:00
Brian S. Stephan 015eacbe53 xmlrpc: expose IRCBot.reply, use it over privmsg
converts dispatch and the admin form to reply

closes bss/dr.botzo#21
2017-02-12 11:41:29 -06:00
Brian S. Stephan 23bb5cdd78 allow IRCBot.reply() to work eventless
reply() used to require an event, but all it used it for was to
determine the destination and to identify recursion. basically, strictly
only -replies-. we can make this a more robust privmsg, too, by adding
explicit_target and inferring recursion as False. this will let
basically any code currently using privmsg to use reply instead, and
benefit from multi-line and line splitting

2017-02-12 11:33:13 -06:00
Brian S. Stephan 010afd05ce add some anti-flood protection stuff
this throttles multi-line messages in a way that probably doesn't affect
the normal cases much, and scales fairly well to far longer text. for
some reason long ascii art still triggers the flood detection, but with
this code at least it happens later in the process. so, success, for
now? i can fix the ascii art at some future point if i ever hit it

closes bss/dr.botzo#23
2017-02-12 10:58:18 -06:00
Brian S. Stephan 8b4f8b2545 move message splitting into IRCBot.reply()
leaves IRCBot.privmsg() pretty vanilla. this should make it clearer
which version for modules/etc to use (hint: it's reply)

2017-02-12 10:47:27 -06:00
Brian S. Stephan 8f8af4e6b4 package updates and resulting compat stuff
changes to in the django views, trivial __init__ change for the
irc library stuff

2017-02-06 22:58:51 -06:00
Brian S. Stephan cd23f062a9 collapsing all of dr_botzo one directory 2017-02-04 11:51:22 -06:00
Brian S. Stephan 2dc2b6a8a2 remove old IRC bot entirely
the porting is complete, everything i care about has been moved to the
django-based codebase, and this old junk can finally go

IT IS A NEW ERA, one of maintainability and flexible changes. after
years of procrastinating, i have finally done this. the future is now
2015-06-19 21:50:35 -05:00
Brian S. Stephan adb88c3e95 Storycraft: ported to ircbot v2. deleted
this means the entire modules directory is essentially replaced. we're
in thissssssssssss
2015-06-19 21:11:18 -05:00
Brian S. Stephan 482870621b Dispatch: ported to django REST framework. deleted 2015-06-18 23:59:25 -05:00
Brian S. Stephan fccb5f3fb3 Acro: ported to ircbot v2. deleted 2015-06-18 18:48:51 -05:00
Brian S. Stephan b3da273b2d Countdown: ported to ircbot v2. deleted 2015-06-18 09:20:22 -05:00
Brian S. Stephan e18e629547 Twitter: ported to ircbot v2. deleted 2015-06-16 20:28:36 -05:00
Brian S. Stephan 618a042935 IrcAdmin: ported to ircbot v2. deleted 2015-06-16 19:04:52 -05:00
Brian S. Stephan aca4ed3eac Races: ported to ircbot v2. deleted 2015-06-13 13:41:54 -05:00
Brian S. Stephan 7876ad2290 Markov: ported to ircbot, noted last TODO. deleted 2015-06-13 13:19:18 -05:00
Brian S. Stephan 6eb589d2d6 Dice: ported to ircbot v2. deleted 2015-05-27 21:02:18 -05:00
Brian S. Stephan c486cabd4e TextTransform: ported to bot v2. deleted 2015-05-27 20:07:22 -05:00
Brian S. Stephan 6842fad841 Facts: ported to ircbot v2. deleted 2015-05-21 22:33:35 -05:00
Brian S. Stephan 56b288e8b4 Pi: ported to new bot. deleted 2015-05-21 21:42:37 -05:00
Brian S. Stephan c9542c1617 Karma: ported to irc bot v2. deleted 2015-05-19 22:01:19 -05:00
Brian S. Stephan 244e1c3fb8 Seen: ported to irc bot v2. deleted 2015-05-15 22:40:38 -05:00
Brian S. Stephan 6982e6d438 TopicDump: obsoleted, replaced. deleted 2015-05-15 21:48:49 -05:00
Brian S. Stephan b15afcade8 old-web: deleting, it is no longer valuable 2015-05-15 21:24:25 -05:00
Brian S. Stephan 1bd57a8c3b Weather: ported to new bot. deleted 2015-05-15 21:23:01 -05:00
Brian S. Stephan 196e12b5d0 Echo has been ported. deleted 2015-05-15 19:50:18 -05:00
Brian S. Stephan 77f8a1dd38 Babelfish stopped working a long time ago. deleted 2015-05-15 19:49:15 -05:00
Brian S. Stephan c6cc9c4c62 Achievements is old and unused. deleted 2015-05-15 19:48:48 -05:00
Brian S. Stephan e7839606ec EightBall: removing, obsoleted by facts randomness
we never used this anyway
2015-05-15 08:38:42 -05:00
Brian S. Stephan c371df5eb0 markov: move shared methods into 2015-05-15 08:36:17 -05:00
Brian S. Stephan 69fbcf2fb5 properly bootstrap the irc bot 2015-05-08 23:38:59 -05:00
Brian S. Stephan ad30f2e263 bootstrap ircbot properly 2015-05-08 23:09:35 -05:00
Brian S. Stephan 1484aded84 reorganizing project directories, part 2 2015-05-08 20:44:24 -05:00
Brian S. Stephan 2ffdf26ec2 reorganizing project directories, part 1 2015-05-08 20:37:22 -05:00
Brian S. Stephan b7b165fd8f Markov: default bot to only one sentence replies 2014-05-03 21:00:48 -05:00
Brian S. Stephan 244720934c Markov: rename internal methods to make them clear 2014-05-03 20:47:48 -05:00
Brian S. Stephan 3856a1e95b Markov: try to fix unicode errors in irc bot 2014-05-03 20:44:52 -05:00