Commit Graph

608 Commits

Author SHA1 Message Date
Scott Kiesel 6c27e0cafd go fmt because apparently we're all too amazing to handle ill-formatted code, wimps 2020-03-13 10:23:00 -04:00
Scott Kiesel 859fb258d2 A great stupid plugin where you guess the random wikipedia article 2020-03-13 10:16:32 -04:00
Chris Sexton a4fd340a53 newsbid: sort reverse 2020-03-11 13:15:12 -04:00
Chris Sexton e2352a214b newsbid: sort scores by score 2020-03-11 12:29:36 -04:00
Chris Sexton 81cc0dc55b config: add push command
* you can now run `push <setting> <value>` to add values to a setting
2020-01-29 12:35:34 -05:00
Chris Sexton 4275619e49 twitter: filter out retweets 2020-01-28 14:50:55 -05:00
Chris Sexton fc18fba2d8 counter: use absolute value for counter 2020-01-24 16:56:22 -05:00
Chris Sexton 7f183b4f2a counter: make matched things decrement sometimes 2020-01-21 16:29:43 -05:00
Chris Sexton 99817ad621 picker: make pick a command 2020-01-08 08:20:50 -05:00
Chris Sexton 595492a16b fact: add image verb
This will attach the last URL it sees as an image attachment. It will
fail if that is not a valid image (IDK, slack will get mad) and if no
image is found, it will send as text. The text in the message that is
not a URL will be sent as the image title.
2019-12-30 10:30:37 -05:00
Chris Sexton 47c3def722 newsbid: make the !bids command look nicer 2019-12-22 09:05:27 -05:00
Chris Sexton 2625671ed6 bid: show string in bid list 2019-12-22 08:07:02 -05:00
Chris Sexton 408794fe58 newsbid: improve display of news items 2019-12-22 08:07:02 -05:00
Chris Sexton 7b8f37d67d wip 2019-12-22 08:07:02 -05:00
Chris Sexton b3f3e09d89 hn: remove more scrapes 2019-12-22 08:07:02 -05:00
Chris Sexton af9fc12038 hn: use api 2019-12-22 08:07:02 -05:00
Chris Sexton 958a454271 aoc: add link to leaderboard 2019-12-07 21:46:08 -05:00
Chris Sexton 95cbada51d aoc: filter for users that have stars 2019-12-03 10:14:52 -05:00
Chris Sexton 4c69cefa39 aoc: add plugin 2019-11-30 23:59:52 -05:00
Chris Sexton 72da1d3c78 git: order gitea commits 2019-11-29 11:10:59 -05:00
Chris Sexton 6e66498d25 git: add filter for branches on github 2019-11-26 17:53:11 -05:00
Chris Sexton b2136c1b41 counter:add unicde filter to getItem 2019-11-25 14:31:54 -05:00
Chris Sexton 3ad86f2308 pick: fix broken pick
* simplified picking regex
* added test case for previously broken message
2019-11-22 11:55:58 -05:00
Chris Sexton 905da629b9 bids: get a vote:comment ratio for scoring
* Ratio defaults to 1.0 on error
* Ratio bonus if a 0 comment article wins
* Remove buggy tests
* Add example scraping util for debugging
2019-11-14 10:15:39 -05:00
Chris Sexton 30cd91079c react: add searched reactions 2019-11-11 18:13:05 -05:00
Chris Sexton a31d2b446e go fmt 2019-11-08 10:20:01 -05:00
Chris Sexton 4b749d316d bids: mark bids instead of deleting them 2019-11-08 10:20:01 -05:00
Chris Sexton 3a4d69bae0 git: move icons to each commit/event 2019-11-04 08:19:51 -05:00
Chris Sexton 7f5f62d04a git: fix icon 2019-11-03 08:27:50 -05:00
Chris Sexton 97ca444df9 git: don't show empty changeset 2019-11-03 08:10:01 -05:00
Chris Sexton d1149e7022 git: actually do the thing 2019-11-03 07:59:53 -05:00
Chris Sexton 6ada638968 git: add icons
Also break services out into individual files
2019-11-03 07:47:45 -05:00
Chris Sexton 6e62ccf00d webshit: add links to articles 2019-11-02 18:21:40 -04:00
Chris Sexton 8d74baddba git: fix gitea formatting 2019-11-02 18:21:40 -04:00
Chris Sexton f1f5fb3c12 git: add nicer repo addition & gitea support
Also added an `!unset` command for configurations.
2019-10-26 17:43:31 -04:00
Chris Sexton 6a332bcd8e gitlab: fix event URL 2019-10-26 15:40:49 -04:00
Chris Sexton 6393d8bb22 git: change message formatting 2019-10-26 15:40:49 -04:00
Chris Sexton 686ba1d662 git: only respond to PR opened event
Probably will need to check this on other events too.
2019-10-26 15:40:49 -04:00
Chris Sexton 2694463964 git: add git hook support for github & gitlab 2019-10-26 15:40:49 -04:00
Chris Sexton 134d5ea47b first: put the order back in 2019-10-26 11:51:07 -04:00
Chris Sexton 44b0a4f9f3 first: add leaderboard 2019-10-26 11:31:09 -04:00
Chris Sexton 0112b23aa5 twitter: fix persistence 2019-10-20 21:03:13 -04:00
Chris Sexton 1d40a53c51
Merge branch 'master' into tweetpersist 2019-10-20 10:54:03 -04:00
Chris Sexton 47fadc984f twitter: persist last tweet id 2019-10-20 10:53:07 -04:00
Chris Sexton 68118136f2 fuck: stop he-who-must-not-be-named's antics
* verify instruction limit setting
* truncate output buffer
2019-10-20 10:39:31 -04:00
Chris Sexton 3966fd55f7 fuck: add a brainfuck interpreter to the bot 2019-10-20 09:21:27 -04:00
Chris Sexton 42c083314c twitter: add plugin 2019-10-17 09:40:40 -04:00
Chris Sexton fa512bc90b pick: add delimiter support
* Default is still `,`
* Can choose any string directly after pick, for example `pick- {a- b- c}`
2019-10-08 18:15:07 -04:00
Chris Sexton 1efedb7e60 tell: add troll 2019-10-08 17:09:12 -04:00
Chris Sexton 7152c1543e tell: make it db backed 2019-10-08 16:50:29 -04:00
Chris Sexton 4fd0683a8d zork: make path to exec and dat configurable
zork: squash pkgPath err

