import json
from channels.generic.websocket import AsyncWebsocketConsumer

class ScraperConsumer(AsyncWebsocketConsumer):
    async def connect(self):
        # self.task_id = self.scope['url_route']['kwargs']['task_id']
        self.user_id = self.scope['url_route']['kwargs']['user_id']
        self.group_name = f'user_{self.user_id}'
        print("Group",self.group_name)

        await self.channel_layer.group_add(
            self.group_name,
            self.channel_name
        )

        await self.accept()

    async def disconnect(self, close_code):
        await self.channel_layer.group_discard(
            self.group_name,
            self.channel_name
        )

    async def scrapper_complete(self, event):
        await self.send(text_data=json.dumps({
            'message': event['message'],
            'data': event['data'],
        }))
