Commit Graph

1120 Commits

Author SHA1 Message Date
67411ad0bc echo: a simple echo plugin 2015-05-15 18:22:13 -05:00
5716e285b6 ircbot: attempt to bring recursion back
so initial tests suggest this is working well, but it's not exactly the
clearest code, so let's call this a rough proof of concept of recursion
in the bot
2015-05-15 18:20:59 -05:00
115e82f0fc ircmgmt, markov: actually use bot.reply() right 2015-05-15 18:19:55 -05:00
67098c34bb ircmgmt: unregister handle_quit 2015-05-15 17:36:51 -05:00
07ca50dfb6 ircbot: reply() method that supports recursion
undecided if i'll bother to bring recursion back, but if it works out,
provide this method to either reply or give text to the thing recursing.
either way this is a bit clearer than using privmsg() directly, usually
2015-05-15 17:35:03 -05:00
94656b71d2 markov: irc plugin
doesn't support the (unused?) commands of the old bot yet, but does do
basic irc watching and replying
2015-05-15 17:02:28 -05:00
950ad4cc4c markov: get_or_create_target_context properly 2015-05-15 17:02:13 -05:00
bf68099f2f ircbot: handle more plugin load failures
possibly handle them a bit more cleanly, too, by deleting sys.modules
entries
2015-05-15 17:01:25 -05:00
e7839606ec EightBall: removing, obsoleted by facts randomness
we never used this anyway
2015-05-15 08:38:42 -05:00
c371df5eb0 markov: move shared methods into lib.py 2015-05-15 08:36:17 -05:00
1570bc28f9 markov: increase context/target name size 2015-05-15 08:32:36 -05:00
34e0c76dce migration for aliases plural 2015-05-15 08:31:19 -05:00
92bea5f629 Django 1.8 port: move markov templates to app dir 2015-05-15 08:30:58 -05:00
7b93c7d63c provide reason for failure to load plugin 2015-05-14 21:43:35 -05:00
0428c30faf add Alias support
allows stuff like ^!die$ -> !quit

no recursion (yet? or maybe i'll never bother), but this should allow
the basic aliases
2015-05-14 21:39:20 -05:00
e7de9f840d minor comment cleanup so pycharm highlights it 2015-05-14 10:34:20 -05:00
34c73fccf9 create a plugin to do common basic irc actions 2015-05-12 22:39:53 -05:00
438ab414ff use bot.die() over bot.disconnect() 2015-05-12 22:34:27 -05:00
14e5fb4d6f ircbotlib.reply_destination_for_event
common idiom that'll only get used more and more, so might as well make
a library method of it
2015-05-12 22:33:09 -05:00
8c39b017d3 better _handle_event debug message 2015-05-12 22:30:32 -05:00
cf01114390 remove vim modeline 2015-05-12 20:56:36 -05:00
b762ce26c9 .gitignore the .idea directory 2015-05-12 20:56:22 -05:00
c4bfcf3e1b add BotAdmin, IrcPlugin models
a lot of stuff in here around support for loading plugins from arbitrary
files. plugins have a basic amount of initialization and then hook into
the core IRC event system

it makes sense to have modules respond to regexes, so there's some
handler stuff for that --- it was the most popular way to do stuff in
the old version of the bot

we need to check that people trying to load plugins are admins, so
there's some stuff for that, too

the expectation is that many features from here are happen in plugins,
rather than modifying the core bot
2015-05-12 20:45:18 -05:00
bd3ffd4067 add channel model, support autojoining
known channels in the database can be set to autojoin when the bot
starts (when it gets the MOTD, because i couldn't find an "on_connect"
event)
2015-05-10 10:02:25 -05:00
0ea9c3a164 rename ircbot.py to bot.py
ircbot/ircbot.py confused the importer
2015-05-09 20:03:55 -05:00
3d61838a92 start the new ircbot framework 2015-05-09 18:56:26 -05:00
69fbcf2fb5 properly bootstrap the irc bot 2015-05-08 23:38:59 -05:00
ad30f2e263 bootstrap ircbot properly 2015-05-08 23:09:35 -05:00
1dd8e76942 bump django to 1.8.1 2015-05-08 22:53:38 -05:00
b13d958160 i updated pip and this is what happened 2015-05-08 22:34:09 -05:00
b9ca5896e2 bump django-extensions to 1.5.3 2015-05-08 22:32:54 -05:00
518ad4174a django bump to 1.7.8 2015-05-08 22:32:04 -05:00
1484aded84 reorganizing project directories, part 2 2015-05-08 20:44:24 -05:00
2ffdf26ec2 reorganizing project directories, part 1 2015-05-08 20:37:22 -05:00
827131eeda bump django 2015-03-29 10:29:25 -05:00
b7b165fd8f Markov: default bot to only one sentence replies 2014-05-03 21:00:48 -05:00
2917ea9626 Markov: indicate # sentences we want in a line
before we were just adding words until we hit the min/max, now let's
also count the number of sentences and have a cutoff there, if we don't
want the whole appending thing no matter what
2014-05-03 20:56:33 -05:00
dbc3d16f65 Markov: only add sentence punctuation if necessary 2014-05-03 20:54:26 -05:00
676d109f57 Markov: even more unicode fixes 2014-05-03 20:50:15 -05:00
244720934c Markov: rename internal methods to make them clear 2014-05-03 20:47:48 -05:00
3856a1e95b Markov: try to fix unicode errors in irc bot 2014-05-03 20:44:52 -05:00
a9560b6fa2 bump django 2014-04-24 20:46:03 -05:00
f9ed58ad52 Markov: some indexes to MarkovState, might help 2014-04-05 23:09:50 -05:00
bf6a43ec9e Markov: improve performance of state transitions 2014-04-05 22:54:39 -05:00
c193b7f4be Markov: support ignoring prefixes in import/learn
this is so we can ignore/strip "botname: " ish lines
2014-04-05 18:00:45 -05:00
1fc13b011d Merge branch 'master' of git.incorporeal.org:dr.botzo 2014-04-05 17:26:17 -05:00
cc5b8e88e6 Races: order updates by event time 2014-04-05 17:24:31 -05:00
54efe617d0 Markov: only split two \ts on file import 2014-04-05 16:39:44 -05:00
97070d495f Markov: assuming file uploads are utf8 2014-04-05 16:18:48 -05:00
f1ff281da2 Markov: port IRC bot module to django models
work in progress, not everything works yet, but the important stuff
should
2014-04-05 15:55:33 -05:00