zork: add flag support
2019-10-01 14:43:36 -04:00
Chris Sexton 631a0c2b0c untappd: switch text line for image descriptions
Checking out a reorder of the args too.
2019-09-28 14:24:45 -04:00
Chris Sexton 3ba71cf9f6 untappd: fix badge image to match json 2019-09-28 13:45:53 -04:00
Chris Sexton 267ec1a8bf untappd: split badge between msg and images 2019-09-28 13:18:23 -04:00
Chris Sexton 5cb6f9ad7e untappd: add badge support
Note: this may not work on the first try. I'm not going to sit around
waiting for a badged checkin in #test.
2019-09-28 13:14:15 -04:00
Chris Sexton 258a3370d7 reaction: add sentiment analysis; remove harass
The harass stuff may come back later.
2019-09-27 10:39:43 -04:00
Steve McCoy bd99f95345 Add emoji tags to the week's winner(s) 2019-08-24 14:36:24 -04:00
Chris Sexton 72a0f4f249 fix integer multiplation bug 2019-08-13 16:14:48 -04:00
Chris Sexton a0bb4c7d1e newsbid: divide all bids amongst winners
* No more negative scores
* Winners divide all points based on their bets
2019-08-11 15:05:15 -04:00
Chris Sexton c71e2beb34 Merge branch 'webshit_urls' of github.com:velour/catbase into webshit_urls
* 'webshit_urls' of github.com:velour/catbase:
  bid: disallow negative bids
