Периодически транслировать сообщение всем, используя каналы Django

#django

#django

Вопрос:

Я новичок в каналах Django. Я создал WebSocket и хочу периодически отправлять некоторую информацию каждому пользователю (периодически транслировать).

Каждый пользователь подключается к WebSocket, когда заходит на мой сайт, и видит эту информацию в верхней части каждой страницы.

Я понятия не имею, нужно ли создавать группу или нет, и если это необходимо, как ее создать…

Итак, как я могу периодически отправлять информацию каждому посетителю (эффективным способом)?

Может быть что-то вроде этого:

 class Consumer(AsyncConsumer):
    async def websocket_connect(self, event):
        await self.send({
            "type": "websocket.accept",
        })
        while True:
            await self.channel_layer.group_send(
                {
                    "text": 'Hello user!'
                }
            )
            # OR
            await self.send({
                "type": "websocket.send",
                "text": 'Hello user!'
            })
            await asyncio.sleep(5)
  

Заранее спасибо…

Комментарии:

1. Если это не лучший способ реализовать эту функцию, то каков наилучший способ получить (например) данные API в backend lively и отправить их всем во внешнем интерфейсе.