Add stream online logging.
This commit is contained in:
@@ -314,6 +314,26 @@ class TrackerComponent(cmds.Component):
|
|||||||
message=payload.text,
|
message=payload.text,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@cmds.Component.listener()
|
||||||
|
async def event_stream_online(self, payload: twitchio.StreamOnline):
|
||||||
|
tracked = await TrackingChannel.fetch(payload.broadcaster.id)
|
||||||
|
if tracked and tracked.joined:
|
||||||
|
community = await Communities.fetch_or_create(twitchid=payload.broadcaster.id, name=payload.broadcaster.name)
|
||||||
|
cid = community.communityid
|
||||||
|
|
||||||
|
event_row = await self.data.events.insert(
|
||||||
|
event_type='stream_online',
|
||||||
|
communityid=cid,
|
||||||
|
channel_id=payload.broadcaster.id,
|
||||||
|
occurred_at=payload.started_at,
|
||||||
|
)
|
||||||
|
detail_row = await self.data.stream_online_events.insert(
|
||||||
|
event_id=event_row['event_id'],
|
||||||
|
stream_id=payload.id,
|
||||||
|
stream_type=payload.type,
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
# ----- Commands -----
|
# ----- Commands -----
|
||||||
@cmds.command(name='starttracking')
|
@cmds.command(name='starttracking')
|
||||||
async def cmd_starttracking(self, ctx: cmds.Context):
|
async def cmd_starttracking(self, ctx: cmds.Context):
|
||||||
|
|||||||
Reference in New Issue
Block a user