diff --git a/resolvers/inbox/chats.py b/resolvers/inbox/chats.py index c158e066..2a953a12 100644 --- a/resolvers/inbox/chats.py +++ b/resolvers/inbox/chats.py @@ -80,7 +80,7 @@ async def create_chat(_, info, title="", members=[]): "createdBy": auth.user_id, "createdAt": int(datetime.now(tz=timezone.utc).timestamp()), "updatedAt": int(datetime.now(tz=timezone.utc).timestamp()), - "admins": [] + "admins": members if (len(members) == 2 and title == "") else [] } for m in members: diff --git a/resolvers/inbox/messages.py b/resolvers/inbox/messages.py index d9ca6a4c..03285b67 100644 --- a/resolvers/inbox/messages.py +++ b/resolvers/inbox/messages.py @@ -33,6 +33,8 @@ async def create_message(_, info, chat: str, body: str, replyTo=None): "replyTo": replyTo, "createdAt": int(datetime.now(tz=timezone.utc).timestamp()), } + chat['updatedAt'] = new_message['createdAt'] + await redis.execute("SET", f"chats/{chat['id']}", json.dumps(chat)) print(f"[inbox] creating message {new_message}") await redis.execute( "SET", f"chats/{chat['id']}/messages/{message_id}", json.dumps(new_message) diff --git a/schema.graphql b/schema.graphql index 09cb934d..35f4663d 100644 --- a/schema.graphql +++ b/schema.graphql @@ -512,13 +512,13 @@ type Message { type Chat { id: String! createdAt: Int! - createdBy: String! + createdBy: Int! updatedAt: Int! title: String description: String - users: [String] + users: [Int] members: [ChatMember] - admins: [String] + admins: [Int] messages: [Message] unread: Int private: Boolean