generated from HoloTech/twitch-bot-template
Compare commits
12 Commits
master
..
20db56cd7d
| Author | SHA1 | Date | |
|---|---|---|---|
| 20db56cd7d | |||
| 0ba39816c9 | |||
| ef7789dc9c | |||
| 280ef7fb64 | |||
| 2e60625e77 | |||
| 68d678c74f | |||
| 3c3e857e28 | |||
| 1311574360 | |||
| 9e73708972 | |||
| 808ed74d15 | |||
| 1042ae044a | |||
| acaeb14b80 |
+7
-1
@@ -3,10 +3,16 @@
|
||||
url = https://git.thewisewolf.dev/HoloTech/psqlmapper.git
|
||||
[submodule "src/modules/subathon"]
|
||||
path = src/modules/subathon
|
||||
url = https://git.thewisewolf.dev/HoloTech/twitch-subathon-plugin.git
|
||||
url = https://git.thewisewolf.dev/CarmiCoven/lilac-subathon-plugin.git
|
||||
[submodule "src/modules/tracker"]
|
||||
path = src/modules/tracker
|
||||
url = https://git.thewisewolf.dev/HoloTech/twitch-eventtracker-plugin.git
|
||||
[submodule "src/modules/profiles"]
|
||||
path = src/modules/profiles
|
||||
url = https://git.thewisewolf.dev/HoloTech/profiles-plugin.git
|
||||
[submodule "src/modules/exec"]
|
||||
path = src/modules/exec
|
||||
url = https://git.thewisewolf.dev/HoloTech/exec-plugin.git
|
||||
[submodule "src/modules/pluscampaign"]
|
||||
path = src/modules/pluscampaign
|
||||
url = https://git.thewisewolf.dev/CarmiCoven/pluscampaign-plugin.git
|
||||
|
||||
@@ -17,6 +17,18 @@ BEGIN
|
||||
END;
|
||||
$$ language 'plpgsql';
|
||||
|
||||
CREATE OR REPLACE FUNCTION current_module_version(module_name TEXT)
|
||||
RETURNS INTEGER
|
||||
AS $$
|
||||
SELECT
|
||||
to_version
|
||||
FROM version_history
|
||||
WHERE
|
||||
component = $1
|
||||
ORDER BY _timestamp DESC
|
||||
LIMIT 1;
|
||||
$$ LANGUAGE SQL;
|
||||
|
||||
CREATE TABLE app_config(
|
||||
appname TEXT PRIMARY KEY,
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT now()
|
||||
|
||||
@@ -4,9 +4,12 @@ if TYPE_CHECKING:
|
||||
from meta import Bot
|
||||
|
||||
|
||||
async def twitch_setup(bot: 'Bot'):
|
||||
# Import and run setup methods from each module
|
||||
from . import profiles, tracker, subathon
|
||||
async def twitch_setup(bot: "Bot"):
|
||||
# Import and run setup methods from each module
|
||||
from . import profiles, tracker, subathon, exec, yarn
|
||||
|
||||
await profiles.twitch_setup(bot)
|
||||
await tracker.twitch_setup(bot)
|
||||
await subathon.twitch_setup(bot)
|
||||
await exec.twitch_setup(bot)
|
||||
await yarn.twitch_setup(bot)
|
||||
|
||||
Submodule
+1
Submodule src/modules/exec added at f0bdbaed3c
Submodule
+1
Submodule src/modules/pluscampaign added at 0923f32a82
+1
-1
Submodule src/modules/profiles updated: 0363dc2bcd...c9b6ce8f60
+1
-1
Submodule src/modules/subathon updated: 11c77bcc89...297eb434d4
+1
-1
Submodule src/modules/tracker updated: f853f01bf8...d7ef852ebb
@@ -0,0 +1,7 @@
|
||||
import logging
|
||||
|
||||
logger = logging.getLogger()
|
||||
|
||||
async def twitch_setup(bot):
|
||||
from .component import YarnComponent
|
||||
await bot.add_component(YarnComponent(bot))
|
||||
@@ -0,0 +1,20 @@
|
||||
import asyncio
|
||||
|
||||
import twitchio
|
||||
from twitchio import PartialUser, Scopes, eventsub
|
||||
from twitchio.ext import commands as cmds
|
||||
|
||||
from meta import Bot, Context
|
||||
|
||||
from . import logger
|
||||
|
||||
class YarnComponent(cmds.Component):
|
||||
def __init__(self, bot: Bot):
|
||||
self.bot = bot
|
||||
|
||||
|
||||
@cmds.Component.listener()
|
||||
async def event_custom_redemption_add(self, payload: twitchio.ChannelPointsRedemptionAdd):
|
||||
logger.info(f"Yarn got {payload!r}")
|
||||
if payload.reward.title == 'pet lilac':
|
||||
await payload.broadcaster.send_message("lilac PETPET", sender="1097964183")
|
||||
Reference in New Issue
Block a user