We made use of multiple inheritance and made our game instance inherit it:
class UShooterGameInstance : public UGameInstance, public ISteamMatchmakingPingResponse
Then you can implement the two functions as usual voids (not statics!)
public:
// Begin ISteamMatchmakingPingResponse interface
void ServerResponded(gameserveritem_t& server);
void ServerFailedToRespond();
// End ISteamMatchmakingPingResponse interface
Since you’re in game instance context, you can always call GetFirstLocalPlayerController(). Cheers!