..
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54 | import json
import redis
import os
from dotenv import load_dotenv
load_dotenv()
r = redis.Redis(
host=os.getenv('REDIS_HOST'),
port=os.getenv('REDIS_PORT'),
password=os.getenv('REDIS_PASSWORD'),
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)
|
|