Chris Sexton
7c0a777737
twitch: add reauthentication
...
- refactored secrets to be in config
- added missing format string to bot
2022-08-03 21:12:08 -04:00
Chris Sexton
45103cec62
admin: fix nick regex
2022-08-02 13:42:35 -04:00
Chris Sexton
7af94f3473
admin: conditionally require admin for nick change
2022-08-02 13:35:50 -04:00
Chris Sexton
e92c89891f
bot: add ability to change nick
2022-08-02 13:35:50 -04:00
Chris Sexton
3482c0c8e4
roles: enable the set offering command
2022-07-29 07:07:31 -04:00
Chris Sexton
c3e1a72f9a
bot: fix admin to respect ID instead of nick
2022-07-29 07:07:31 -04:00
Chris Sexton
1488033c52
why is this file here?
2022-07-28 17:51:42 -04:00
Chris Sexton
ad3b264a89
roles: make toggle case insensitive
2022-07-28 17:51:42 -04:00
Chris Sexton
09cc6f75c3
emojy: reorder the stats page
2022-07-23 12:58:33 -04:00
Chris Sexton
bffc1589c2
emojy: add a threshold for stats page
2022-07-23 12:58:33 -04:00
Chris Sexton
b1cec209fe
emojy: show names on stats page
2022-07-23 12:42:58 -04:00
Chris Sexton
668b0dcb7b
emojy: sort the emojy list page
2022-07-23 09:49:27 -04:00
Chris Sexton
4c1a02e9fb
cowboy: reuse some code
2022-07-23 09:27:21 -04:00
Chris Sexton
274d8f6966
cowboy: fix original url
2022-07-23 09:10:38 -04:00
Chris Sexton
51da6187b0
emojy: swap in emojy command
2022-07-23 09:02:57 -04:00
Chris Sexton
0453c5ec24
cowboy: show the emojy when its made
2022-07-23 08:59:32 -04:00
Chris Sexton
3297878421
cowboy: fix overlay capture bug
2022-07-23 00:39:45 -04:00
Chris Sexton
93cfc0ddfb
cowboy: optionally disable overlay command for now
2022-07-23 00:22:13 -04:00
Chris Sexton
a64f4800b1
cowboy: add slash command
2022-07-23 00:22:13 -04:00
Chris Sexton
2ce2b01295
cowboy: use cache to set bounds
2022-07-23 00:22:13 -04:00
Chris Sexton
112ccea89a
cowboy: add cache
2022-07-23 00:22:13 -04:00
Chris Sexton
ba99b2113c
discord: add slash command structure
2022-07-23 00:22:13 -04:00
Chris Sexton
22658949a8
emojy: update web UI a bit
...
- cards on list
- add text name to stats
2022-07-22 10:18:52 -04:00
Chris Sexton
cf19a2bc15
cowboy: anchor emojy pages to URLs
...
This also refactored a bunch of junk and eliminated about 4k calls to
the config/database on emojy listing.
2022-07-22 10:18:52 -04:00
Chris Sexton
79cdd0f828
cowboy: stop scaling the base image so much
2022-07-22 09:16:54 -04:00
Chris Sexton
1d30a25277
cowboy: rm the original message
2022-07-21 11:42:48 -04:00
Chris Sexton
f548f74be9
cowboy: make plugin
2022-07-21 11:29:45 -04:00
Chris Sexton
b2ec081d51
counter: trim some spaces near aliases
2022-07-18 21:47:03 -04:00
Chris Sexton
2e0be87dd9
counter: fix ID null string regression
...
Also remove shared DB cache as it seems to not be necessary.
2022-07-17 14:46:09 -04:00
Chris Sexton
96229c9e11
counter: change http rate limiter criteria
2022-07-17 14:46:09 -04:00
Chris Sexton
72c32e1c16
counter: fix bug where anything but the right password worked
2022-07-17 14:46:09 -04:00
Chris Sexton
df0b5d709b
counter: fix bug where user ID was not passed to resolveUser
2022-07-17 14:46:09 -04:00
Chris Sexton
aa7d377c08
counter: update model to reflect that the ID may be null
2022-07-17 14:46:09 -04:00
Chris Sexton
60678fcad2
add rate limit middleware
2022-07-07 11:28:22 -04:00
Chris Sexton
56120b168c
emojy: add swap and disallow upload overwrites
2022-06-08 21:24:44 -04:00
Chris Sexton
feb42b8293
emojy: allow creation and removal of emojy
...
- includes a web interface for uploading new images
- includes a web interface for viewing 'possible' images
2022-06-08 21:03:21 -04:00
Chris Sexton
2f8bf0edcb
emojy: trim some characters here and there
2022-06-07 10:30:07 -04:00
Chris Sexton
61cdb66546
emojy: indicate if an emojy is on the server
2022-06-06 10:49:27 -04:00
Chris Sexton
e8c7e1e07e
emojy: make the web page nicer
...
- show custom emojy
- categorize by source type
- record emojy used in messages
2022-06-06 10:24:54 -04:00
Chris Sexton
aa88ef44f5
emojy: redo database schema
...
- record emojy as timestamped log instead of a count
2022-06-02 11:03:45 -04:00
Chris Sexton
4e3cbbafad
factoid: refactor and ignore reaction
...
- factoid is a mess, but I at least split it into a few parts
- need to move config values from factoid to fact
- need to rename the whole thing to fact
- probably need to go over it with a fine toothed comb
- 5 seconds, why 5 seconds? I still don't know
- added kind to the message type so we can filter reactions out
2022-05-31 11:27:34 -04:00
Chris Sexton
46e61f69d0
counter: use blank ID if none found
...
This fixes an issue where if the user hasn't spoken since the bot
restarted, the counter can't increment.
2022-05-30 19:15:17 -04:00
Chris Sexton
1c22632a41
emojy: create plugin
...
- added reaction type and event for discord connectors
- added web page to view emojy usage
- added new table for counting emojy
2022-05-30 16:38:05 -04:00
Chris Sexton
104f48b1c3
meme: configify the default meme config
2022-05-25 15:16:26 -04:00
Chris Sexton
69cee328e7
twitch: fix web server
2022-05-20 17:16:31 -04:00
Chris Sexton
a4108ecc82
twitch: change some names to match the API
2022-05-18 10:46:37 -04:00
Chris Sexton
32cca1497a
counter: add increment by N api
2022-05-05 18:15:38 -04:00
Chris Sexton
3964e1f4b2
meme: disable direct URL memes
...
GitHub noticed this is a security problem, so I am disabling it.
2022-03-22 20:30:07 -04:00
Chris Sexton
471c3ecff4
all: update to go1.18 and any interface
2022-03-21 21:36:04 -04:00
Chris Sexton
3af3633559
web: fix vue version references
...
3.x came out and @latest busted everything.
2022-02-18 07:20:02 -05:00
Chris Sexton
63c850f9ce
beers: catbase more woke than you. bask in his virtue
2022-01-17 10:12:31 -05:00
Chris Sexton
d036aacc0a
mayi: add a should clause
2022-01-03 16:15:23 -05:00
Chris Sexton
c5a13116fa
roles: add help
2022-01-03 07:41:44 -05:00
Chris Sexton
d89569cdc6
mayi: fix regex
2021-12-17 08:49:10 -05:00
Chris Sexton
9670e0e657
counter: reorder goal and count
2021-12-04 16:05:19 -05:00
Chris Sexton
6d004d8d1f
counter: fix api and add a message when one exists
2021-11-28 14:22:22 -05:00
Chris Sexton
2a9ae13560
roles: add plugin
2021-11-20 15:34:38 -05:00
Chris Sexton
d2c5489634
first: stop spitting out dumb logs
2021-11-19 13:35:30 -05:00
Chris Sexton
7af715aee9
gpt3: add stop configuration
2021-11-19 13:23:11 -05:00
Chris Sexton
46b2b0b57f
gpt3: add plugin
2021-11-19 11:26:54 -05:00
Chris Sexton
338293cf42
counter: use channel in api update
2021-11-18 17:21:04 -05:00
Chris Sexton
fd670339c0
counter: api should update goals
2021-11-18 16:50:50 -05:00
Chris Sexton
3343a98802
pubsub: add counter pub
2021-11-15 20:51:40 -05:00
Chris Sexton
4f9b50f47a
impossible: eff these broken tests
2021-11-08 09:46:22 -05:00
Chris Sexton
fc27096a6d
impossible: change locale to time.Local
2021-11-08 09:46:22 -05:00
Chris Sexton
fff478a9f6
meme: add font support
2021-10-22 16:48:59 -04:00
Chris Sexton
6bcf1142c4
mayi: add coinflip plugin
2021-10-13 21:15:14 -04:00
Chris Sexton
373929646c
history: record history in bot
2021-10-05 19:12:35 -04:00
Chris Sexton
2cfca47d7d
ngate: fix formatting for all platforms
2021-09-18 10:27:33 -04:00
Chris Sexton
6cacff4513
rest: add post and help
2021-09-16 18:23:53 -04:00
Chris Sexton
646282b233
rest: bypass jq when it's convenient
...
Adding a custom parser for GPT-2 queries because it's easier this way.
2021-09-03 09:51:28 -04:00
Chris Sexton
da69df36d4
first/last: filter channels
2021-08-26 10:09:49 -04:00
Chris Sexton
5773141b1c
goals: send goal messages to the correct channel
2021-08-23 11:47:57 -04:00
Chris Sexton
d214fe0c45
goals: fix remaining regex
2021-08-23 11:34:39 -04:00
Chris Sexton
cf30dad055
goals: fix goal reporting
2021-08-23 11:34:39 -04:00
Chris Sexton
ba0f38b342
beers: change default beer item
2021-08-21 08:44:54 -04:00
Chris Sexton
02837bf136
first: fix time to use local
2021-08-21 07:27:31 -04:00
Chris Sexton
cd5018af77
quotegame: tell us who it was when we lost
2021-08-11 12:43:11 -04:00
Chris Sexton
b0dd44687a
quotegame: remove debug, add time report
2021-08-11 12:25:00 -04:00
Chris Sexton
24668cf774
quotegame: add game
2021-08-11 12:12:26 -04:00
Chris Sexton
99abd9bb2f
slack: update library
2021-08-11 12:12:26 -04:00
Chris Sexton
7464a7c84c
quotegame: draft of game
2021-08-11 12:12:26 -04:00
Chris Sexton
792f8681ab
beers: fix URL parameters for images
2021-08-05 11:02:19 -04:00
Chris Sexton
13e16c9f01
web: change to embedded pages
...
counter: embed counter page
admin: move vars and apppass to embedded
secrets: move to embedded
cli: move to embed
meme: move to embed
fact: move to embed
bot: move to embed
fix write command
2021-07-29 13:00:33 -04:00
Chris Sexton
7ba9d94ac2
counter: add api, bot: change routes
...
* many routes changed by adding the chi router
* counter has an authenticated API to increment and decrement
2021-07-28 11:41:01 -04:00
Chris Sexton
c47a4f7c6f
web: migrate endpoint registration to chi
2021-07-28 11:41:01 -04:00
Chris Sexton
31fe84b0ba
apppass: add password generation page
2021-07-21 09:59:43 -04:00
Chris Sexton
64bce99455
first: add configurable jitter
...
This should prevent Slack's scheduled messages from gaming first
2021-07-03 13:11:52 -04:00
Chris Sexton
1619a7f7d4
achievements: add a list function
2021-06-17 16:24:01 -04:00
Chris Sexton
825a8d267f
goals: fix default channel reporting
2021-06-17 14:26:19 -04:00
Chris Sexton
9eb801f570
newsbid: filter zero balances
2021-06-17 13:04:15 -04:00
Chris Sexton
ec47c31a80
rest: add testwire, remove some secret leaks
2021-05-20 18:36:20 -04:00
Chris Sexton
a1c5a4c580
secrets: add plugin
...
Also modify rest to use secrets plugin
2021-05-20 10:03:07 -04:00
Chris Sexton
0cd1b5e7ed
rest: add jq parsing instead of field selection
2021-05-19 14:01:36 -04:00
Chris Sexton
086bc9f0f9
gpt2: remove plugin
2021-05-19 11:55:20 -04:00
Chris Sexton
1e5a82d281
rest: create plugin
...
RestPlugin allows users to dynamically create transports and integrate services
from outside of catbase.
New commands:
* wire `regex` to URL `field`
* list wires
* rm wire ID
2021-05-19 11:55:20 -04:00
Chris Sexton
2045fc4591
goals: fix ordering of commands
2021-05-04 14:08:33 -04:00
Chris Sexton
e1250dd25e
last: don't report a last if none exists
2021-04-30 09:11:38 -04:00
Chris Sexton
850f5248ef
last: fix schema
2021-04-28 17:15:22 -04:00
Chris Sexton
c5d468c723
last: add multichannel support
...
This
* ensures the last is between yesterday and yesterday
* adds a channel check to the query
* adds a command to check a specific channel
2021-04-28 16:52:07 -04:00
Chris Sexton
802911203f
last: fix crash
2021-04-28 12:52:32 -04:00
Chris Sexton
19cbf5efd9
last: add filters for invalid messages
2021-04-28 12:15:09 -04:00
Chris Sexton
4c669e520f
last: create plugin
2021-04-27 12:45:52 -04:00
Chris Sexton
40d057b6a6
your: refactor
...
Ref #346
2021-03-23 13:45:11 -04:00
Chris Sexton
67c88190ab
giph: add not found message
2021-02-28 23:19:43 -05:00
Chris Sexton
5a7544d828
giph: add plugin
2021-02-28 23:19:43 -05:00
Chris Sexton
fe5e9a6226
remember: refactor
2021-02-19 13:25:48 -05:00
Chris Sexton
c7c315ad8c
reaction: refactor
2021-02-19 12:23:40 -05:00
Chris Sexton
8cd79d486e
picker: refactor
2021-02-19 12:14:59 -05:00
Chris Sexton
defeb9b3b1
meme: maybe fix discord maybe not
2021-02-18 18:01:45 -05:00
Chris Sexton
91ac29d085
meme: memes generated at request time
...
* Moved meme generation to the URL service
* URLs now contain the meme configurations
* Cached by config (expires with bot restart)
2021-02-18 17:41:38 -05:00
Chris Sexton
332d992d05
counter: use IDs when available
...
This should help alleviate user name changes, but may not fix it
entirely. Had to update beers and goals to match an ID search.
Note: this will bust badly for IRC
2021-02-14 17:00:56 -05:00
Chris Sexton
4e0c308253
refactor: nerdepedia the lazy way
2021-02-07 15:12:45 -05:00
Chris Sexton
7dfa5bf891
meme: refactor
...
impossible: fix bug where it was eating all messages
2021-02-07 15:09:52 -05:00
Chris Sexton
0891713523
leftpad: refactor
2021-02-07 14:23:18 -05:00
Chris Sexton
353f289cae
impossible: refactor
2021-02-07 14:03:34 -05:00
Chris Sexton
ca97a07a4d
goals: refactor
2021-02-07 13:33:30 -05:00
Chris Sexton
c802b52a3b
inventory: refactor and fix regexes
2021-02-05 11:37:43 -05:00
Chris Sexton
8f391ee7bc
git: refactor
2021-02-04 08:17:50 -05:00
Chris Sexton
1f954f301c
fuck: refactor by removal
2021-02-03 21:02:59 -05:00
Chris Sexton
4a0ba76b89
first: refactor and add clear command
2021-02-03 20:38:21 -05:00
Chris Sexton
1d3748ed06
csw: refactor
2021-02-03 19:56:33 -05:00
Chris Sexton
9345e83adf
picker: make picker less fair
2021-02-02 16:05:14 -05:00
Chris Sexton
8cb6b485cb
fact: refactor
2021-02-01 21:28:58 -05:00
Chris Sexton
55a206760f
dice: refactor
2021-02-01 15:59:46 -05:00
Chris Sexton
2b47654302
beers: add dynamic drinking word feature
2021-02-01 15:20:51 -05:00
Chris Sexton
41a757cd8b
beers: refactor
2021-02-01 15:20:51 -05:00
Chris Sexton
a6847a996f
babbler: refactor
2021-02-01 10:48:06 -05:00
Chris Sexton
b7576bd855
gpt2: refactor
2021-02-01 07:40:33 -05:00
Chris Sexton
dfbcfafab9
aoc: refactor
2021-02-01 07:16:21 -05:00
Chris Sexton
951c345666
admin: refactor tests
2021-02-01 06:39:43 -05:00
Chris Sexton
8e4129ecb3
admin: refactor
2021-02-01 06:39:43 -05:00
Chris Sexton
00dae33e8a
achievements: refactor
...
Refs #346
2021-01-31 22:17:59 -05:00
Chris Sexton
e7ec092c64
counter: update tests
2021-01-31 21:53:48 -05:00
Chris Sexton
1292eaa564
counter: refactor into regex matchers
2021-01-31 21:53:48 -05:00
Chris Sexton
75a12ca9a5
zork: remove zork
...
ref #343
2021-01-31 18:24:42 -05:00
Chris Sexton
0e5f7eb2d5
newsbid: refactor
2021-01-31 18:24:42 -05:00
Chris Sexton
aad4ecf143
bot: refactor callback handlers
...
New system:
* Each callback can filter for a regex
* Backwards compatability using a `.*` generic regex
* Handlers now accept a request object instead of bare arguments
All new plugins should use this new system.
2021-01-31 16:54:07 -05:00
Chris Sexton
ba47710b46
meme: add confirm to deletion button
2021-01-11 17:30:09 -05:00
Chris Sexton
33372ed770
meme: add default to all new memes
2021-01-11 16:30:18 -05:00
Chris Sexton
c4605cfb77
git: don't unfurl links
2021-01-09 16:58:18 -05:00
Chris Sexton
bca96b6dcd
meme: fix empty meme issue
2021-01-09 16:48:55 -05:00
Chris Sexton
841d4c000e
meme: remove URL and format config on meme page
2021-01-09 16:30:49 -05:00
Chris Sexton
8408da48d4
meme: add config and delete
...
This updates the web view to provide a screen to edit any particular
config in a text area, update the image URL, and remove a meme.
fixes #330
2021-01-09 16:18:56 -05:00
Chris Sexton
8d52a3d1bd
meme: add capitalization to configs, true default
...
fixes #331
2021-01-09 15:27:32 -05:00
Chris Sexton
bbf5b27790
web: remove go template dependency
...
All vue pages now request `/nav` to get a JSON array of navigation
instead of relying on the Go template to have the nav built in. This
cleans up all of the crufty `{{ "{{ thing }}" }}` that was making it
hard to wriet vue.
This also paves the way to using the new Go resource embedding so that
the pages don't need to be wrapped in Go files.
2021-01-09 13:46:28 -05:00
Chris Sexton
44159c26fc
newsbid: update for season 2
...
Fixes #326
2020-12-31 14:08:38 -05:00
Chris Sexton
c20b4c8b17
countdown: fix timer
2020-12-31 12:36:48 -05:00
Chris Sexton
eefd5974d2
update gpt2 interface
2020-12-07 17:45:01 -05:00
Chris Sexton
9dbdd1f9a3
connectors: add translation layer
...
* URLs can be translated to slack/discord compatible
* Emojy have a connector-specific translation configuration
* Advent of Code plugin respects emojy and URLs
* Config can be wrapped in `` for JSON
2020-12-02 09:53:57 -05:00