Brian S. Stephan
f78d407d4c
move DiceRoller to its own module
...
while I'm doing that, standardize the usage of raising exceptions when parsing goes wrong
2019-06-21 16:53:40 -05:00
Brian S. Stephan
8528152483
remove dice cthulhutech roll. hasn't been used in forever
2019-06-21 16:51:09 -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
0f88715ffd
remove unnecessary requirements-server.*
2019-06-21 10:06:17 -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
2bae93778e
admin: show core admin models again in admin
2018-06-04 16:11:19 -05:00
Brian S. Stephan
c02d76d178
properly prospect all of the code
...
the move to flatten the directories one level of dr_botzo is probably
what caused this to be bad
2017-12-01 13:21:31 -06:00
Brian S. Stephan
7fb3738f5a
Add changelog
2017-07-11 10:38:12 -05:00
Brian S. Stephan
1e1750e983
karma: only show the top 5 karmaers, as intended
2017-06-07 14:33:49 -05:00
Brian S. Stephan
6572a54cd2
karma: just some whitespace code quality stuff
2017-06-07 14:26:35 -05:00
Brian S. Stephan
4bf922eef0
mpdbot: show icecast site in the output
2017-03-10 20:53:59 -06:00
Brian S. Stephan
217b8a15cd
simple mpd client thing
...
gets now playing status
2017-03-10 20:36:56 -06:00
Brian S. Stephan
474afe2576
do some ircbot prospector cleanup
...
bss/dr.botzo#17
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
55c1cf01a2
countdown: use new event addressed stuff
...
lets countdown.ircplugin use the regex handler and do less checking
itself
2017-03-10 18:21:29 -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
936db45359
dice: don't address roller when recursing
...
allows !echo blah [!random foo bar] to reply with "blah bar" rather
than "blah bss: bar", for example
2017-03-02 09:40:23 -06:00
Brian S. Stephan
44c8863d35
countdown: print the item name on new reminders
...
this is so that we can delete them later
bss/dr.botzo#33
2017-03-02 09:37:18 -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
c4714d3691
countdown: add pronoun conversion to reminders
2017-02-26 10:39:49 -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,
say:
!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
b58b208f29
Merge branch 'countdown-reminders' into 'master'
...
Add recurrence, and recurrence ceilings, to reminders
Closes #31 and #30
See merge request !17
2017-02-23 19:38:27 -06:00
Brian S. Stephan
1b1ae9638d
countdown: add "recurring until" support
...
tacking onto the recurring option, this allows for having the
recurringness end after a while.
closes bss/dr.botzo#31
2017-02-23 19:35:47 -06:00
Brian S. Stephan
bdbba249cd
countdown: let reminders be recurring
...
when creating a reminder, describe it as "and every X" and it'll refire
over that period, rather than only firing once
closes bss/dr.botzo#30
2017-02-23 19:11:28 -06:00
Brian S. Stephan
76b70ec784
countdown: use match labels in new reminder regex
...
this thing is going to get hairy soon, so might as well do this now
2017-02-23 18:50:03 -06:00
Brian S. Stephan
5b79cea3c6
countdown: add TODO to improve cheap workaround
2017-02-23 09:03:17 -06:00
Brian S. Stephan
57903b4728
countdown: don't select future reminders in thread
2017-02-23 09:02:46 -06:00
Brian S. Stephan
71a797e3fa
countdown: add "about" to new reminder regex
2017-02-23 09:02:21 -06:00
Brian S. Stephan
75f5985d71
countdown: simpler reminders when in privmsg
2017-02-22 23:10:01 -06:00
Brian S. Stephan
48beddb580
countdown: make new reminder regex non-greedy
2017-02-22 22:25:20 -06:00
Brian S. Stephan
0c69530cf9
Merge branch 'countdown-reminders' into 'master'
...
Countdown reminder feedback
See merge request !16
2017-02-22 22:17:37 -06:00
Brian S. Stephan
04f11f97df
countdown: provide feedback when reminder created
...
bss/dr.botzo!16
2017-02-22 22:15:29 -06:00
Brian S. Stephan
081648c074
Merge branch 'countdown-reminders' into 'master'
...
Store and report on reminders via the countdown module
See merge request !15
2017-02-22 22:11:06 -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
9c4e0fe782
countdown: receive reminder countdowns over IRC
...
bss/dr.botzo#11
2017-02-22 22:07:39 -06:00
Brian S. Stephan
a6c2f91dc0
add parsedatetime dep, for countdown reminders
...
bss/dr.botzo#11
2017-02-22 22:06:00 -06:00
Brian S. Stephan
ba5369bd31
countdown: prospector docstring stuff
...
bss/dr.botzo#17
2017-02-22 20:40:07 -06:00
Brian S. Stephan
beff6638d0
countdown: poll db for reminders, send to target
...
every second (!?) a new thread checks the database for reminder
countdown items that haven't been reminded about yet. when the at time
is reached, the thread sends the reminder and notes that a reminder was
sent
bss/dr.botzo#11
2017-02-22 20:39:05 -06:00
Brian S. Stephan
c81d0519a0
countdown: fields for sending reminders
...
extending countdown items in order to have them also store reminders,
which are the same idea (an event at a time) but these are watched by
the irc bot and sent to the specified destination when the time is
reached
this adds support for configuring this, code in support of it is coming
in later commits
bss/dr.botzo#11
2017-02-22 20:32:05 -06:00
Brian S. Stephan
0666fe27e0
remove TODO, preferring gitlab issues tracker
2017-02-12 13:09:45 -06:00
Brian S. Stephan
5d5b58daa5
Merge branch 'better-multilines' into 'master'
...
Better multilines by adding flood protection, consolidating privmsg/reply stuff
Closes #21 and #23
See merge request !14
2017-02-12 12:04:37 -06:00
Brian S. Stephan
0ec5f8033c
dispatch: code quality cleanups
...
bss/dr.botzo#17
2017-02-12 11:58:20 -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
6cb3757ef9
convert ircplugin users of privmsg to reply
...
bss/dr.botzo#21
2017-02-12 11:39:04 -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
bss/dr.botzo#21
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
practically
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)
bss/dr.botzo#21
2017-02-12 10:47:27 -06:00