UOnlineEngineInterface

Interface class between engine and OnlineSubsystem to remove dependencies between the two The real work is implemented in UOnlineEngineInterfaceImpl in OnlineSubsystemUtils The expectation is that this basic group of functions will not expand/change and that OnlineSubsystem can remain independent of the engine

Windows
MacOS
Linux

Inheritance Hierarchy

UObjectBase

UObjectBaseUtility

UObject

UOnlineEngineInterface

References

Module

Engine

Header

/Engine/Source/Runtime/Engine/Public/Net/OnlineEngineInterface.h

Include

#include "Net/OnlineEngineInterface.h"

Syntax

class UOnlineEngineInterface : public UObject

Remarks

Interface class between engine and OnlineSubsystem to remove dependencies between the two The real work is implemented in UOnlineEngineInterfaceImpl in OnlineSubsystemUtils The expectation is that this basic group of functions will not expand/change and that OnlineSubsystem can remain independent of the engine

Games should not use this interface, use the OnlineSubsystem plugins directly

Better functionality descriptions can be found in the OnlineSubsystem interfaces

Adding code here is discouraged, there is probably a better way, talk to the OGS team

Constructors

Name Description

Public function

UOnlineEngineInterface

(
    const FObjectInitializer& ObjectIn...
)

Functions

Name Description

Public function Virtual

bool

 

AutoLogin

(
    UWorld* World,
    int32 LocalUserNum,
    const FOnlineAutoLoginComplete& In...
)

Auto login a given player based on credentials specified on the command line

Public function Virtual

void

 

BindToExternalUIOpening

(
    const FOnlineExternalUIChanged& De...
)

Bind a delegate to the opening/closing of an online platform's external UI

Public function Virtual

void

 

ClearVoicePackets

(
    UWorld* World
)

Clears all voice packets currently queued for send

Public function Virtual

bool

 

CloseWebURL()

Closes the currently active web external UI

Public function Virtual

TSharedPtr< ...

 

CreateUniquePlayerId

(
    const FString& Str,
    FName Type
)

Identity

Public function Virtual

void

 

DestroyOnlineSubsystem

(
    FName OnlineIdentifier
)

Destroy a given online subsystem

Public function Virtual

bool

 

DoesInstanceExist

(
    FName OnlineIdentifier
)

Public function Virtual

bool

 

DoesSessionExist

(
    UWorld* World,
    FName SessionName
)

Public function Virtual

void

 

DumpChatState

(
    UWorld* World
)

Dump chat state to the log

Public function Virtual

void

 

DumpPartyState

(
    UWorld* World
)

Dump party state to the log

Public function Virtual

void

 

DumpSessionState

(
    UWorld* World
)

DebugDump session state to the log

Public function Virtual

void

 

DumpVoiceState

(
    UWorld* World
)

Dump voice state to the log

Public function Virtual

void

 

EndSession

(
    UWorld* World,
    FName SessionName,
    FOnlineSessionEndComplete& InCompl...
)

End a given named online session

Public function Static

UOnlineEngin...

 

Get()

Public function Virtual Const

FName

 

GetDefaultOnlineSubsystemName()

Returns the name of the default online subsystem, generally the DefaultPlatformService config value.

Public function Virtual

TSharedPtr< ...

 

GetLocalPacket

(
    UWorld* World,
    uint8 LocalUserNum
)

Voice

Public function Virtual

int32

 

GetNumLocalTalkers

(
    UWorld* World
)

Public function Virtual

int32

 

GetNumPIELogins()

Public function Virtual

FName

 

GetOnlineIdentifier

(
    FWorldContext& WorldContext
)

Public function Virtual

FString

 

GetPlayerNickname

(
    UWorld* World,
    const FUniqueNetId& UniqueId
)

Public function Virtual

bool

 

GetPlayerPlatformNickname

(
    UWorld* World,
    int32 LocalUserNum,
    FString& OutNickname
)

Public function Virtual Const

uint8

 

GetReplicationHashForSubsystem

(
    FName InSubsystemName
)

Utils Return the replication hash for a given subsystem

Public function Virtual

bool

 

GetResolvedConnectString

(
    UWorld* World,
    FName SessionName,
    FString& URL
)

Public function Virtual

bool

 

GetSessionJoinability