2019-08-08 10:20:22 -04:00
Chris Sexton 4ef471eff2 webshit: add missing test update 2019-08-08 10:19:52 -04:00
Chris Sexton 729eb61dee
Merge branch 'master' into webshit_urls 2019-08-08 10:15:52 -04:00
Chris Sexton 705aa294d5 webshit: fix URL matching to use query string 2019-08-08 10:13:24 -04:00
Chris Sexton a7fbc8590b bid: disallow negative bids 2019-07-18 14:57:24 -04:00
Chris Sexton ffde8e2492 bid: add title to !bid command response 2019-07-16 15:55:38 -04:00
Chris Sexton f8ee4224a1 bid: change to matching by URL
And fix URL scraping of the n-gate RSS.
2019-07-16 15:49:35 -04:00
Chris Sexton bdfd6060a0 bid: fix losing story mode; pretty it up a little 2019-07-15 22:00:19 -04:00
Chris Sexton 286582417b bid: connect scores/bids/etc to the chat 2019-07-15 16:55:35 -04:00
Chris Sexton dd0f9efeae bid: add check routine 2019-07-15 14:57:23 -04:00
Chris Sexton 04239ec807 bid: add some tests and tables 2019-07-15 13:40:34 -04:00
Chris Sexton cdff69abdc bid: Add a skeleton of an n-gate bidding game
* webshit module will house any logic needed for the game
* newsbid is the top-level plugin to be used for the bot interface
2019-07-15 12:48:34 -04:00
Scott Kiesel 937d74afec
Merge branch 'master' into stock 2019-06-13 10:26:52 -04:00
skiesel 48c395b026 fixed loss of decimal point in stock prices 2019-06-13 10:25:17 -04:00
Chris Sexton b6a89ff06a web: use secret instead of human test
* Applies for services that modify data
* Anybody in the slack can ask for the daily secret
2019-06-13 10:04:06 -04:00
Chris Sexton c127fa4798
Update index.go
remove vue debug mode
2019-06-09 00:56:59 -04:00
Chris Sexton 05fd032bea web: bugfix pack
* menuize front page
* fix url bug
* fix cli
2019-06-09 00:54:05 -04:00
Chris Sexton 9ea45f0ad3 web: add a menu and redo index
We can add arbitrary links now with the `bot.links` config
2019-06-09 00:18:57 -04:00
skiesel d372541735 stock checker 2019-06-07 14:32:20 -04:00
Chris Sexton fe8763f78a first: change to per channel
And be sure not to pay attention to private/direct messages
2019-06-06 10:33:50 -04:00
Chris Sexton 0aa5aad27d web: add vars interface 2019-06-02 09:28:13 -04:00
Chris Sexton a7712530f9 fact: remove old handler 2019-05-27 23:15:42 -04:00
Chris Sexton ab3dac35ba web: redo factoid page; add title to counter page 2019-05-27 23:14:05 -04:00
Chris Sexton 20a56a4fcc web: small improvements 2019-05-27 22:16:35 -04:00
Chris Sexton f46ea524f3 cli: move html->go to fool GitHub 2019-05-27 19:26:17 -04:00
Chris Sexton 42f7f52bfb cli: make a new plugin 2019-05-27 19:23:05 -04:00
Chris Sexton 55b2b707c1 counter: add a web interface 2019-05-27 14:27:34 -04:00
Chris Sexton a865dfe2da tldr: change history to be in order; clamp to 24h 2019-04-12 11:53:40 -04:00
Chris Sexton c54591998e
Merge branch 'master' into eaburns-patch-1 2019-04-12 10:45:56 -04:00
skiesel e08601ebec Add stop words to the config 2019-03-28 17:38:04 -04:00
Ethan Burns 78fc108de4
Don't show scores in tl;dr
They are noisy and not very useful.
2019-03-26 20:22:21 -04:00
Ethan Burns efcf8a7c34
Fix tl;dr formatting
Remove extra space before `:`.
Make topics bold.
Add a blank line between topics.
Remove leading tabs.
2019-03-26 19:31:09 -04:00
Chris Sexton fa5a0a284b tldr: fix small bug about indexing 2019-03-26 17:55:07 -04:00
Chris Sexton 0650a352c8 tldr: limit to 24h and limit rapid checks
Also refactor a little bit.
2019-03-26 17:51:28 -04:00
skiesel 22ba451d4c Filter empty evidence, show scores 2019-03-22 06:49:24 -04:00
skiesel ce922135cd Fix silly sizing mistake 2019-03-21 22:29:10 -04:00
skiesel dbc99bfe7a Add supporting docs size 2019-03-21 22:15:38 -04:00
skiesel b4b09e74c6 Track who said what 2019-03-21 22:00:59 -04:00
skiesel 650ccb190d TL;DR Latent Dirichlet Allocation summarizer 2019-03-21 20:12:15 -04:00
Chris Sexton f267ae07e3 slack: add image support
* Make untappd checkins embed images
* Added attachment types as an optional send arg
2019-03-09 22:41:43 -05:00
Chris Sexton 05431ab1fd reminder: these reminder tests are bad and bullshit 2019-03-09 22:00:14 -05:00
Chris Sexton 2a00308695 reminder: fix bad subtraction 2019-03-09 21:55:01 -05:00
Chris Sexton 83815324bf remind: parse times with a nice date parser 2019-03-09 21:26:11 -05:00
Chris Sexton a2d5d173f9 logging: switch to a logging library 2019-03-07 11:46:59 -05:00
Chris Sexton b1c450da08 cowsay: make messages visible :( 2019-03-07 11:37:56 -05:00
Chris Sexton 300de48c39 cowsay: velour's first slash command 2019-02-21 09:48:48 -05:00
Chris Sexton eea4703129 talker: add cowsay 2019-02-20 16:47:41 -05:00
Robert Uhl 44bf5b43a1
Update Tests 2019-02-20 14:17:45 -05:00
Robert Uhl ec8ce42abb
Add example text for time parse errors 2019-02-20 14:16:55 -05:00
Chris Sexton 6a1cabc2aa beers: fix bad indirection issue 2019-02-15 15:12:09 -05:00
Chris Sexton 47a824e8da remember: fixed something? It works now. 2019-02-15 14:54:14 -05:00
Chris Sexton 32ca0c5bf7 help: fix the help system after I borke it
* Also fix twitch's help registration and message
2019-02-12 12:26:27 -05:00
skkiesel 1842aeba82 A new small tea-ture 2019-02-12 11:03:24 -05:00
Chris Sexton 74efe02c75 twitch: make stream announcements more complicated
And fun. Now they're templates.
2019-02-09 08:32:27 -05:00
Chris Sexton a20839cdd7 bot: Invert RegisterWeb 2019-02-07 11:30:42 -05:00
Chris Sexton 104ff85a0d downtime: remove dead plugin 2019-02-07 11:22:27 -05:00
Chris Sexton 980b079bf3 slackApp: create new connector for an app
* Using a library because I'm lazy.
* Fixed a few noisy things in Twitch and Untappd
* Moved connectors to a common place
2019-02-05 22:52:49 -05:00
Chris Sexton 00d998fc59 beers: be quiet 2019-02-05 21:32:33 -05:00
Chris Sexton c504173022 twitch: check gameID instead of title 2019-02-05 21:13:35 -05:00
Chris Sexton 287c26440e emojify: don't chomp up the rest of the pipeline
added bonus fix
2019-02-05 16:02:00 -05:00
Chris Sexton 5ee5f33e36 tests: refactor for new system 2019-02-05 15:02:15 -05:00
Chris Sexton 90e7b11308 plugins: add callback handler registrations 2019-02-05 14:41:38 -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 2e20971dd1 Merge branch 'master' into events
* master:
  twitch: configerize the stream word
2019-02-05 11:41:50 -05:00
Chris Sexton 1f69a653a9 tests: refactor mock to match new interface 2019-02-05 11:37:33 -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 0c93259c55 twitch: configerize the stream word 2019-02-04 22:17:33 -05:00
skkiesel 1726b83438 Limit the listing pain caused by inflicting reminder pain on others 2019-01-27 11:20:36 -10:00
Chris Sexton e161e9fece
Merge pull request #138 from velour/quiet
admin: be quiet
2019-01-25 10:09:44 -05:00
Chris Sexton 17afdda35e admin: be quiet
This will not silence any out of band messages such as Untappd checks,
Twitch notifications, or the startup message.

This will cause catbase not to know anything about the conversation,
which means quoting something during the quiet period is impossible.
Everything during quiet time is off the record.
2019-01-25 10:05:26 -05:00
Chris Sexton adb0eb9f45
emojify: add direct eq 2019-01-22 10:59:08 -05:00
Chris Sexton 2aaf18518a emojify: flipped lt 2019-01-22 10:52:28 -05:00
Chris Sexton 8795d956ff emojify: flipped lt 2019-01-22 10:51:19 -05:00
Chris Sexton aee106b21b emojify: make sure there are spaces around beginning/ending emojy 2019-01-22 10:43:10 -05:00
Chris Sexton 0593b4f164 config: set some defaults 2019-01-21 19:16:57 -05:00
Chris Sexton c07e612941 emojify: woops 2019-01-21 18:30:20 -05:00
Chris Sexton 4d188bdf20 emojify: handle plurals again 2019-01-21 18:05:35 -05:00
Chris Sexton 36320df725 emojify: change THE ALGORITHM 2019-01-21 18:00:51 -05:00
Chris Sexton 7a74ca0059 emojifyme: make it use ractions; add velour emojy 2019-01-21 17:15:46 -05:00
Chris Sexton 9ea1ba68f5 admin: add ability to get/set config values
* Users cannot get/set sensitive values
* Removed example lua config file
2019-01-21 16:26:54 -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
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