Nicknames not syncing? (PUN2)

Hey, I've been working on a VR multiplayer game and it's been going really smoothly until I came to changing the player's Nicknames, I'm not sure if I'm missing something but I'll try and explain what's going on: When the player loads up the game they're instantly put in a lobby, they can either join a room from the list or enter a code, just before they actually join a room I use Oculus' Platform API to get the player's username and set that as their photon nickname in this code here:

private void loggedInUserComplete(Oculus.Platform.Message<User> msg) 
 { if (msg.IsError) 
  { Debug.LogError("Could not get Oculus user name!"); 
   PhotonNetwork.NickName = "Player_" + Random.Range(0, 9999); } 
else 
{ Debug.Log("GetLoggedInUser success! " + msg + "; message      type: " + msg.Type); 
 if (msg.Type == Oculus.Platform.Message.MessageType.User_GetLoggedInUser) 
  { Debug.Log("Oculus GetLoggedInUser success! Setting user name in game manager: " + msg.GetUser().OculusID); 
  PhotonNetwork.NickName = msg.GetUser().OculusID.ToString(); } 
 } 
} 


The only thing I've come up with is do I need to set the Nickname before joining a lobby? For some reason when the player's connect to the lobby, no matter whether they're the host or I am, their nickname is blank, on their photonViews, on their nametag and so on, but even when I'm not host or if I fail to get my Oculus username I still manage to have my name set either as a randomly generated 'Player_####' or as my oculus username depending on the situation. The only error that's thrown ever is the one I call when Oculus doesn't get a username. Does anyone have any ideas as to what is happening here? (edited)