IOnlineUserPtr always returns Not Valid for me

Hi, I am trying to access the Steam players Username and other info. I have been reading the docs as best I can but I don’t think I am taking the right approach. Here you can see my OnCreateSessionComplete callback function. This part is working OK and the session is being created. Everything after the ServelTravel call is the part relevant to this question.

Basically, the onlineUser.IsValid() return value is always false. I have tried this code in a few parts of my GameInstance class.

void UCopsGameInstance::OnCreateSessionComplete(FName sessionName, bool success)
{
	UE_LOG(LogTemp, Warning, TEXT("OnCreateSessionComplete()"));
	if(MainMenu!=nullptr) MainMenu->Teardown();
	GetWorld()->ServerTravel("/Game/maps/Map_Lobby?listen");

	Oss=IOnlineSubsystem::Get();
	if(Oss!=nullptr)
	{
		IOnlineUserPtr onlineUser=Oss->GetUserInterface();
		if(onlineUser.IsValid())
		{
			UE_LOG(LogTemp, Warning, TEXT("OnlineUser is valid"));
		}
		else
		{
			UE_LOG(LogTemp, Warning, TEXT("OnlineUser is NOT valid"));
		}
	}
	else
	{
		UE_LOG(LogTemp, Warning, TEXT("OSS is Nullptr"));
	}
	
}

Could anyone help point me in the right direction please? Thank you for any help.

It’s invalid because the Steam Subsystem doesn’t actually implement the OnlineUserInterface. What you are looking for is the OnlineIdentityInterface->GetPlayerNickname().

Thank you so much. I had been reading and looking for alternative (since I suspected what you said might be the case). It seemed OnlineUserInterface was more from the EOS docs, but I wasn’t able to find out which Interface for the Steam User details.

Thanks for the help I shall try to implement some basic functions now.