Commit Graph

  • b390368713 Added Chips.gg integration. It basically works but needs more testing and also smashes the DB with how fast their feed updates. barelyprofessional 2024-08-17 21:58:10 +08:00
  • d2f0519414 Updated the formatting to make the juice stats command more legible barelyprofessional 2024-08-17 21:57:03 +08:00
  • 19c10f20f5 Fixed number formatting in the rainbet stats command barelyprofessional 2024-08-17 13:43:58 +08:00
  • e53150f790 Untested Juice statistics command barelyprofessional 2024-08-17 13:43:32 +08:00
  • 82bf88afe7 Added Twitch view count logging barelyprofessional 2024-08-15 16:45:02 +08:00
  • 18a50a757d Forgot to add a check for ignored user barelyprofessional 2024-08-15 11:58:10 +08:00
  • 59ec8f8850 Additional logging for debugging missed sent messages barelyprofessional 2024-08-13 17:10:49 +08:00
  • 06c64778ce Trim \r that was being passed through from Twitch chat barelyprofessional 2024-08-13 17:10:24 +08:00
  • eef56d3f6b Decode entities in incoming message barelyprofessional 2024-08-11 22:36:25 +08:00
  • 9f07f6cf21 Forgot to bypass GambaSesh detection barelyprofessional 2024-08-11 22:31:27 +08:00
  • c0d7f62c61 Added feature to track messages sent by the bot by reference so they can be edited barelyprofessional 2024-08-11 21:11:37 +08:00
  • 2c54ca30dd Missed converting this setting to use the extension method for booleans barelyprofessional 2024-08-11 19:19:44 +08:00
  • f7bf0b1186 No longer log Kick chats as info to reduce spam barelyprofessional 2024-08-10 16:57:17 +08:00
  • e87af68cdb Updated Pusher API URL as it has changed for Kick barelyprofessional 2024-08-10 16:57:01 +08:00
  • f39438f71c Converted over to using the extension methods for handling the settings barelyprofessional 2024-08-10 01:56:12 +08:00
  • 946a7679ee I'm an idiot, forgot to null the cookies barelyprofessional 2024-08-10 01:55:58 +08:00
  • 6e0c100e11 Removed the commented out Rainbet check. The first iteration was Websocket based, but it's now based on an API call so this is no longer needed. barelyprofessional 2024-08-10 00:29:19 +08:00
  • 5982858f8e Added commands for getting Rainbet betting info barelyprofessional 2024-08-10 00:28:33 +08:00
  • 99489a3629 Now retrieving the last 5000 entries, mostly because I'd often get consecutive failures from FlareSolverr. Also caching the cookies now with some logic to retrieve fresh cookies when challenged. So far this has made the bet history scraping a lot more reliable. barelyprofessional 2024-08-10 00:28:15 +08:00
  • 5d1334d2b3 Extended the command interface so it passes in the user's DB entry. Just avoids having to look it up again if you're doing DB operations involving the user barelyprofessional 2024-08-10 00:27:06 +08:00
  • a67641a14d Added Rainbet bet history scraping. Uses FlareSolverr to grab Cloudflare cookies then retrieves from the bet feed. Not perfect but mostly works. barelyprofessional 2024-08-06 00:07:08 +08:00
  • 508df3163b Forgot to build an instance of Jackpot. Tested it and it appears to work barelyprofessional 2024-07-26 16:59:59 +08:00
  • f9d87220d2 Renamed the bot from KickBot -> ChatBot and removed the reference to Kick in the project name barelyprofessional 2024-07-26 16:50:39 +08:00
  • f4db00246a Jackpot integration that probably works. Not tested barelyprofessional 2024-07-26 15:51:56 +08:00
  • cf3ed650f6 Using the fancy green/red colors instead of just color=red/green as it is easier on the eyes barelyprofessional 2024-07-26 15:44:47 +08:00
  • 831bca4445 Updated PuppeteerSharp barelyprofessional 2024-07-26 09:39:26 +08:00
  • 2340041a30 Conditional access on the howlgg instance because there's a chance it'll be null if it is mid-reconnection barelyprofessional 2024-07-26 11:29:28 +10:00
  • 546b1d161a Replace SendInstant with Send as it's more thread safe or something barelyprofessional 2024-07-26 11:28:52 +10:00
  • 632638fcb1 Add some extra info when a user doesn't have access to command barelyprofessional 2024-07-26 11:28:33 +10:00
  • 8676241fbf The Final Solution to the Websocket question? I've gone through like 10 different iterations to try and get ByServer reconnections to work correctly. Now just disabled reconnection altogether and I'm manually disposing and recreating the instance whenever it dies using a watchdog task. So far working great after 12 hours! barelyprofessional 2024-07-20 10:42:38 +10:00
  • 2574d278a7 Added recent bets command and now casting the magic number to a float so the bot can show bets <$1 barelyprofessional 2024-07-20 10:40:50 +10:00
  • 0d8116bf24 Removed end of line token for juiceme barelyprofessional 2024-07-18 18:03:07 +10:00
  • 272317f828 Added a basic Howl.gg stats command, implemented a setting for controlling the magic number to divide by and retroactively updating bet/profit amounts for unrealized gains on slot feaches barelyprofessional 2024-07-18 18:02:44 +10:00
  • e4c4b3b41f Hopeful fix for invalid operation exception when reconnecting to Howl and Discord barelyprofessional 2024-07-18 14:20:15 +10:00
  • 6c8ee91ad6 Put in a hacked up feature to disable Kick Pusher as the API is having massive issues (again) barelyprofessional 2024-07-18 12:46:12 +10:00
  • 76b4a750a7 Usually prefer to have these as info so I can see whether the connection is still alive at a glance barelyprofessional 2024-07-18 01:43:35 +10:00
  • d61a171e54 Big update introducing ghetto command interface, settings, database and howl.gg bet feed scraping barelyprofessional 2024-07-18 01:37:15 +10:00
  • 936bf743a5 Added Twitch IRC over Websocket support barelyprofessional 2024-07-01 00:24:07 +08:00
  • 83a5e149ef Replaced logging of the disconnection exception as it basically never had any value. Serializing provides a lot more useful information including the reason the server sent barelyprofessional 2024-06-30 20:02:05 +08:00
  • a865730918 Minor changes around logging and the stream stop message barelyprofessional 2024-06-30 19:51:40 +08:00
  • e3550c5e6e Decreased log level for Shuffle pongs as it's spammy and I no longer need to track this so closely as the issues with it have been mostly fixed. Also cleaned up some remnants from the copy paste job barelyprofessional 2024-06-30 19:51:12 +08:00
  • 3b38994405 Added heartbeat ack opcode barelyprofessional 2024-06-30 18:58:08 +08:00
  • f413503d27 Implemented Discord support. Similar to GambaSesh though doesn't do transcription but does display attachment URLs and device presence data barelyprofessional 2024-06-30 18:53:53 +08:00
  • 14884c717e Updated Kick functionality to alert on dirtdevil-enjoyer going live as BMJ got permabanned and it serves no purpose now barelyprofessional 2024-06-30 13:34:53 +08:00
  • dd8ba2c5c5 Replaced with bossmanjack.tv barelyprofessional 2024-06-28 16:08:36 +08:00
  • adf9ad2d87 Added HTML decode to fix issues with users who have apostrophes in their username barelyprofessional 2024-06-28 11:09:39 +08:00
  • 2e4616c736 Added a feature to reconnect if the bot somehow gets stuck (either not joined to a channel or stuck in a disconnected state) barelyprofessional 2024-06-27 11:30:41 +08:00
  • 4ece07d64d Dispose of Shuffle properly before rebuilding it as otherwise you end up with random Shuffle ping tasks waking up and trying to ping a dead connection barelyprofessional 2024-06-27 11:15:41 +08:00
  • 5bff1a1035 Ghetto whois feature barelyprofessional 2024-06-25 00:33:29 +08:00
  • 004c078d54 The bot will now set the GambaSesh presence detection flag if it receives a message in chat from GambaSesh while believing it isn't present. This should hopefully resolve issues where the bot author (since he shares accounts) leaves the channel while the bot is still present which trips the flag. barelyprofessional 2024-06-23 13:30:31 +08:00
  • 4aef087f3b Added a Websocket disconnection event to Shuffle that rebuilds the Shuffle connection if it's forcibly disconnected. This seems to have resolved issues with the bot disconnecting from Shuffle and never reconnecting. barelyprofessional 2024-06-23 13:26:30 +08:00
  • ff2a4c0e2e Added in support for grabbing Shuffle user profiles barelyprofessional 2024-06-20 22:34:28 +08:00
  • 4846c0c962 Use newline instead of sending two messages as they come out of order barelyprofessional 2024-06-20 10:15:53 +08:00
  • c50c5dcd85 Slightly smarter red text barelyprofessional 2024-06-20 00:51:32 +08:00
  • 67b912d5da Apparently didn't commit everything barelyprofessional 2024-06-19 23:33:53 +08:00
  • 57584918d0 Shuffle gamba watching barelyprofessional 2024-06-19 23:32:56 +08:00
  • 980a2b1c98 Renamed TwitchWs to Twitch as I intend to add a non-WS related helper function for checking if a stream is live using Graph QL barelyprofessional 2024-06-19 10:46:17 +08:00
  • 1c08231e7c Added examples of WebSocket payloads barelyprofessional 2024-06-19 10:45:23 +08:00
  • 87225ead2f Reset GambaSesh presence detection on reconnect so it can resync with join list barelyprofessional 2024-06-18 15:11:09 +08:00
  • d470e64979 I'm a retard. barelyprofessional 2024-06-17 19:46:26 +08:00
  • 8d28733309 Corrected NullReferenceException due to WsReconnection event being called before the reference to the instance was created barelyprofessional 2024-06-17 19:22:04 +08:00
  • ec6c050e23 Added Twitch PubSub support. Heavily ripped off code from GambaSesh though rewrote it to use Websocket.Client and will refactor the JSON parsing once I know exactly what the payload looks like. Presently untested. Also added a new config option to suppress messages, so one can run a local copy of the bot without disturbing anyone and made the Proxy a single config rather than having one for KF and one for Pusher. barelyprofessional 2024-06-17 19:10:52 +08:00
  • f7278c6d3f Updated reconnection logic to always fire even if it's an initial "reconnection". This is to avoid the bot lingering outside the channel after fetching a fresh token as it was triggering a ByUser reconnect then an Initial reconnect and therefore not sending the join message. barelyprofessional 2024-06-17 19:07:24 +08:00
  • 5cdab275c3 3xpl websocket client in case anyone wanted one. Don't bother using it though, their websocket service is a piece of shit that's totally broken which I only found out after wasting a day on it. barelyprofessional 2024-06-16 12:18:56 +08:00
  • cdad1d6549 Big update. Replaced Newtonsoft with System.Text.Json where possible, removed Spectre, tried to suppress the pile of compiler warnings I get on the GUI project, and tried to correct an issue where sometimes the session token retrieved is not usable. barelyprofessional 2024-06-14 23:03:05 +08:00
  • 98f7b2b27e Changed NLog console to ColoredConsole barelyprofessional 2024-06-13 23:01:05 +08:00
  • 37ab1138ef Updated session token retrieval system to use Puppeteer to automatically log in and retrieve a token barelyprofessional 2024-06-13 20:07:41 +08:00
  • 3ef573be5c Updated CLI client with newer URL and made rooms optional to test the behavior of Sneedchat with no room joined barelyprofessional 2024-06-09 14:58:17 +08:00
  • 6102a88721 Gamba Sesh presence detection ruined commands. Guarded message sending by baking it into a method to make things simpler. barelyprofessional 2024-06-09 14:46:50 +08:00
  • bdabe29b83 Fix Kick emote regex so it's less greedy and can handle consecutive emotes with no space barelyprofessional 2024-03-26 16:35:45 +08:00
  • 3a972cd32c Updated image to 16x16 version barelyprofessional 2024-03-26 13:43:12 +08:00
  • a20b109871 Updated to disable debug logging as it was just too much barelyprofessional 2024-03-26 13:40:56 +08:00
  • c0c8ba655f Added Gamba Sesh presence detection, cooldown on start to prevent responding to chat buffer, super basic commands, notifications, message forwarding from Kick, memory so that it doesn't answer messages already seen (too bad if you edit) barelyprofessional 2024-03-26 13:40:44 +08:00
  • dd0aaa954f Copy nlog config to output barelyprofessional 2024-03-26 13:38:48 +08:00
  • 96e553845f Implemented bbcode translation for Kick emotes using an extension method and regex barelyprofessional 2024-03-26 13:38:33 +08:00
  • 9f92fc8e27 Initial commit barelyprofessional 2024-03-25 20:11:49 +08:00