Commit Graph

466 Commits

Author SHA1 Message Date
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
skkiesel b33eccaaa0 Add pokemon. Extra dune trigger. Actually have a test for each endpoint 2019-01-19 11:06:13 -05:00
Chris Sexton bfe910f4db tests: rm some beers tests, add gok and fix errs 2019-01-19 09:59:53 -05:00
skkiesel 91a334b32b Fixed babbler tests by not running go routines during testing. (go fmt on nerdepedia because of course this should all happen in one commit) 2019-01-19 09:53:41 -05:00
skkiesel 265fe441b4 I'll see your double escaping, and raise you triple unescaping. But seriously, double unescaping. 2019-01-19 09:51:08 -05:00
skkiesel 3aaed538dd LOTR 2019-01-19 09:51:08 -05:00
skkiesel 75dcb47d11 Kids gonna like dune 2019-01-19 09:51:08 -05:00
skkiesel 5dd7df164e This is my public shaming 2019-01-19 09:51:08 -05:00
skkiesel cf6e2a9c1c Don't panic. Unescape description. Add link. Remove 'make it so' 2019-01-19 08:27:24 -05:00
skkiesel 6e39e6ec2b Up your nerd game, nerd. 2019-01-18 19:48:12 -05:00
Chris Sexton 73dc6f047d twitch: streaming 2018-12-26 23:23:22 -05:00
Chris Sexton d63b33eacf Fix goroutine err 2018-12-24 22:18:47 -05:00
Chris Sexton a4d34fc117 leftpad: update dependency 2018-12-07 08:34:25 -05:00
Chris Sexton 66fa219f78 babbler: make recording new babbles _fast_
This is a hack. I am just pushing the processing off into a goroutine so
that we can return as quickly as possible from a non-event as far as the
bot's interaction with users is concerned. This is potentially harmful
if we have too many goroutines blocked writing babblers (hopefully
    sqlite is configured to be thread-safe). But if we have a bunch of
    babblers writing off to disk, it's no worse than blocking for each
    one sequentially, I guess.
2018-11-08 18:06:11 -05:00
Chris Sexton 4fed267911 reminder: you for real this time 2018-10-26 13:38:49 -04:00
Chris Sexton 4644f1893c reminder: accidentally a you 2018-10-26 13:31:07 -04:00
Chris Sexton 2ffbc6fb93 reminder: change the confirmation of remind me 2018-10-26 11:02:51 -04:00
Chris Sexton 03f979bde4 twitch: make things spooky 2018-10-22 16:19:03 -04:00
Chris Sexton 73f019a14a counter: change from Tea. Earl Grey. Hot. to all
Now we can say any valid counter with two more sentences and get the
Picard-alike results with counter.
2018-10-19 14:23:08 -04:00
skkiesel a9ba3135fb How long until he notices? 2018-10-07 18:54:24 -04:00
Chris Sexton 8d729f5d42 counter: make tea counter less strict 2018-10-07 08:48:13 -04:00
Chris Sexton b1a4fd2050 merge a spaced out count into one in the case of an emojy or anything with a space really 2018-09-27 22:48:11 -04:00
Steve McCoy 96a887917a Proper handling of the default pick quantity 2018-09-01 18:27:40 -04:00
Steve McCoy cafc31cfe6 Don't send the message along after a failed parse 2018-08-30 16:11:32 -04:00
Steve McCoy aa7a09937c Get *slightly* serious and fix the rest of the bugs 2018-08-30 16:05:03 -04:00
Steve McCoy fa7ed79ff6
"A" "better" "fix" 2018-08-30 14:23:19 -04:00
Steve McCoy 4cf4308ef8
Fix hilarious cat-astrophy 2018-08-30 14:20:44 -04:00
Steve McCoy 254d723ecf
I had parsing on the brain, I swear 2018-08-30 14:14:52 -04:00
Steve McCoy 197d6861de
Missing! 2018-08-30 14:04:36 -04:00
Steve McCoy 4886cd6b9d Use literal strings for these regexps 2018-08-30 13:51:24 -04:00
Steve McCoy 80d44a144d I will not test this 2018-08-30 13:49:51 -04:00
Steve McCoy 807e235489
This is scanf 2018-08-28 15:43:12 -04:00
Steve McCoy 9d68d4bf21 I did only as catbase commanded, and made it worse 2018-08-28 15:03:54 -04:00
Chris Sexton e15122cfe9 bot: refactor all rand seeds into main.go 2018-07-23 13:00:19 -04:00
Chris Sexton 01056f1956 Undo a horrible git thing 2018-06-22 14:31:33 -04:00
Chris Sexton 5d6f41db3c Fix CSW 2018-06-22 14:25:43 -04:00
skkiesel f03fdb4d4e This might be entertaining on occasion 2018-06-16 17:25:33 -04:00
Chris Sexton c639d460ac go fmt 2018-05-02 07:02:04 -04:00
Chris Sexton f164530359 first: change time format 2018-03-28 03:29:42 -04:00
Chris Sexton 0357e59858 db: Add plugin to access DB
Can now download the database at /db/catbase.db
2018-02-22 17:41:48 -05:00
skkiesel a272df5e05 Listing by user to or from 2018-02-05 16:04:40 -05:00
Chris Sexton 02f3587f52
Merge pull request #100 from velour/counter_alias
Counter alias
2018-01-19 14:22:08 -05:00
Chris Sexton e5829899b0 beers: discard checkins with incomplete photos 2018-01-19 14:20:22 -05:00
Scott Kiesel a20c323ac9
Fixed comment 2018-01-10 11:47:50 -05:00
Chris Sexton a671534d86 beers: booze->beer 2018-01-05 16:54:12 -05:00
Chris Sexton dadb51cec5 counter: mkalias 2018-01-04 12:23:59 -05:00
Chris Sexton e19d982fe5 counter: add leaderboards 2018-01-04 07:39:24 -05:00
Chris Sexton 22bca5bf4d picker: less strict (no command) 2017-12-19 13:42:30 -05:00
Chris Sexton 5e52c3bb16 Merge branch 'master' of github.com:velour/catbase
* 'master' of github.com:velour/catbase:
  Change to use the lua config…
  Oh, and handle the plurals…
  Don't count "a" and "it" toward the emojification score
  one more try
  grab the bot's bot id from the message response and use that to avoid self-reply loops
