使用Django频道定期向所有人广播消息

时间:2020-11-04 13:34:26

标签: 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)

预先感谢...

0 个答案:

没有答案