I’m running a 4.26 source build, and I want to enable a player to join a game directly from a Steam friends list or through a Steam invite. I already have this working if the invitee is already running the game, but I would also like the player to be able to join a session directly without having the game open first.
If the game is launched from an invitation or request to join a lobby, then UE4 starts with the +connection_lobby parameter set. From this I can get the unique ID for the session that needs to be joined. So far so good.
Where I run into problems however is that I need a search result in order to call the Session Interface’s “JoinSession” function. This means I need to find the session first then join it. There is a “FindSessionById” function which would be ideal, but in the Steam session interface the function is stubbed out and does nothing:
bool FOnlineSessionSteam::FindSessionById(const FUniqueNetId& SearchingUserId, const FUniqueNetId& SessionId, const FUniqueNetId& FriendId, const FOnSingleSessionResultCompleteDelegate& CompletionDelegates)
CompletionDelegates.ExecuteIfBound(0, false, EmptyResult);
Does anyone know how I’m supposed to get this working? It’s not the end of the world if this kind of functionality is just not supported in UE4, but it would have been a nice feature to allow someone to ping their friend an invite and allow them to jump right in even if they don’t have the game running at the time.