Hi everyone,
I am currently developing a game in Unreal Engine 5 and using the new Online Services EOS plugin (not the legacy OnlineSubsystem). I’m facing an issue where the Friends Interface doesn’t seem to cache/return any relationship data locally.
The Setup:
-
Engine Version: UE 5.x (using
UE::Onlinenamespace). -
Plugin: Online Services EOS.
-
Environment: Two separate developer accounts within the same Organization.
-
Action: I successfully logged in both accounts. Using the EOS Social Overlay (Shift+F3), Account A sent a friend invite to Account B. I saw the “Add Friend” UI pop up and confirmed the action.
The Issue: I am following the standard asynchronous flow:
-
I call
IFriends::QueryFriends. -
The
OnCompletedelegate/TFuture returns Success. -
Immediately after success, I call
IFriends::GetFriendsto retrieve the cached list. -
Result:
GetFriendsreturns an empty array (Num = 0) for both accounts.
My Confusion regarding Documentation: According to the Official Documentation:
-
The
FFriendstruct contains anERelationshipmember. -
ERelationshipincludes values likeInviteSent,InviteReceived, andFriend.
Based on this, my understanding is that GetFriends should return all relationship types (including pending invites), not just confirmed friends. If GetFriends only returns confirmed friends, how am I supposed to retrieve the list of pending invites to display in my custom UI?
What I’ve checked:
-
QueryFriendsdefinitely returns a success status. -
The Social Overlay not shows the pending invite.
-
The
LocalUserIdpassed into the parameters is correct.
Questions:
-
Is there a specific Schema or filter I need to define in
QueryFriendsto include pending invites in the local cache? -
Does
GetFriendsinternally filter out anything that isn’tERelationship::Friend? -
Is there a known sync issue between the Social Overlay actions and the Online Services local cache?
Any insights would be greatly appreciated!