(
    UWorld* World,
    FName SessionName,
    FJoinabilitySettings& OutSettings
)

Public function Virtual Const

FName

 

GetSubsystemFromReplicationHash

(
    uint8 InHash
)

Return the name of the online subsystem associated with this hash

Public function Virtual

TSharedPtr< ...

 

GetUniquePlayerId

(
    UWorld* World,
    int32 LocalUserNum,
    FName Type
)

Public function Virtual

bool

 

IsLoaded

(
    FName OnlineIdentifier
)

Subsystem

Public function Virtual

bool

 

IsLoggedIn

(
    UWorld* World,
    int32 LocalUserNum
)

Public function Virtual

void

 

LoginPIEInstance

(
    FName OnlineIdentifier,
    int32 LocalUserNum,
    int32 PIELoginNum,
    FOnPIELoginComplete& CompletionDel...
)

Login a local user to the online subsystem before starting a Play In Editor (PIE) instance, using credentials stored in the editor

Public function Virtual

bool

 

MuteRemoteTalker

(
    UWorld* World,
    uint8 LocalUserNum,
    const FUniqueNetId& PlayerId,
    bool bIsSystemWide
)

Mute a remote user for a given local player

Public function Virtual

void

 

RegisterPlayer

(
    UWorld* World,
    FName SessionName,
    const FUniqueNetId& UniqueId,
    bool bWasInvited
)

Register a given player with the online session

Public function Virtual

TSharedPtr< ...

 

SerializeRemotePacket

(
    UWorld* World,
    const UNetConnection*const Rem...,
    FArchive& Ar
)

Public function Virtual

void

 

SetForceDedicated

(
    FName OnlineIdentifier,
    bool bForce
)

Force the online subsystem to treat itself like a dedicated server

Public function Virtual

void

 

SetShouldTryOnlinePIE

(
    bool bShouldTry
)

Enable/Disable online PIE at runtime

Public function Virtual

void

 

ShowAchievementsUI

(
    UWorld* World,
    int32 LocalUserNum
)

Show an online external achievements UI if applicable to the platform

Public function Virtual

void

 

ShowLeaderboardUI

(
    UWorld* World,
    const FString& CategoryName
)

Show an online external leaderboard UI if applicable to the platform

Public function Virtual

void

 

ShowWebURL

(
    const FString& CurrentURL,
    const FShowWebUrlParams& ShowParam...,
    const FOnlineShowWebUrlClosed& Com...
)

Displays a web page in the external UI

Public function Virtual

void

 

ShutdownOnlineSubsystem

(
    FName OnlineIdentifier
)

Shut down a given online subsystem

Public function Virtual

void

 

StartNetworkedVoice

(
    UWorld* World,
    uint8 LocalUserNum
)

Start processing networked voice traffic for a given local user

Public function Virtual

void

 

StartSession

(
    UWorld* World,
    FName SessionName,
    FOnlineSessionStartComplete& InCom...
)

SessionStart a given named online session

Public function Virtual

void

 

StopNetworkedVoice

(
    UWorld* World,
    uint8 LocalUserNum
)

Stop processing networked voice traffic for a given local user

Public function Virtual

bool

 

SupportsOnlinePIE()

PIE Utilities

Public function Virtual

bool

 

UnmuteRemoteTalker

(
    UWorld* World,
    uint8 LocalUserNum,
    const FUniqueNetId& PlayerId,
    bool bIsSystemWide
)

UnMute a remote user for a given local player

Public function Virtual

void

 

UnregisterPlayer

(
    UWorld* World,
    FName SessionName,
    const FUniqueNetId& UniqueId
)

Unregister a given player from the online session

Public function Virtual

void

 

UnregisterPlayers

(
    UWorld* World,
    FName SessionName,
    const TArray< TSharedRef< const FUn...
)

Public function Virtual

void

 

UpdateSessionJoinability

(
    UWorld* World,
    FName SessionName,
    bool bPublicSearchable,
    bool bAllowInvites,
    bool bJoinViaPresence,
    bool bJoinViaPresenceFriendsOnly
)

Classes

Name

Description

Public struct

FShowWebUrlParams

External UI

Constants

Name

Description

Singleton

One and only instance of this class, should handle normal and PIE operations by disambiguating in the function calls themselves

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss