998153c511
add a !weather command to the bot
2019-10-06 10:15:06 -05:00
5660af1614
genericize request methods in DrBotzoBackend
2019-10-06 10:14:43 -05:00
cfb7cdf6b2
markov.py: get context/target from guild or author rather than hardcoded
2019-09-29 12:55:53 -05:00
10fdf5f33c
dice.py: remove unnecessary duplicate response.raise_for_status
2019-09-29 12:16:57 -05:00
859c164fea
add markov plugin for learning/replying to chatter
2019-09-29 12:16:09 -05:00
8466cd62a0
.gitignore *.env
2019-09-29 12:15:46 -05:00
8f0ae10fd4
dos2unix **/*
2019-07-01 12:11:17 -05:00
061a15caa3
give better output to discord of dice rolls, handle errors
2019-06-29 10:55:26 -05:00
5e4bcf6b1c
add error detail handling to DrBotzoBackend
...
written for expecting a JSON with detail in an error response, but might
also decently handle the other cases
2019-06-29 10:55:07 -05:00
f048d7c193
add basic form of dice rolling via dr.botzo
...
not done yet, just getting the code out there for now
2019-06-22 11:52:41 -05:00
d4ea843088
logging tweaks
2019-06-22 11:16:02 -05:00
f9baa76a24
reset the hitomi project, remove django, rebuild deps
2019-06-22 10:39:56 -05:00
8be039da80
use "first recipient"'s name for DM log file
...
we were using the message author before, which made sense for incoming
messages, but then all the replies were getting dumped to a directory
for the bot, which doesn't make much sense. this will use the "first
recipient", which sounds kind of like a backwards-compat attribute but
does what we want for single-user DMs
if we ever care heavily about multi-user DMs we should maybe look at
channel.recipients, but that probably changes over time, so we'd need
to use channel.id?
2018-01-17 10:49:29 -06:00
6cef90cf7b
fix typo in default setting name
2018-01-17 10:37:43 -06:00
347f8f83bf
Merge branch 'master' of git.incorporeal.org:bss/hitomi
2018-01-17 10:32:20 -06:00
aa71fc3232
don't markov-learn what looks like a command
2018-01-17 10:31:16 -06:00
826f34e866
log dice rolls
2018-01-17 10:30:44 -06:00
7dbe30a411
don't rebuild parser on every dice roll
2018-01-17 10:30:07 -06:00
69906aa474
add configuration for the bot command prefix
2018-01-17 10:26:52 -06:00
80d0fd1263
Merge branch 'master' of git.incorporeal.org:bss/hitomi
2018-01-10 14:55:59 -06:00
46754d6979
serve up a blank /
2018-01-10 14:54:51 -06:00
00645e8d93
allow specifying port for the API to listen on
2018-01-10 12:47:47 -06:00
51edb54ed7
add markov module and irc plugin
...
just listens to servers right now, doesn't speak up (yet)
2018-01-10 09:38:12 -06:00
7ec643afda
use the config-based bot plugin loader
2018-01-09 15:37:53 -06:00
8b7ee5ee19
.gitignore db.sqlite3
2018-01-09 15:20:29 -06:00
793fdb0e84
config option for loading bot "plugins"
...
as it turns out, i can't use a module __init__.py to load bot stuff, if
that code would refer to django models, because the django code will try
to do stuff before the apps are initialized, and then the entire house
of cards crumbles apart.
so, i will explicitly load these bot "plugins" separately, after the
modules proper are all initialized
2018-01-09 15:18:38 -06:00
6a5985b002
add on_message_handlers to Bot, by extending Bot
...
Bot is now extended as Hitomi, so that we can add on_message_handlers =
[], which will store functions to call when on_message happens. this is
necessary because i want to have two things react to on_message, but the
discord.py code only supports one coroutine for on_message. so, this is
a hook into it to do what i want
not sure if i'll end up needing this for on_message_edit or
on_message_delete, but i'm skeptical right now
2018-01-09 15:16:01 -06:00
50a5c3d94a
allow supplying max_messages to the discord bot
2018-01-09 13:30:21 -06:00
213b9ff400
add logger module, logs new/edit/delete msgs
...
this logs these messages to a file directory. more stuff may get added
eventually
2018-01-09 13:28:33 -06:00
9c551d37a0
weather: use ** for bold rather than irc codes
2018-01-09 11:01:49 -06:00
138a0cdc2a
refine logging usage in weather module
2018-01-09 10:25:11 -06:00
a226cfd020
use logging in bot startup
2018-01-09 10:24:37 -06:00
c2da9d09a3
add HTTP API to the bot
...
we use aiohttp and directly grab the discord bot's asyncio handler to
create a shared loop. things seem to work?
2018-01-09 10:23:36 -06:00
fa18533667
document our requirements.in files
2018-01-09 09:41:03 -06:00
e8825cb763
add aiohttp explicitly, for an API server
2018-01-09 09:37:45 -06:00
2d25fbd468
.gitignore .log files
2018-01-08 16:33:21 -06:00
cc5dc94ea8
add the forecast command to weather module
2018-01-08 16:32:29 -06:00
114df6fd1b
add weather module, for reporting the weather
...
stolen from dr.botzo
2018-01-08 16:30:20 -06:00
f3171e22a4
add requests to requirements, for wunderground
2018-01-08 16:26:34 -06:00
ca61d8ac04
roll simple and complicated dice
...
copy and paste of the dice module from dr.botzo, uses ply
2018-01-08 12:40:19 -06:00
c7fb3d11e0
add ply (lex and yacc), for the dice module
2018-01-08 11:42:24 -06:00
b41729bd06
.gitignore some lex/yacc stuff
2018-01-08 11:39:52 -06:00
3850595b14
add dice module, give it a !choose
2018-01-08 10:21:30 -06:00
ef29f9f3e2
trivial whitespace change for pep stuff
2018-01-08 09:56:15 -06:00
1ef8318f67
start Django project, add basic Discord bot
...
doesn't do much other than connect, but the idea generally works, so
hooray?
now just to make sure i can actually use the decorator in other modules
properly
2018-01-08 09:30:31 -06:00
873476ad5d
add Django to requirements
2018-01-08 09:20:56 -06:00
b123221323
add basic requirements for discord.py and dev stuff
2018-01-03 00:17:46 -06:00
3802360548
.gitignore - ignore .idea/
2018-01-03 00:16:46 -06:00
909efcbb6a
Add README.md
2018-01-02 22:49:12 -06:00