Can anyone tell me if this how GameSession work?

Right now I’m not in the phase of making multiplayer I’m still in the process of writing out my game’s features. Features such as main-menu, levels, game-maps, characters, animation, etc… with my limited experience in 3D modelling, animation, rigging, and UV mapping at this point I’m not on par to make a unique style game, but I can make a game now just that it won’t be interesting. The only thing I would like to do at this point is work on my earliest Alpha. Now you’re know what I’m planning of doing is taking as much notes and learning what I can about Online Subsystem and use it as a follow through step-by-step guide.

Based on what I have read and learn the Online Subsystem consist of the following:

  1. Game Mode
  2. Game Session
  3. Session Interface
  4. Setting Interface

I set them up as follows because according to the UE docts Game Session is a wrapper inside the Game Mode, right? In side the Game Session should be the Session Interface and Session Settings where I call them using points from IOnlineSubsystem * const OnlineSub = IOnlineSubsystem::Get(); from there const OnlineSub() → GetSessionInterface(); and later start calling out

             SessionSettings->bIsLANMatch = bIsLAN;
             SessionSettings->bUsesPresence = bIsPresence;
             SessionSettings->NumPublicConnections = MaxNumPlayers;
             SessionSettings->NumPrivateConnections = 0;
             SessionSettings->bAllowInvites = true;
             SessionSettings->bAllowJoinInProgress = true;
             SessionSettings->bShouldAdvertise = true;
             SessionSettings->bAllowJoinViaPresence = true;
             SessionSettings->bAllowJoinViaPresenceFriendsOnly = false;

             SessionSettings->Set(SETTING_MAPNAME, FString("MapName"), EOnlineDataAdvertisementType::ViaOnlineService); 

// Base on my limited C++ understanding this basically connects the game map of choosing, name, and advertise to the community that it’s available.

Source
Docs
UE Wiki