2017-12-19 13:38:31 -05:00
Chris Sexton 6bc72b93d1 dice: clean up 2017-12-19 13:38:02 -05:00
Chris Sexton 132fdd29be picker: add new plugin 2017-12-19 13:37:47 -05:00
Steve McCoy 5794c73efd Change to use the lua config… 2017-12-03 13:04:55 -05:00
Steve McCoy 85b649bc98 Oh, and handle the plurals… 2017-11-27 22:09:55 -05:00
Steve McCoy 83289d65f0 Don't count "a" and "it" toward the emojification score
Fixes #95.
2017-11-27 22:07:59 -05:00
Chris Sexton 9f332909b5 tell: fix empty lists and user case 2017-11-17 08:39:35 -05:00
Chris Sexton 408c37b7c7 tell: create tell plugin 2017-11-16 17:05:22 -05:00
Chris Sexton 7e1c4e1106 sisyphus: modify min/max times a little more 2017-11-06 14:40:43 -05:00
Chris Sexton df956513c2 sisyphus: config-ize timing 2017-11-06 14:32:49 -05:00
Chris Sexton 827879b72d sisyphus: add plugin 2017-11-03 19:03:19 -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
Chris Sexton 6af9114a37 babbler: create tables no matter what 2017-10-25 18:45:45 -04:00
Chris Sexton df29c89d84 Merge branch 'aliases'
* aliases:
  fact: fix reverse detection
