A live chat is claimed through the popup, never allocated

FixMediaService
Ya
10 Agosti 2026, 18:22 UTC
Mwandishi
Kamo
Ahadi ya
3b734ec

Routing chat requests through round-robin was the wrong model and it broke the thing it was meant to fix. An assigned ticket leaves the claimable queue (SupportQueueService requires assignedAgent IS NULL), so allocating a chat stopped the accept-popup offering it to anybody — the observed result was every chat pinned to a member with a blank alias who was not there, and no popup for anyone. The availability filter added to guard against that does not work either, because availability_status is not presence: logout writes AWAY and nothing else ever clears it, so a member who simply never signs out reads AVAILABLE indefinitely. This org has a dozen such rows, and round-robin walked straight into one. assignTicket now decoders any PRE_TICKET regardless of the topic's strategy. A live chat goes to the queue and the popup pages every Available agent, which is the one path that requires a live browser at the other end; assignment happens when someone accepts. Submitted tickets on the same topic are still allocated by round-robin, and convertPreTicket still routes a chat through allocation once it becomes a real titled ticket. Kept from the previous two commits: the YugabyteDB read-restart and self-lock fixes, and routing running in its own post-commit transaction.

Mabadiliko yote

Je, unaona nini kuhusu usafiri?

Kila moja ya hizi updates ardhi katika nafasi yako ya kazi moja kwa moja. Kuanza bure na kuangalia kukua wiki baada ya wiki.

Kuwa Huru MileleMtazamo wa bei