似乎 Group 和 channel_session 可以跨多个消息会话和消费者持续存在。Channels 是如何做到这一点的?
@channel_session_user_from_http
def ws_connect(message):
# Add them to the right group
message.channel_session['room'] = 'room name'
Group("chat-%s" % message.user.username[0]).add(message.reply_channel)
@channel_session_user
def ws_disconnect(message):
if 'room' in message.channel_session:
print('room====', message.channel_session['room'])
Group("chat-%s" % message.user.username[0]).discard(message.reply_channel)
我想设置一个长期存在的对象,就像每个消费者都可以访问的全局对象。