2017-10-25 18:17:10 -04:00
Chris Sexton c708aec4a4 fact: fix reverse detection 2017-10-25 18:16:38 -04:00
Chris Sexton be919f9fab Merge pull request #86 from velour/aliases
fact: add protection for aliases
2017-10-25 18:08:59 -04:00
Chris Sexton c6709ae521 fact: add protection for aliases
* No circular aliases may be created
* Must have a resolvable destination
2017-10-25 18:08:32 -04:00
Chris Sexton ea59e84fb1 Merge pull request #85 from velour/aliases
factoid: learn and spit out aliases
2017-10-25 12:15:15 -04:00
Chris Sexton d04e6741ea factoid: learn and spit out aliases
* Added datatype for aliases
* Added table for aliases
* Added resolving mechanism after factoid miss
2017-10-25 12:14:22 -04:00
cws a4abcb4bc1 beers: make untappd icons square
* Added all image formats to checkin structure
* Changed which image is selected for display in the channel
2017-10-05 15:00:23 -04:00
cws eae49ebe18 twitch: Add URL to stream when streams are active 2017-09-30 12:53:37 -04:00
cws 9600e0dc63 inventory: initial sketch
Fixes #2
2017-09-29 00:58:21 -04:00
cws 20c038d57c twitch: add HTTP output 2017-09-27 16:29:04 -04:00
cws 403c6dae0a twitch: update to current API
* Added OAuth abilities
* Added full API spec for endpoint response
* Use net/url to build request
2017-09-27 14:47:16 -04:00
cws d2fdb01f08 stats: fix crash 2017-09-01 14:58:44 -04:00
Chris Sexton 885fe097c0 Merge pull request #76 from velour/more_reactions
Fix Probabilities
2017-08-31 08:53:56 -04:00
skkiesel c856c55150 fix probability of generating a reaction so that it matches better with the spirit of the config value 2017-08-31 08:51:28 -04:00
Chris Sexton c157adb3c8 Merge pull request #43 from velour/your_refactor
Your refactor
2017-08-30 14:43:26 -04:00
skkiesel 980359b4e1 supplement catbase's ability to react 2017-08-30 13:54:45 -04:00
skkiesel e65afb915a look for common plural suffixes for more emoji hits 2017-08-30 09:26:11 -04:00
Chris Sexton 20842c3ada Merge pull request #73 from velour/fixfirst
first: re-enable
2017-08-19 08:00:38 -04:00
cws 19578f7147 first: re-enable 2017-08-18 05:59:46 -04:00
svohr 8119df6dea emojifyme Chance weighted on number of emojies
The chance of an emojified message being sent is now
proportional to the number of emojies that can be
substituted in the message.
2017-07-31 11:16:59 -07:00
cws f004cecf3a emojify: configurize the chance 2017-07-25 14:44:36 -04:00
Scott Kiesel e059b51fcf Merge branch 'master' into emojifyme 2017-07-25 06:17:11 -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 148f9635a0 counter: Change regex to be more accepting
Fixes #66
2017-07-24 07:40:13 -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
Chris Sexton e45c335bd3 Merge pull request #62 from velour/more_babbler_stuff
update test case to test exactly what we want
2017-06-16 18:49:12 -04:00
skkiesel dcf45d2145 update test case to test exactly what we want 2017-06-16 15:19:11 -04:00
Chris Sexton 4664ffec58 Merge pull request #61 from velour/more_babbler_stuff
quiet down the babbler
2017-06-16 15:10:22 -04:00
skkiesel 8735a2283b quiet down the babbler 2017-06-16 15:02:28 -04:00
cws 3607a7ee23 Merge branch 'master' of github.com:velour/catbase
* 'master' of github.com:velour/catbase:
  try to force the bridge command to give less deterministic results
  add middle out compression, I mean babbles
  update babbler syntax
2017-06-08 10:02:20 -04:00
cws 973900dd54 fact: fix syntax 2017-06-08 10:02:10 -04:00
Chris Sexton e453f740c9 Merge pull request #60 from velour/more_babbler_stuff
More babbler stuff
2017-06-08 09:59:53 -04:00
skkiesel 11c4f78bbd try to force the bridge command to give less deterministic results 2017-06-07 20:07:26 -04:00
skkiesel bd7cf6be7c add middle out compression, I mean babbles 2017-06-07 20:02:42 -04:00
skkiesel 8edba10b5d update babbler syntax 2017-06-07 20:02:18 -04:00
cws 07f5749f1a fact: add back global check 2017-06-07 14:56:14 -04:00
cws b4c0f36260 Merge branch 'fix_ownership'
* fix_ownership:
  fact: remove owner check from edit
2017-06-07 14:51:43 -04:00
cws f7bd5a8eb4 fact: remove owner check from edit 2017-06-07 14:51:26 -04:00
cws 94d373c567 Merge branch 'master' of github.com:velour/catbase
* 'master' of github.com:velour/catbase:
  Even more custom babbling... with bookends! closed #58
2017-06-07 14:46:54 -04:00
cws 59b92bdf3c fact: remove ownership check for delete 2017-06-07 14:46:34 -04:00
skkiesel 9734845146 Even more custom babbling... with bookends! closed #58 2017-06-06 20:03:07 -04:00
cws 2ebc5fe18f stats: Fix hour keys 2017-06-06 07:24:44 -04:00
cws 1d290c287e stats: fix hours bucket; standardize date format 2017-06-06 06:30:12 -04:00
cws b998347f33 stats: forgot to close the file in web serving 2017-06-06 05:57:33 -04:00
cws ae75b23252 Merge branch 'stats'
* stats:
  stats: Add a dumb URL for getting all stats from the db
  gitignore: get rid of swp files
