import json import redis r = redis.Redis(host='localhost', port=6379, db=0) def handle_connect(): # increase number of connected users r.set('n_connected_lc_users', max(1, int(r.get('n_connected_lc_users')) + 1)) print('There are now {} connected users.'.format(r.get('n_connected_lc_users'))) def handle_disconnect(): # decrease number of connected users r.set('n_connected_lc_users', max(0, int(r.get('n_connected_lc_users')) - 1)) print('There are now {} connected users.'.format(r.get('n_connected_lc_users'))) def handle_alone_user(): if int(r.get('n_connected_lc_users')) == 1: return True else: return False def save_user_messages(user_identifier, message): # get user_messages from redis user_messages = r.get(user_identifier) if user_messages: user_messages = json.loads(user_messages) else: user_messages = [] # append new message user_messages.append(message) # save user_messages to redis r.set(user_identifier, json.dumps(user_messages)) def get_user_messages(user_identifier): # get user_messages from redis user_messages = r.get(user_identifier) if user_messages: return json.loads(user_messages) else: return [] def discard_user_messages(user_identifier): r.delete(user_identifier)