PlayFab dedicated server integration --- region latency check

Working on integrating PlayFab

Currently I have PlayFab deploying ‘builds’ to hold dedicated servers on any Azure cloud region. I also have PlayFab handle the match making. Currently I have hard coded a fake latency and set it to UsEast which works in getting connected to the dedicated servers on UsEast region. But in order to send clients to the best region, I need to measure latency from the player client to the Azure regions.

Playfab documentation to accomplish this is here:
[Quality-of-service (QoS) beacons to measure player latency to Azure - PlayFab | Microsoft Learn]
(Quality-of-service (QoS) beacons to measure player latency to Azure - PlayFab | Microsoft Learn)

This doc requires creating UDP sockets which so far I am having no success with. I lack much C++ experience and so am attempting use a plugin for the UDP latency check:
Simple UDP TCP Socket Client in Code Plugins - UE Marketplace (unrealengine.com)

In the screenshot above, a UDPreceiver is created on IP/port 0.0.0.0 7777

I send a packet to the PlayFab QoS IP (have also tested sending it to the QoS DNS name) however no packet is ever sent back. (Supposed to time how long it takes for the packet to get back in order to measure out latencies of the different QoS server regions and then pick the best one)

Test result:

I have tested sending connections to my client locally and it works as seen:

I am a little out of my depth on this, anyone able to give some advice on where I am going wrong?

2 Likes

Figured this out, sharing here incase anyone out there ever runs into this issue

QoS doc requires ‘0xFFFF’ in the message — 0x means Hex code

‘Parse Hex to Bytes Pure’ FFFF Returns a byte array value that is getting a response from the QoS beacon as expected

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.