2017-06-05 21:45:50 -04:00
cws 30789669b7 stats: Add a dumb URL for getting all stats from the db 2017-06-05 21:45:34 -04:00
Chris Sexton 1bb3f17dc1 Merge pull request #56 from velour/stats
Stats plugin
2017-06-05 21:21:24 -04:00
cws 4213243744 stats: Add a day categorization above all others 2017-06-05 21:20:08 -04:00
cws de19f6a4e9 stat: change encoding to JSON 2017-06-05 21:03:23 -04:00
cws e1e58591ec stats: Add tests and clean a few things up
* Make statFromDB return 0 if no stats are in the DB instead of error
* Convert tests to use the assert library
* Add tests for actual messages
2017-06-05 20:54:19 -04:00
cws 95616e0fb8 stats: WIP demo of stats
* Added a plugin for stats
* Using BoltDB for ease of not screwing with SQL
** Perhaps everything should be Bolt...
* Should be relatively easy to add new stat counters:
** Create a function that makes the stat{} struct
** Add it to the list of active counters
* Should be relatively easy to add a views page later
2017-06-05 20:52:35 -04:00
skkiesel aaba7c5bff allow babbles to formed with suffixes (closes #55) 2017-06-05 19:53:19 -04:00
skkiesel df50130389 limit babble lengths... loops are not for kids 2017-05-25 15:22:58 -04:00
Chris Sexton 4fcc279433 Merge pull request #53 from velour/babbler_persist
Some sexy new features
2017-05-19 08:55:03 -04:00
skkiesel 9e56b54680 it was a disaster before, now it is less. 2017-05-17 10:06:10 -04:00
Chris Sexton 6da17f7dc1 Merge pull request #51 from velour/rss
barebones rss headline skimmer
2017-05-15 13:00:24 -04:00
skkiesel 64ed2bf9de back up the reminders in the database for a better msherms pestering experience 2017-05-11 12:40:59 -04:00
skkiesel 889372dcb4 add paging to rss feeds 2017-05-10 15:56:03 -04:00
skkiesel 9c39e3cd41 barebones rss headline skimmer 2017-05-10 15:19:07 -04:00
skkiesel e97ce576b8 probably not a huge memory savings, but only represent each unique word once and then reference them by their key for each babbler 2017-05-10 12:43:41 -04:00
skkiesel efde5d804d add feedback for when a seed isn't found 2017-05-10 10:11:49 -04:00
skkiesel 24f373d20f when read through the whole set of quote rows before beginning adding back into the babbler 2017-05-10 09:50:37 -04:00
skkiesel f28dabf0ba clean up and ignore empty strings when adding to the markov chain 2017-05-10 09:42:27 -04:00
skkiesel 8c98734e7e Add useful error messages when a babbler isn't found or when a user hasn't said something yet 2017-05-10 08:41:41 -04:00
Chris Sexton 419c188085 Merge pull request #50 from velour/babbler_persist
refactoring this to use a db took more time than all previous work co…
2017-05-09 20:06:48 -04:00
skkiesel de4defde1b refactoring this to use a db took more time than all previous work combined on this plugin. 2017-05-09 19:41:40 -04:00
skkiesel e22890cd83 cancel reminders 2017-05-09 10:12:24 -04:00
skkiesel 3c7af6c51f batch adding of reminders for msherms 2017-05-01 11:54:44 -04:00
skkiesel b2dc49d715 reminder listing 2017-04-27 12:47:18 -04:00
skkiesel 57eb211983 Remove the responses when we think we have a babble request but there is no babbler or the babbler is empty 2017-04-12 09:02:00 -04:00
skkiesel c8ea09fc1d allow the babbler to be seeded with a full phrase 2017-04-07 15:45:15 -04:00
skkiesel 2b9cdda019 move the specification of replacements into the config file 2017-03-13 13:44:44 -04:00
skkiesel f2309b9090 give catbase some negative back talk 2017-03-13 12:41:17 -04:00
svohr 39d5dec694 Updated tea test to replace 🍵 with 🍵 2017-02-20 12:19:49 -08:00
svohr 8087f23d53 Merge branch 'master' of https://github.com/velour/catbase into tea-bug
Resolved new regex with change replacing 🍵 with 🍵
2017-02-20 12:06:30 -08:00
svohr ae3a4eee52 Fixed tea regex to fix bad matches that ended in iced
Added a test based on skiesel's quote that triggered it.
2017-02-20 11:57:12 -08:00
Chris Sexton 4f7908370f Change emoji 🍵 to 🍵 2017-02-16 16:28:45 -05:00
svohr 6917e091af "Tea. Earl Grey. Hot." generalized for any tea, hot or iced. 2017-02-14 20:56:29 -08:00
cws cdb77a5119 Tea. Earl Grey. Hot. 2017-01-31 15:35:05 -05:00
cws 2957b6f4d5 Add reset me command 2017-01-23 21:13:21 -05:00
Steve McCoy c261b53ae6 Fix obvious problems 2017-01-23 10:10:54 -05:00
Steve McCoy 10beb0a34f This looks like += and -= 2017-01-17 17:57:39 -05:00