We've come across a new interesting case. Google gives us three relays (udp/tcp/tls) which are actually the same server. So if we connect to only one of them, we're happy. But we could also have different relays which relay into different networks. In that case, we really want to connect to all of them. We want to be able to relay that information to libnice. I propose adding a new optional token to the "RelayInfo" map, if two entries have the same token, then they're the same server, so connecting to only of them is enough. That will allow faster call establishment.
Is this relevant to Call or have you already fixed it there? If it's relevant to Call, please propose a concrete spec patch; your suggestion sounds reasonable. If it's not relevant to Call, I'm inclined to say WONTFIX?
It's definitely relevant to Call. Maybe we should add a grouping member to the map in RelayInfo (ie "group" -> "X" where all elements that have X as their group are the same server). And also "Priority" field to know which one is preferable within a group (or maybe we just want to use the first one that answers).
We should probably add a "server-id" field to the "RelayInfo" map. And if they are the same value, then libnice can know its actually the same server. In the case of google talk, gabble can then put the same value for all candidates generated from the same http request.
To Stream.I.Media -> RelayInfo We want to add two more properties - unique-id: s - priority: u
specced up at: http://git.collabora.co.uk/?p=user/alsuren/telepathy-spec.git;a=commitdiff;h=fb58cfe43dc22c8d8084588f803ca168b61b5c8f
Looks ++ That said, maybe we want to make priority optional (libnice will know that like udp is better than tcp)
Considering http://cgit.collabora.com/git/user/alsuren/telepathy-spec.git/commit/?id=3de18298c0e863c9d37f303b8649d5786c9c84ef to be insta-reviewed and pushing to call.
merged to master
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.