fix(chat): don't record last_msg & last_read_id
This commit is contained in:
@@ -167,7 +167,8 @@ async def mark_as_read(
|
||||
if db_channel is None:
|
||||
raise HTTPException(status_code=404, detail="Channel not found")
|
||||
assert db_channel.channel_id
|
||||
await server.mark_as_read(db_channel.channel_id, message)
|
||||
assert current_user.id
|
||||
await server.mark_as_read(db_channel.channel_id, current_user.id, message)
|
||||
|
||||
|
||||
class PMReq(BaseModel):
|
||||
|
||||
@@ -69,8 +69,8 @@ class ChatServer:
|
||||
if client:
|
||||
await self.send_event(client, event)
|
||||
|
||||
async def mark_as_read(self, channel_id: int, message_id: int):
|
||||
await self.redis.set(f"chat:{channel_id}:last_msg", message_id)
|
||||
async def mark_as_read(self, channel_id: int, user_id: int, message_id: int):
|
||||
await self.redis.set(f"chat:{channel_id}:last_read:{user_id}", message_id)
|
||||
|
||||
async def send_message_to_channel(
|
||||
self, message: ChatMessageResp, is_bot_command: bool = False
|
||||
@@ -91,7 +91,10 @@ class ChatServer:
|
||||
)
|
||||
)
|
||||
assert message.message_id
|
||||
await self.mark_as_read(message.channel_id, message.message_id)
|
||||
await self.mark_as_read(
|
||||
message.channel_id, message.sender_id, message.message_id
|
||||
)
|
||||
await self.redis.set(f"chat:{message.channel_id}:last_msg", message.message_id)
|
||||
|
||||
async def batch_join_channel(
|
||||
self, users: list[User], channel: ChatChannel, session: AsyncSession
|
||||
|
||||
Reference in New Issue
Block a user