Implement real-time WebSocket gateway for presence, DM, and world chat (US-4, US-2)
This commit is contained in:
@@ -81,6 +81,7 @@ from app.models.chat import Conversation, ConversationParticipant, Message
|
||||
from app.models.social import Block
|
||||
from app.models.user import User
|
||||
from app.rate_limit import rate_limit
|
||||
from app.services.chat_pubsub import publish_dm_chat_event
|
||||
from app.services.text_filter import FilterAction, default_text_filter
|
||||
|
||||
router = APIRouter()
|
||||
@@ -264,7 +265,9 @@ async def send_dm(
|
||||
await db.commit()
|
||||
await db.refresh(message)
|
||||
|
||||
return _to_message_response(message, recipient_id=user_id)
|
||||
resp = _to_message_response(message, recipient_id=user_id)
|
||||
await publish_dm_chat_event(conversation.id, resp.model_dump(mode="json"))
|
||||
return resp
|
||||
|
||||
|
||||
@router.get("/{user_id}/messages", response_model=DMMessageListResponse)
|
||||
|
||||
Reference in New Issue
Block a user