Commit Graph

1254 Commits

Author SHA1 Message Date
4bf922eef0 mpdbot: show icecast site in the output 2017-03-10 20:53:59 -06:00
217b8a15cd simple mpd client thing
gets now playing status
2017-03-10 20:36:56 -06:00
474afe2576 do some ircbot prospector cleanup
bss/dr.botzo#17
2017-03-10 18:51:36 -06:00
dbc4e6fe6f rename event._recursing to event.recursing 2017-03-10 18:29:31 -06:00
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
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
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
0003c0c16e bot: default _recursing to False 2017-03-09 08:06:31 -06:00
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
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
6f9bbd304f bot: don't strip []s if no replacement happened 2017-02-26 10:42:32 -06:00
c4714d3691 countdown: add pronoun conversion to reminders 2017-02-26 10:39:49 -06:00
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
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
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
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
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
5b79cea3c6 countdown: add TODO to improve cheap workaround 2017-02-23 09:03:17 -06:00
57903b4728 countdown: don't select future reminders in thread 2017-02-23 09:02:46 -06:00
71a797e3fa countdown: add "about" to new reminder regex 2017-02-23 09:02:21 -06:00
75f5985d71 countdown: simpler reminders when in privmsg 2017-02-22 23:10:01 -06:00
48beddb580 countdown: make new reminder regex non-greedy 2017-02-22 22:25:20 -06:00
0c69530cf9 Merge branch 'countdown-reminders' into 'master'
Countdown reminder feedback

See merge request !16
2017-02-22 22:17:37 -06:00
04f11f97df countdown: provide feedback when reminder created
bss/dr.botzo!16
2017-02-22 22:15:29 -06:00
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
1bbb64618d bot: capture exceptions, try to report on them
it beats crashing, probably
2017-02-22 22:08:04 -06:00
9c4e0fe782 countdown: receive reminder countdowns over IRC
bss/dr.botzo#11
2017-02-22 22:07:39 -06:00
a6c2f91dc0 add parsedatetime dep, for countdown reminders
bss/dr.botzo#11
2017-02-22 22:06:00 -06:00
ba5369bd31 countdown: prospector docstring stuff
bss/dr.botzo#17
2017-02-22 20:40:07 -06:00
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
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
0666fe27e0 remove TODO, preferring gitlab issues tracker 2017-02-12 13:09:45 -06:00
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
0ec5f8033c dispatch: code quality cleanups
bss/dr.botzo#17
2017-02-12 11:58:20 -06:00
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
6cb3757ef9 convert ircplugin users of privmsg to reply
bss/dr.botzo#21
2017-02-12 11:39:04 -06:00
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
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
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
c8d084f9ff karma: don't create a key > len(200)
should resolve bss/dr.botzo#9
2017-02-11 18:01:44 -06:00
d63f2896ee code quality in the karma module
bss/dr.botzo#17
2017-02-11 18:00:43 -06:00
8d87945107 reorder, properly navbar login/register stuff
fixes bss/dr.botzo#19
2017-02-11 17:23:59 -06:00
dcd41516a6 link to /admin/ properly in main nav
fixes bss/dr.botzo#18
2017-02-11 17:23:42 -06:00
c04445dfff code quality changes to the remaining scripts
bss/dr.botzo#17
2017-02-11 17:09:24 -06:00
23007ec8f9 give procmail-to-dispatch.py its own directory 2017-02-11 16:53:46 -06:00
6855fc561a remove ancient porting scripts
no one will ever need these, no need to have clutter
2017-02-11 16:52:24 -06:00
06aa567421 give mpd-notifications.py its own directory
updates the requirements files, too
2017-02-11 16:50:29 -06:00
0b4ffd271d Merge branch 'facts-choices-refactoring' into 'master'
Refactoring facts app to wrap in choices, improve admin

Closes #15 and #14

See merge request !13
2017-02-11 09:47:25 -06:00
f608c5ab68 facts: handle line breaks in view display of fact 2017-02-11 09:41:29 -06:00
a4d51b1f2c remove choices app, everything is in facts now
closes bss/dr.botzo#15
2017-02-11 09:37:03 -06:00