Facepunch.Steamworks Wiki

Steamworks.SteamFriends

Undocumented Parental Settings

Events

static event Action<Friend, string, string> OnChatMessage
Called when chat message has been received from a friend. You'll need to turn on ListenForFriendsMessages to recieve this. (friend, msgtype, message)
static event Action<Friend> OnFriendRichPresenceUpdate
Callback indicating updated data about friends rich presence information
Called when the user tries to join a lobby from their friends list game client should attempt to connect to specified lobby when this is received
static event Action<bool> OnGameOverlayActivated
Posted when game overlay activates or deactivates the game can use this to be pause or resume single player games
static event Action<Friend, string> OnGameRichPresenceJoinRequested
Called when the user tries to join a game from their friends list rich presence will have been set with the "connect" key which is set here
static event Action<string, string> OnGameServerChangeRequested
Called when the user tries to join a different game server from their friends list game client should attempt to connect to specified server when this is received
static event Action<Friend> OnPersonaStateChange
called when a friends' status changes

Properties

static bool ListenForFriendsMessages { get; set; }
Listens for Steam friends chat messages. You can then show these chats inline in the game. For example with a Blizzard style chat message system or the chat system in Dota 2. After enabling this you will receive callbacks when ever the user receives a chat message.

Methods

static void ClearRichPresence()
Clears all of the current user's rich presence data.
static IEnumerable<Friend> GetBlocked()
static async Task<int> GetFollowerCount( SteamId steamID )
static async Task<SteamId[]> GetFollowingList()
static IEnumerable<Friend> GetFriends()
static IEnumerable<Friend> GetFriendsClanMembers()
static IEnumerable<Friend> GetFriendsOnGameServer()
static IEnumerable<Friend> GetFriendsRequested()
static IEnumerable<Friend> GetFromSource( SteamId steamid )
static async Task<Data.Image> GetLargeAvatarAsync( SteamId steamid )
static async Task<Data.Image> GetMediumAvatarAsync( SteamId steamid )
static IEnumerable<Friend> GetPlayedWith()
static string GetRichPresence( string key )
Find a rich presence value by key for current user. Will be null if not found.
static async Task<Data.Image> GetSmallAvatarAsync( SteamId steamid )
static async Task<bool> IsFollowing( SteamId steamID )
static void OpenGameInviteOverlay( SteamId lobby )
Activates the Steam Overlay to open the invite dialog. Invitations sent from this dialog will be for the provided lobby.
static void OpenOverlay( string type )
The dialog to open. Valid options are: "friends", "community", "players", "settings", "officialgamegroup", "stats", "achievements".
static void OpenStoreOverlay( AppId id )
Activates the Steam Overlay to the Steam store page for the provided app.
static void OpenUserOverlay( SteamId id, string type )
"steamid" - Opens the overlay web browser to the specified user or groups profile. "chat" - Opens a chat window to the specified user, or joins the group chat. "jointrade" - Opens a window to a Steam Trading session that was started with the ISteamEconomy/StartTrade Web API. "stats" - Opens the overlay web browser to the specified user's stats. "achievements" - Opens the overlay web browser to the specified user's achievements. "friendadd" - Open..
static void OpenWebOverlay( string url, bool modal = False )
Activates Steam Overlay web browser directly to the specified URL.
static bool RequestUserInformation( SteamId steamid, bool nameonly = True )
Requests the persona name and optionally the avatar of a specified user. NOTE: It's a lot slower to download avatars and churns the local cache, so if you don't need avatars, don't request them. returns true if we're fetching the data, false if we already have it
static void SetPlayedWith( SteamId steamid )
Mark a target user as 'played with'. NOTE: The current user must be in game with the other player for the association to work.
static bool SetRichPresence( string key, string value )
Sets a rich presence value by key for current user.