Session Names

So,

Ive created a NAMED session using the steam interface but when i use the GetNameSession(GameSessionName) function it doesnt find it, but it said it created no issues. I have done something wrong no doubt and I am quite happy to find what it is (as a learning experience).

My question is I am trying to get a list of all the sessions names that are active.

I know in FOnlineSessionSteam there is a Sessions TArray container and each of those in that array has a SessionName property but it seems inaccessible because it isnt on iOnlineSesson and It wont cast to FOnlineSessionSteam

can someone how i can cast correctly on this to get to the Sessions array?

or alternatively like the function below which exists

FNamedOnlineSession* GetNamedSession(FName SessionName) override
{
	FScopeLock ScopeLock(&SessionLock);
	for (int32 SearchIndex = 0; SearchIndex < Sessions.Num(); SearchIndex++)
	{
		if (Sessions[SearchIndex].SessionName == SessionName)
		{
			return &Sessions[SearchIndex];
		}
	}
	return NULL;
}

I kind of want something that just returns the sessions so i can loop over them myself?