У меня есть фрагмент кода (потребитель канала django), который создает отдельную группу для каждого подключенного пользователя. как это
@login_required_connection
async def connect(self):
await self.channel_layer.group_add(
self.user.id,
self.channel_name
)
await self.accept()
Все, что предназначено для этого пользователя, передается в его группу со стороны django, и потребитель передает его ему.
Проблема в том, что, если соединение разрывается на минуту, а затем снова подключается, пользователь не получает ничего в течение этого времени.
Что я хочу сделать (пожалуйста, предложите лучший подход, если таковой имеется), - сохранить данные для пользователя в redis и отправить все данные при повторном подключении.
Мой вопрос: как я могу проверить, существует группа для пользователя или нет? так что я могу сохранить данные в кеш, если не существует.
ПРИМЕЧАНИЕ В настоящее время я поддерживаю статус online / offline в redis. (Когда пользователь подключается, поместите для него ключ и удалите при отключении). Но я просто хочу проверить, существует группа или нет.