Commit Graph

104 Commits

Author SHA1 Message Date
Chris Sexton f661d7dca2 bot: update callback registry types
Unfortunately, we can't hash the plugins. I went ahead and hashed the
types instead.
2019-02-05 15:13:32 -05:00
Chris Sexton 5ee5f33e36 tests: refactor for new system 2019-02-05 15:02:15 -05:00
Chris Sexton 933e514ddd bot: switch plugins to matching instance
instead of string
2019-02-05 13:58:12 -05:00
Chris Sexton 82dcf410f2 bot: hook connectors up to events
This includes a full test of `admin`
2019-02-05 13:42:15 -05:00
Chris Sexton d85c855d47 bot: rename a few things 2019-02-05 12:25:31 -05:00
Chris Sexton 1f69a653a9 tests: refactor mock to match new interface 2019-02-05 11:37:33 -05:00
Chris Sexton 3620208f33 irc: Update IRC connector to new structure 2019-02-05 11:20:43 -05:00
Chris Sexton e7c88c0c9c events: refactor
Combining all of the various send/recv functions into one
2019-02-05 10:54:13 -05:00
Chris Sexton 0593b4f164 config: set some defaults 2019-01-21 19:16:57 -05:00
Chris Sexton 742c76f562 config: add defaults checking where necessary 2019-01-21 14:24:03 -05:00
Chris Sexton 15168f5db0 config: all tests passing
* Using in-memory but shared DB. ALL TESTS MUST CLEAR RELEVANT TABLES
* Removed problematic reminder test
2019-01-21 12:36:55 -05:00
Chris Sexton a8d0f3fd34 stats: remove unused plugin
config: checkpoint

config: checkpoint all but two tests passing

config: checkpoint all but one test suites pass
2019-01-21 12:36:56 -05:00
Chris Sexton 3a7651d184 fact: add reaction type facts
If a user creates a fact with the verb <react>, catbase will try to
react with the emojy that the user specifies. It filters things with
spaces and fixes colons, but does not check if the emojy actually
exists. There will be no feedback in this case, which should probably
get fixed but meh.

* Updated mock bot to check reactions, and do filtering correctly.
* Added a couple tests of the react functionality.
2019-01-20 12:33:19 -05:00
Chris Sexton e15122cfe9 bot: refactor all rand seeds into main.go 2018-07-23 13:00:19 -04:00
Chris Sexton c639d460ac go fmt 2018-05-02 07:02:04 -04:00
skkiesel 1ac566c2c2 sokobass. 2017-11-02 16:32:02 -04:00
skkiesel 54b83cd444 listening to thread responses to rpg threads only 2017-10-31 14:14:45 -04:00
skkiesel d9bb7ec3c0 sometimes you have an id, sometimes a message, we should support relpying to both 2017-10-31 10:16:41 -04:00
skkiesel 3009a646e6 support replies 2017-10-31 10:07:20 -04:00
skkiesel d6c35b94ec cleanup! 2017-10-31 09:40:03 -04:00
Scott Kiesel 34e2404e8b hacked poc for edits as an animation mechanism 2017-10-31 06:22:36 -04:00
cws 9600e0dc63 inventory: initial sketch
Fixes #2
2017-09-29 00:58:21 -04:00
cws e56604f507 bot: change serve() to return an error
slack: don't fatal on EOF, reconnect
irc: don't fatal, just return error
2017-09-07 00:32:53 -04:00
cws 755cfc38cd slack: mark channels read, keep a current marker 2017-07-25 13:58:04 -04:00
Scott Kiesel e059b51fcf Merge branch 'master' into emojifyme 2017-07-25 06:17:11 -04:00
skkiesel 1b09106356 Add missing methods (React and GetEmojiList) to mockbot 2017-07-25 06:15:44 -04:00
skkiesel c6e1769f0f Parse incoming messages to see if we can annoy eaburns with emoji word replacements 2017-07-24 15:09:27 -04:00
cws d5bc4d8f45 bot: add missing mock func to fix tests
skiesel forgot.
2017-07-24 07:38:03 -04:00
skkiesel 1bf6997144 initial implementation and POC to getting reactions pushed into slack via catbase 2017-07-24 07:38:03 -04:00
skkiesel 8728d96639 initial implementation and POC to getting reactions pushed into slack via catbase 2017-06-17 16:20:06 -04:00
cws ef0afc2ee0 Fix detection of users on incoming messages 2017-01-05 09:48:57 -05:00
cwsexton 0badd5f2ce Add multiple command character support.
Now you can use ¡!
2016-09-27 12:42:00 -04:00
Chris Sexton 079c6ab2ec Fix variable support 2016-05-20 16:28:48 -04:00
Chris Sexton e6324ad5a2 babbler: Add all users in chan, add cfg'd users
Also misc small updates to the mock object for easier config usage
2016-05-10 21:15:52 -04:00
Chris Sexton 8485ed9fe3 Fix Whoing a channel and factoid timer 2016-04-21 11:19:38 -04:00
Chris Sexton e449a82001 YOLO: DEAL WITH IT
Refactored a bunch of junk.
2016-04-01 10:20:26 -04:00
Chris Sexton ef40d335eb Make testing great again! Add examples in counter
* Made bot.Bot an interface and added a mock with an in-memory database
for plugins to use.
* Remove logger nonsense
* Rename Counter New
2016-03-30 12:41:22 -04:00
Chris Sexton a34afa97ad Switch web query to a regex 2016-03-29 12:34:04 -04:00
Chris Sexton dc793a18c9 Fix help command to only respond when there is a space afterwards 2016-03-21 18:05:51 -04:00
Chris Sexton 2a702c7061 Fix license tags 2016-03-19 15:32:51 -04:00
Chris Sexton ae5d7dec2e Migrate to sqlx; modularize counters 2016-03-19 14:02:46 -04:00
Chris Sexton dc1239783e Initial slack worky worky 2016-03-10 21:11:52 -05:00
Chris Sexton 51d7f7f067 Move IRC stuff to its own package 2016-03-10 13:37:07 -05:00
Chris Sexton 74e981eedf Fix imports; Use SSL by default
Fix imports to point to github instead of code.google
2016-01-17 22:51:11 -05:00
Chris Sexton d261fcc406 AlePale -> Catbase => velour 2016-01-17 13:00:44 -05:00
Chris Sexton 56c6d84813 Add TODO, small fix to factoid web interface 2016-01-17 12:45:07 -05:00
Chris Sexton 782d074bdf Get the bot online; make counters work
Mostly just silly stuff to get everything working.
2016-01-15 08:59:51 -05:00
Chris Sexton 1efa7ebcd4 Initial mongo->sqlite move
Tons of bugs, I'm sure. This commit  mostly gets the bot moving towards
SQLite. It builds, but many plugins have a log.Fatal to prevent their
use and it has not been tested.
2016-01-15 08:17:26 -05:00
Chris Sexton d298dac814 Fixes #30: Lowercasing the search 2014-04-20 21:12:08 -04:00
Chris Sexton a07a6adc0d Fixes #46: Filter self out of user list 2014-04-20 21:06:42 -04:00