- Navios
- 11 de outubro de 2026 às 22:03 UTC
- Autor
- Kamo
- Enviar
- 6b790b9
- POST /api/media/internal/chat/typing {memberId, conversationId, typing} (KamoAI secret interno, InteractionInternalAuth; under /api/media/internal, que a entrada corta para fora e as reservas do gateway API): para um SI sentado na conversa que envia o próprio frame do cliente de uma pessoa envia, {sessionGuid, memberId, isTyping} em ********** através do cross-pod StompFanout, então cada cliente mostra-o inalterado. Uma pessoa, ou um SI não na conversa, é 404; o caminho WebSocket ainda confia em seu quadro, este verifica por quem ele fala. - ChatFanoutService.announce: as cartas não lidas são levantadas logo após os quadros de entrada, e a recontagem do crachá dos destinatários (um COUNT por conversa de cada destinatário) é executada no ChatBadgeRefresh (4 threads, uma transação somente de leitura por mensagem, chamada-runs quando cheia) em vez do pedido do remetente. Distintivos são instantâneos inteiros carimbados antes de sua leitura, os mais velhos deixados pelo cliente, então sua ordem para a resposta do remetente nunca importou. Um chat send de um SI para uma pessoa em 200 conversas passou ~1 s aqui (chat send de Luna p50 1159 ms vs 364 ms para o teste SI), e uma mensagem de uma pessoa para um SI esperou na própria recontagem do SI antes de seu cartão wake saiu.
