steam-engine 0.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- steam_engine-0.1.0/.github/workflows/docs.yml +40 -0
- steam_engine-0.1.0/.github/workflows/release.yml +36 -0
- steam_engine-0.1.0/.gitignore +5 -0
- steam_engine-0.1.0/PKG-INFO +87 -0
- steam_engine-0.1.0/README.md +78 -0
- steam_engine-0.1.0/docs/api/account-auth-storage.md +57 -0
- steam_engine-0.1.0/docs/api/debug-misc-helpers.md +131 -0
- steam_engine-0.1.0/docs/api/friends-chat-community.md +155 -0
- steam_engine-0.1.0/docs/api/games-apps-library.md +215 -0
- steam_engine-0.1.0/docs/api/networking-services.md +45 -0
- steam_engine-0.1.0/docs/api/other.md +9 -0
- steam_engine-0.1.0/docs/api/system-hardware-input.md +160 -0
- steam_engine-0.1.0/docs/api/ui-browser-window.md +189 -0
- steam_engine-0.1.0/docs/data/api_surface.json +32721 -0
- steam_engine-0.1.0/docs/index.md +39 -0
- steam_engine-0.1.0/mkdocs.yml +45 -0
- steam_engine-0.1.0/pyproject.toml +18 -0
- steam_engine-0.1.0/requirements-docs.txt +1 -0
- steam_engine-0.1.0/scripts/dump_api_surface.py +458 -0
- steam_engine-0.1.0/steam_engine/__init__.py +7 -0
- steam_engine-0.1.0/steam_engine/cdp.py +105 -0
- steam_engine-0.1.0/steam_engine/cli.py +58 -0
- steam_engine-0.1.0/steam_engine/client.py +105 -0
- steam_engine-0.1.0/steam_engine/enable.py +64 -0
- steam_engine-0.1.0/steam_engine/jsproxy.py +64 -0
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
name: docs
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [main]
|
|
6
|
+
paths: [docs/**, mkdocs.yml, .github/workflows/docs.yml]
|
|
7
|
+
workflow_dispatch:
|
|
8
|
+
|
|
9
|
+
permissions:
|
|
10
|
+
contents: read
|
|
11
|
+
pages: write
|
|
12
|
+
id-token: write
|
|
13
|
+
|
|
14
|
+
concurrency:
|
|
15
|
+
group: pages
|
|
16
|
+
cancel-in-progress: true
|
|
17
|
+
|
|
18
|
+
jobs:
|
|
19
|
+
build:
|
|
20
|
+
runs-on: ubuntu-latest
|
|
21
|
+
steps:
|
|
22
|
+
- uses: actions/checkout@v4
|
|
23
|
+
- uses: actions/setup-python@v5
|
|
24
|
+
with:
|
|
25
|
+
python-version: "3.x"
|
|
26
|
+
- run: pip install -r requirements-docs.txt
|
|
27
|
+
- run: mkdocs build --strict
|
|
28
|
+
- uses: actions/upload-pages-artifact@v3
|
|
29
|
+
with:
|
|
30
|
+
path: site
|
|
31
|
+
|
|
32
|
+
deploy:
|
|
33
|
+
needs: build
|
|
34
|
+
runs-on: ubuntu-latest
|
|
35
|
+
environment:
|
|
36
|
+
name: github-pages
|
|
37
|
+
url: ${{ steps.deployment.outputs.page_url }}
|
|
38
|
+
steps:
|
|
39
|
+
- id: deployment
|
|
40
|
+
uses: actions/deploy-pages@v4
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
name: release
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
workflow_dispatch: # manual only — pick the branch/tag in the dispatch UI
|
|
5
|
+
|
|
6
|
+
permissions:
|
|
7
|
+
contents: read
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
build:
|
|
11
|
+
runs-on: ubuntu-latest
|
|
12
|
+
steps:
|
|
13
|
+
- uses: actions/checkout@v4
|
|
14
|
+
- uses: actions/setup-python@v5
|
|
15
|
+
with:
|
|
16
|
+
python-version: "3.x"
|
|
17
|
+
- run: pip install build twine && python -m build && twine check dist/*
|
|
18
|
+
- uses: actions/upload-artifact@v4
|
|
19
|
+
with:
|
|
20
|
+
name: dist
|
|
21
|
+
path: dist/
|
|
22
|
+
|
|
23
|
+
publish:
|
|
24
|
+
needs: build
|
|
25
|
+
runs-on: ubuntu-latest
|
|
26
|
+
environment:
|
|
27
|
+
name: pypi
|
|
28
|
+
url: https://pypi.org/p/steam-engine
|
|
29
|
+
permissions:
|
|
30
|
+
id-token: write # PyPI trusted publishing (OIDC) — no API token
|
|
31
|
+
steps:
|
|
32
|
+
- uses: actions/download-artifact@v4
|
|
33
|
+
with:
|
|
34
|
+
name: dist
|
|
35
|
+
path: dist/
|
|
36
|
+
- uses: pypa/gh-action-pypi-publish@release/v1
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
Metadata-Version: 2.5
|
|
2
|
+
Name: steam-engine
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: Drive a running Steam client's internals over Chrome DevTools Protocol (collections, apps, downloads, all of SteamClient.*)
|
|
5
|
+
License: MIT
|
|
6
|
+
Requires-Python: >=3.11
|
|
7
|
+
Requires-Dist: websockets>=12
|
|
8
|
+
Description-Content-Type: text/markdown
|
|
9
|
+
|
|
10
|
+
# steam-engine
|
|
11
|
+
|
|
12
|
+
Call a running Steam client’s internal JavaScript API from Python.
|
|
13
|
+
|
|
14
|
+
`steam-engine` connects to Steam’s CEF renderer over Chrome DevTools Protocol. It exposes `SteamClient.*` methods and `window.*` stores through a Python proxy, so operations run through Steam itself.
|
|
15
|
+
|
|
16
|
+
For a higher-level collections API, see the sibling project `steam-collections`.
|
|
17
|
+
|
|
18
|
+
## Get started
|
|
19
|
+
|
|
20
|
+
Install from the repository, then enable debugging in Steam:
|
|
21
|
+
|
|
22
|
+
```sh
|
|
23
|
+
pip install -e .
|
|
24
|
+
steam-engine enable --restart
|
|
25
|
+
steam-engine status
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
`enable` is Linux-only. It patches `ubuntu12_64/steamwebhelper_sniper_wrap.sh` and backs up the original to `.sh.bak`. Steam updates can replace this wrapper; run `enable` again if the connection stops working.
|
|
29
|
+
|
|
30
|
+
On Windows or macOS, launch Steam with `-cef-enable-debugging` or add `--remote-debugging-port` to the webhelper command line.
|
|
31
|
+
|
|
32
|
+
The default port is `1337`. Set `STEAM_CDP_PORT` to use another port.
|
|
33
|
+
|
|
34
|
+
## Use from Python
|
|
35
|
+
|
|
36
|
+
Steam must be running with debugging enabled.
|
|
37
|
+
|
|
38
|
+
```python
|
|
39
|
+
from steam_engine import SteamEngine
|
|
40
|
+
|
|
41
|
+
with SteamEngine.connect() as se:
|
|
42
|
+
# Call Steam's native bridge.
|
|
43
|
+
se.client.Apps.SetAppLaunchOptions(292030, "-fullscreen")
|
|
44
|
+
|
|
45
|
+
# Snake_case works too.
|
|
46
|
+
se.client.Apps.specify_compat_tool(105600, "proton_experimental")
|
|
47
|
+
|
|
48
|
+
# Read a JavaScript property.
|
|
49
|
+
apps = se.window.appStore.allApps.get()
|
|
50
|
+
|
|
51
|
+
# Run JavaScript directly.
|
|
52
|
+
count = se.eval("collectionStore.userCollections.length")
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
The proxy supports:
|
|
56
|
+
|
|
57
|
+
| Syntax | Behavior |
|
|
58
|
+
| --------------------- | ------------------------------------------------------------ |
|
|
59
|
+
| `proxy.method(*args)` | Call a method with JSON-serialized arguments; await promises |
|
|
60
|
+
| `proxy.prop.get()` | Read a JSON-serializable property |
|
|
61
|
+
| `proxy.prop.keys()` | List own property names |
|
|
62
|
+
| `proxy.prop[index]` | Access an indexed value |
|
|
63
|
+
|
|
64
|
+
Method names ignore case and underscores. Results are JSON-decoded; `undefined` and unserializable results become `None`.
|
|
65
|
+
|
|
66
|
+
## Use from the terminal
|
|
67
|
+
|
|
68
|
+
```sh
|
|
69
|
+
steam-engine status # Check the connection
|
|
70
|
+
steam-engine targets # List debuggable targets
|
|
71
|
+
steam-engine enable --restart # Enable debugging and restart Steam (Linux)
|
|
72
|
+
steam-engine eval 'collectionStore.userCollections.length'
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
## API reference
|
|
76
|
+
|
|
77
|
+
The generated reference in `docs/` lists the discovered methods and stores. To refresh and browse it:
|
|
78
|
+
|
|
79
|
+
```sh
|
|
80
|
+
python scripts/dump_api_surface.py
|
|
81
|
+
mkdocs serve
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
Raw data is available at `docs/data/api_surface.json`.
|
|
85
|
+
|
|
86
|
+
Steam’s internal API is undocumented. Method names and arguments can change between client builds.
|
|
87
|
+
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
# steam-engine
|
|
2
|
+
|
|
3
|
+
Call a running Steam client’s internal JavaScript API from Python.
|
|
4
|
+
|
|
5
|
+
`steam-engine` connects to Steam’s CEF renderer over Chrome DevTools Protocol. It exposes `SteamClient.*` methods and `window.*` stores through a Python proxy, so operations run through Steam itself.
|
|
6
|
+
|
|
7
|
+
For a higher-level collections API, see the sibling project `steam-collections`.
|
|
8
|
+
|
|
9
|
+
## Get started
|
|
10
|
+
|
|
11
|
+
Install from the repository, then enable debugging in Steam:
|
|
12
|
+
|
|
13
|
+
```sh
|
|
14
|
+
pip install -e .
|
|
15
|
+
steam-engine enable --restart
|
|
16
|
+
steam-engine status
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
`enable` is Linux-only. It patches `ubuntu12_64/steamwebhelper_sniper_wrap.sh` and backs up the original to `.sh.bak`. Steam updates can replace this wrapper; run `enable` again if the connection stops working.
|
|
20
|
+
|
|
21
|
+
On Windows or macOS, launch Steam with `-cef-enable-debugging` or add `--remote-debugging-port` to the webhelper command line.
|
|
22
|
+
|
|
23
|
+
The default port is `1337`. Set `STEAM_CDP_PORT` to use another port.
|
|
24
|
+
|
|
25
|
+
## Use from Python
|
|
26
|
+
|
|
27
|
+
Steam must be running with debugging enabled.
|
|
28
|
+
|
|
29
|
+
```python
|
|
30
|
+
from steam_engine import SteamEngine
|
|
31
|
+
|
|
32
|
+
with SteamEngine.connect() as se:
|
|
33
|
+
# Call Steam's native bridge.
|
|
34
|
+
se.client.Apps.SetAppLaunchOptions(292030, "-fullscreen")
|
|
35
|
+
|
|
36
|
+
# Snake_case works too.
|
|
37
|
+
se.client.Apps.specify_compat_tool(105600, "proton_experimental")
|
|
38
|
+
|
|
39
|
+
# Read a JavaScript property.
|
|
40
|
+
apps = se.window.appStore.allApps.get()
|
|
41
|
+
|
|
42
|
+
# Run JavaScript directly.
|
|
43
|
+
count = se.eval("collectionStore.userCollections.length")
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
The proxy supports:
|
|
47
|
+
|
|
48
|
+
| Syntax | Behavior |
|
|
49
|
+
| --------------------- | ------------------------------------------------------------ |
|
|
50
|
+
| `proxy.method(*args)` | Call a method with JSON-serialized arguments; await promises |
|
|
51
|
+
| `proxy.prop.get()` | Read a JSON-serializable property |
|
|
52
|
+
| `proxy.prop.keys()` | List own property names |
|
|
53
|
+
| `proxy.prop[index]` | Access an indexed value |
|
|
54
|
+
|
|
55
|
+
Method names ignore case and underscores. Results are JSON-decoded; `undefined` and unserializable results become `None`.
|
|
56
|
+
|
|
57
|
+
## Use from the terminal
|
|
58
|
+
|
|
59
|
+
```sh
|
|
60
|
+
steam-engine status # Check the connection
|
|
61
|
+
steam-engine targets # List debuggable targets
|
|
62
|
+
steam-engine enable --restart # Enable debugging and restart Steam (Linux)
|
|
63
|
+
steam-engine eval 'collectionStore.userCollections.length'
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## API reference
|
|
67
|
+
|
|
68
|
+
The generated reference in `docs/` lists the discovered methods and stores. To refresh and browse it:
|
|
69
|
+
|
|
70
|
+
```sh
|
|
71
|
+
python scripts/dump_api_surface.py
|
|
72
|
+
mkdocs serve
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
Raw data is available at `docs/data/api_surface.json`.
|
|
76
|
+
|
|
77
|
+
Steam’s internal API is undocumented. Method names and arguments can change between client builds.
|
|
78
|
+
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
AUTO-GENERATED by scripts/dump_api_surface.py from a live Steam client.
|
|
3
|
+
Names/membership change between Steam builds — regenerate, don't hand-edit.
|
|
4
|
+
-->
|
|
5
|
+
|
|
6
|
+
# Account, auth & storage
|
|
7
|
+
|
|
8
|
+
## `SteamClient.User`
|
|
9
|
+
|
|
10
|
+
**Methods:** `AuthorizeMicrotxn`, `CancelLogin`, `CancelMicrotxn`, `CancelRefreshLogin`, `CancelShutdown`, `Connect`, `FlipToLogin`, `ForceShutdown`, `ForgetPassword`, `GetIPCountry`, `GetLoginProgress`, `GetLoginUsers`, `GetStartupUserChooserState`, `GoOffline`, `GoOnline`, `OptOutOfSurvey`, `PrepareForSystemSuspend`, `Reconnect`, `RemoveAllUsers`, `RemoveUser`, `RequestSupportSystemReport`, `RestartAsCurrentUser`, `RestartAsUser`, `RestartToLoginScreen`, `RestartToUserChooser`, `ResumeSuspendedGames`, `RunSurvey`, `SendSurvey`, `SetAsyncNotificationEnabled`, `SetCheckForUpdatesOnRestart`, `SetLoginCredentials`, `ShowSaveHardwareDialog`, `SignOutAndRestart`, `StartLogin`, `StartOffline`, `StartRefreshLogin`, `StartRestart`, `StartShutdown`
|
|
11
|
+
|
|
12
|
+
**Event subscriptions:** `OnCloseSaveHardwareDialog`, `RegisterForConnectionAttemptsThrottled`, `RegisterForCurrentUserChanges`, `RegisterForLoginStateChange`, `RegisterForLoginUsersChanged`, `RegisterForPrepareForSystemSuspendProgress`, `RegisterForResumeSuspendedGamesProgress`, `RegisterForShowHardwareSurvey`, `RegisterForShutdownDone`, `RegisterForShutdownFailed`, `RegisterForShutdownStart`, `RegisterForShutdownState`, `RegisterShowSaveHardwareDialog`
|
|
13
|
+
|
|
14
|
+
## `SteamClient.Auth`
|
|
15
|
+
|
|
16
|
+
**Methods:** `ClearCachedSignInPin`, `CurrentUserHasCachedSignInPin`, `GetLocalHostname`, `GetMachineID`, `GetRefreshInfo`, `GetSteamGuardData`, `IsSecureComputer`, `SetCachedSignInPin`, `SetLoginToken`, `SetSteamGuardData`, `StartSignInFromCache`, `UserHasCachedSignInPin`, `ValidateCachedSignInPin`
|
|
17
|
+
|
|
18
|
+
## `SteamClient.Parental`
|
|
19
|
+
|
|
20
|
+
**Methods:** `LockParentalLock`, `UnlockParentalLock`
|
|
21
|
+
|
|
22
|
+
**Event subscriptions:** `RegisterForParentalPlaytimeWarnings`, `RegisterForParentalSettingsChanges`
|
|
23
|
+
|
|
24
|
+
## `SteamClient.Storage`
|
|
25
|
+
|
|
26
|
+
**Methods:** `DeleteKey`, `GetJSON`, `GetString`, `SetObject`, `SetString`
|
|
27
|
+
|
|
28
|
+
## `SteamClient.RoamingStorage`
|
|
29
|
+
|
|
30
|
+
**Methods:** `DeleteKey`, `GetJSON`, `GetString`, `SetObject`, `SetString`
|
|
31
|
+
|
|
32
|
+
## `SteamClient.MachineStorage`
|
|
33
|
+
|
|
34
|
+
**Methods:** `DeleteKey`, `GetJSON`, `GetString`, `SetObject`, `SetString`
|
|
35
|
+
|
|
36
|
+
## `loginStore`
|
|
37
|
+
|
|
38
|
+
**Methods:** `GetLoginUsers`, `Init`, `OnLoginStateChange`, `OnLoginUsersChanged`, `RemoveAllUsers`, `RemoveUser`
|
|
39
|
+
|
|
40
|
+
**`m_hLoginStateChange`** — `unregister`
|
|
41
|
+
|
|
42
|
+
**`m_hLoginUsersChanged`** — `unregister`
|
|
43
|
+
|
|
44
|
+
**State:** `accountName`, `currentUserIsRemembered`, `emailDomain`, `isProbablySharedPC`, `loginPercentage`, `loginResult`, `loginState`, `m_bSecureComputer`, `m_eLoginResult`, `m_eLoginState`, `m_nLoginPercentage`, `m_strAccountName`, `m_strEmailDomain`, `m_vecLoginUsers`, `secureComputer`
|
|
45
|
+
|
|
46
|
+
## `securitystore`
|
|
47
|
+
|
|
48
|
+
**Methods:** `BConsumeLockTicket`, `BResettingPIN`, `BShowResetPINModal`, `BeginPINReset`, `ClearPIN`, `ClearPINIfNotUsed`, `GetActiveLockScreenProps`, `GetSettings`, `Init`, `InitialLoginComplete`, `IsLockScreenActive`, `ProvideLockTicket`, `SetActiveLockScreenProps`, `SetHasShownResetPINModal`, `SetSettings`
|
|
49
|
+
|
|
50
|
+
**State:** `m_MachineStorage`, `m_bLockTicket`
|
|
51
|
+
|
|
52
|
+
## `subscriberAgreementStore`
|
|
53
|
+
|
|
54
|
+
**Methods:** `AcceptSSA`, `EnsureLoaded`, `GetSubscriberAgreementInfo`, `Init`, `LoadSubscriberAgreementInfo`
|
|
55
|
+
|
|
56
|
+
**State:** `CMInterface`, `SubscriberAgreementInfoChangedCallbacks`, `m_PromiseLoading`, `m_SubscriberAgreementInfo`, `m_SubscriberAgreementInfoChangedCallbacks`, `m_cm`
|
|
57
|
+
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
AUTO-GENERATED by scripts/dump_api_surface.py from a live Steam client.
|
|
3
|
+
Names/membership change between Steam builds — regenerate, don't hand-edit.
|
|
4
|
+
-->
|
|
5
|
+
|
|
6
|
+
# Debug & misc helpers
|
|
7
|
+
|
|
8
|
+
## `SteamClient.Console`
|
|
9
|
+
|
|
10
|
+
**Methods:** `ExecCommand`, `GetAutocompleteSuggestions`
|
|
11
|
+
|
|
12
|
+
**Event subscriptions:** `RegisterForSpewOutput`
|
|
13
|
+
|
|
14
|
+
## `SteamClient._internal`
|
|
15
|
+
|
|
16
|
+
**Methods:** `BInGpuFallbackMode`, `ExecutePromise`, `GetBrowserProcessDetails`, `GetDisplayScaleFactors`, `IsDebuggingEnabled`, `RequestDisableGpu`, `SetDevMode`, `SetForceDeviceScaleFactor`, `SetRightToLeftMode`
|
|
17
|
+
|
|
18
|
+
**Event subscriptions:** `RegisterForStyleChanges`
|
|
19
|
+
|
|
20
|
+
## `SteamClient.SteamChina`
|
|
21
|
+
|
|
22
|
+
**Methods:** `GetCustomLauncherAppID`
|
|
23
|
+
|
|
24
|
+
## `CLSTAMP`
|
|
25
|
+
|
|
26
|
+
Global value: `"10971728"`
|
|
27
|
+
|
|
28
|
+
## `EnableSteamConsole()`
|
|
29
|
+
|
|
30
|
+
Global function — arity 0.
|
|
31
|
+
|
|
32
|
+
## `consoleStore`
|
|
33
|
+
|
|
34
|
+
**Methods:** `AddSpewLine`, `Init`, `OnSteamConsoleSpew`, `Reset`, `StartListening`, `StopListening`
|
|
35
|
+
|
|
36
|
+
**State:** `commandHistory`, `consoleSpew`, `m_listenHandle`, `m_nLineCounter`, `m_rgCommandHistory`, `m_rgConsoleSpew`
|
|
37
|
+
|
|
38
|
+
## `webpackChunksteamui`
|
|
39
|
+
|
|
40
|
+
**Methods:** `push`
|
|
41
|
+
|
|
42
|
+
**State:** `0`, `1`, `10`, `11`, `12`, `13`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `length`
|
|
43
|
+
|
|
44
|
+
## `__mobxInstanceCount`
|
|
45
|
+
|
|
46
|
+
Global value: `1`
|
|
47
|
+
|
|
48
|
+
## `__mobxGlobals`
|
|
49
|
+
|
|
50
|
+
**State:** `allowStateChanges`, `allowStateReads`, `computedRequiresReaction`, `disableErrorBoundaries`, `enforceActions`, `globalReactionErrorHandlers`, `inBatch`, `isRunningReactions`, `observableRequiresReaction`, `pendingReactions`, `pendingUnobservations`, `reactionRequiresObservable`, `runId`, `safeDescriptors`, `spyListeners`, `suppressReactionErrors`, `useProxies`, `verifyProxies`, `version`
|
|
51
|
+
|
|
52
|
+
## `toJS()`
|
|
53
|
+
|
|
54
|
+
Global function — arity 2.
|
|
55
|
+
|
|
56
|
+
## `jsonit()`
|
|
57
|
+
|
|
58
|
+
Global function — arity 1.
|
|
59
|
+
|
|
60
|
+
## `libraryScrollListener()`
|
|
61
|
+
|
|
62
|
+
Global function — arity 1.
|
|
63
|
+
|
|
64
|
+
## `lastScrollTime`
|
|
65
|
+
|
|
66
|
+
Global value: `0`
|
|
67
|
+
|
|
68
|
+
## `ResetNewContentRollup()`
|
|
69
|
+
|
|
70
|
+
Global function — arity 0.
|
|
71
|
+
|
|
72
|
+
## `DebugLogEnable()`
|
|
73
|
+
|
|
74
|
+
Global function — arity 0.
|
|
75
|
+
|
|
76
|
+
## `DebugLogDisable()`
|
|
77
|
+
|
|
78
|
+
Global function — arity 0.
|
|
79
|
+
|
|
80
|
+
## `DebugLogEnableAll()`
|
|
81
|
+
|
|
82
|
+
Global function — arity 0.
|
|
83
|
+
|
|
84
|
+
## `DebugLogDisableAll()`
|
|
85
|
+
|
|
86
|
+
Global function — arity 0.
|
|
87
|
+
|
|
88
|
+
## `DebugLogEnableBacktrace()`
|
|
89
|
+
|
|
90
|
+
Global function — arity 0.
|
|
91
|
+
|
|
92
|
+
## `DebugLogDisableBacktrace()`
|
|
93
|
+
|
|
94
|
+
Global function — arity 0.
|
|
95
|
+
|
|
96
|
+
## `DebugLogNames()`
|
|
97
|
+
|
|
98
|
+
Global function — arity 0.
|
|
99
|
+
|
|
100
|
+
## `DebugLogEnabled()`
|
|
101
|
+
|
|
102
|
+
Global function — arity 0.
|
|
103
|
+
|
|
104
|
+
## `DEBUG_GetDesiredSteamUIWindows()`
|
|
105
|
+
|
|
106
|
+
Global function — arity 0, native.
|
|
107
|
+
|
|
108
|
+
## `DEBUG_SuppressWindowType()`
|
|
109
|
+
|
|
110
|
+
Global function — arity 2, native.
|
|
111
|
+
|
|
112
|
+
## `SetVoiceEchoLocalMic()`
|
|
113
|
+
|
|
114
|
+
Global function — arity 0.
|
|
115
|
+
|
|
116
|
+
## `SetVoiceLogDetails()`
|
|
117
|
+
|
|
118
|
+
Global function — arity 0.
|
|
119
|
+
|
|
120
|
+
## `SetVoiceForceReconnectingStatus()`
|
|
121
|
+
|
|
122
|
+
Global function — arity 0.
|
|
123
|
+
|
|
124
|
+
## `SetVoiceForceConnectingStatus()`
|
|
125
|
+
|
|
126
|
+
Global function — arity 0.
|
|
127
|
+
|
|
128
|
+
## `SetVoiceAutoShowVideoStream()`
|
|
129
|
+
|
|
130
|
+
Global function — arity 0.
|
|
131
|
+
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
AUTO-GENERATED by scripts/dump_api_surface.py from a live Steam client.
|
|
3
|
+
Names/membership change between Steam builds — regenerate, don't hand-edit.
|
|
4
|
+
-->
|
|
5
|
+
|
|
6
|
+
# Friends, chat & community
|
|
7
|
+
|
|
8
|
+
## `SteamClient.Friends`
|
|
9
|
+
|
|
10
|
+
**Methods:** `GetCoplayData`, `InviteUserToCurrentGame`, `InviteUserToGame`, `InviteUserToLobby`, `InviteUserToRemotePlayTogetherCurrentGame`, `ShowRemotePlayTogetherUI`
|
|
11
|
+
|
|
12
|
+
**Event subscriptions:** `RegisterForMultiplayerSessionShareURLChanged`, `RegisterForVoiceChatStatus`
|
|
13
|
+
|
|
14
|
+
## `SteamClient.FriendSettings`
|
|
15
|
+
|
|
16
|
+
**Methods:** `GetEnabledFeatures`, `SetFriendSettings`
|
|
17
|
+
|
|
18
|
+
**Event subscriptions:** `RegisterForSettingsChanges`
|
|
19
|
+
|
|
20
|
+
## `SteamClient.Messaging`
|
|
21
|
+
|
|
22
|
+
**Methods:** `PostMessage`
|
|
23
|
+
|
|
24
|
+
**Event subscriptions:** `RegisterForMessages`
|
|
25
|
+
|
|
26
|
+
## `SteamClient.WebChat`
|
|
27
|
+
|
|
28
|
+
**Methods:** `BSuppressPopupsInRestore`, `GetCurrentUserAccountID`, `GetLocalAvatarBase64`, `GetLocalPersonaName`, `GetOverlayChatBrowserInfo`, `GetPrivateConnectString`, `GetPushToTalkEnabled`, `GetSignIntoFriendsOnStart`, `GetUIMode`, `OpenURLInClient`, `SetActiveClanChatIDs`, `SetNumChatsWithUnreadPriorityMessages`, `SetPersonaName`, `SetPushToMuteEnabled`, `SetPushToTalkEnabled`, `SetPushToTalkHotKey`, `SetPushToTalkMouseButton`, `SetVoiceChatActive`, `SetVoiceChatStatus`, `ShowChatRoomGroupDialog`, `ShowFriendChatDialog`, `UnregisterForMouseXButtonDown`
|
|
29
|
+
|
|
30
|
+
**Event subscriptions:** `OnGroupChatUserStateChange`, `OnNewGroupChatMsgAdded`, `RegisterForComputerActiveStateChange`, `RegisterForFriendPostMessage`, `RegisterForMouseXButtonDown`, `RegisterForPushToTalkStateChange`, `RegisterForUIModeChange`, `RegisterOverlayChatBrowserInfoChanged`
|
|
31
|
+
|
|
32
|
+
## `SteamClient.FamilySharing`
|
|
33
|
+
|
|
34
|
+
**Methods:** `GetAvailableLenders`, `SetPreferredLender`
|
|
35
|
+
|
|
36
|
+
**Event subscriptions:** `RegisterForKickedBorrower`
|
|
37
|
+
|
|
38
|
+
## `SteamClient.Notifications`
|
|
39
|
+
|
|
40
|
+
**Event subscriptions:** `RegisterForNotifications`
|
|
41
|
+
|
|
42
|
+
## `SteamClient.ClientNotifications`
|
|
43
|
+
|
|
44
|
+
**Methods:** `DisplayClientNotification`
|
|
45
|
+
|
|
46
|
+
**Event subscriptions:** `OnRespondToClientNotification`
|
|
47
|
+
|
|
48
|
+
## `SteamClient.CommunityItems`
|
|
49
|
+
|
|
50
|
+
**Methods:** `DownloadItemAsset`, `GetItemAssetPath`, `RemoveDownloadedItemAsset`
|
|
51
|
+
|
|
52
|
+
## `SteamClient.Customization`
|
|
53
|
+
|
|
54
|
+
**Methods:** `GenerateLocalStartupMoviesThumbnails`, `GetDownloadedStartupMovies`, `GetLocalStartupMovies`
|
|
55
|
+
|
|
56
|
+
## `SteamClient.SharedConnection`
|
|
57
|
+
|
|
58
|
+
**Methods:** `AllocateSharedConnection`, `Close`, `SendMsg`, `SendMsgAndAwaitBinaryResponse`, `SendMsgAndAwaitResponse`, `SubscribeToClientServiceMethod`, `SubscribeToEMsg`
|
|
59
|
+
|
|
60
|
+
**Event subscriptions:** `RegisterOnBinaryMessageReceived`, `RegisterOnLogonInfoChanged`, `RegisterOnMessageReceived`
|
|
61
|
+
|
|
62
|
+
## `friendStore`
|
|
63
|
+
|
|
64
|
+
**Methods:** `BShouldCachePlayer`, `FetchOwnedGames`, `GetCountFriendsInGame`, `GetCountFriendsPlayingGames`, `GetFriendState`, `GetFriendsInGame`, `GetMaxCountFriendsInGame`, `GetOwnedGames`, `Init`, `InitPlayerCache`, `IsLibraryAccessDenied`, `LoadPersonaState`, `OnConnectedToSteam`, `OnPersonaStateChanged`, `RefreshOwnedGames`
|
|
65
|
+
|
|
66
|
+
**State:** `allFriends`, `currentUserSteamID`, `favoriteFriends`, `k_strPlayerCacheKey`, `m_CMInterface`, `m_FriendsUIFriendStore`, `m_Storage`, `m_mapOwnedGamesCacheErrors`, `m_mapPlayerCache`, `m_ownedGamesCache`
|
|
67
|
+
|
|
68
|
+
## `g_ClanStore`
|
|
69
|
+
|
|
70
|
+
**Methods:** `AddGroupVanities`, `BHasClanInfoLoaded`, `BHasClanInfoLoadedByAccountID`, `GetClanInfoByClanAccountID`, `GetClanMemberCount`, `GetClanSteamIDForAppID`, `GetClanVanityForAppID`, `GetClanVanityForClanSteamID`, `GetCreatorStoreURL`, `GetOGGClanInfo`, `GetRequestParam`, `HasLoadedClanAccountID`, `Init`, `InternalLoadClanInfoForClanSteamID`, `InternalLoadOGGClanInfoForAppID`, `InternalLoadOGGClanInfoForGroupVanity`, `InternalLoadOGGClanInfoForIdentifier`, `InternalSetupValue`, `LazyInit`, `LoadClanInfoForClanAccountID`, `LoadClanInfoForClanSteamID`, `LoadOGGClanInfoForAppID`, `LoadOGGClanInfoForGroupVanity`, `LoadOGGClanInfoForIdentifier`, `RegisterClanData`, `ValidateClanConfig`
|
|
71
|
+
|
|
72
|
+
**State:** `m_bLoadedFromConfig`, `m_mapAppIDToClanInfo`, `m_mapClanAccountIDToClanInfo`, `m_mapPromisesLoading`, `m_mapVanityToClanInfo`, `m_rgQueuedEventsClanIDs`
|
|
73
|
+
|
|
74
|
+
## `communityStore`
|
|
75
|
+
|
|
76
|
+
**Methods:** `FormatAndParseUserStatusBBCode`, `Init`
|
|
77
|
+
|
|
78
|
+
**State:** `CMInterface`, `EmoticonStore`, `ThreadStore`, `UserStatusBBCodeParser`, `m_CMInterface`, `m_CommentThreadStore`, `m_EmoticonStore`, `m_UserStatusPostBBCodeParser`
|
|
79
|
+
|
|
80
|
+
## `userProfileStore`
|
|
81
|
+
|
|
82
|
+
**Methods:** `BHasClaimedSteamDeckRewards`, `BIsValidSteamDeckSerialNumber`, `CheckClaimSteamDeckRewards`, `ClaimSteamDeckRewards`, `DownloadMovie`, `EquipKeyboardSkin`, `ForceRefreshEquippedItems`, `GetEquippedItems`, `GetEquippedProfileItemsForUser`, `GetKeyboardSkinTheme`, `GetKeyboardSkins`, `GetProfileItemsOwned`, `GetStartupMovies`, `GetSteamDeckRegistration`, `IgnoreSteamDeckRewardsPrompt`, `Init`, `NotifyToClaimSteamDeckRewards`, `OnFriendEquippedProfileItemsChanged`, `OnNotification`, `OnSystemResumedFromSuspend`, `PopulateStartupMovies`, `RemoveMovieFromDisk`, `SetStartupMovie`
|
|
83
|
+
|
|
84
|
+
**`m_FriendEquippedProfileItemsChangedHandler`** — `invoke`, `unregister`
|
|
85
|
+
|
|
86
|
+
**State:** `m_CMInterface`, `m_localStorage`, `m_mapKeyboardSkinThemes`, `m_notifyClaimRewardsTimer`, `m_promiseEquipped`
|
|
87
|
+
|
|
88
|
+
## `badgeStore`
|
|
89
|
+
|
|
90
|
+
**Methods:** `FetchBadgeData`, `FetchCommunityItemDefinitions`, `GetBadgeData`, `GetCommunityItemDefinition`, `GetCommunityItemDefinitions`, `Init`, `InvalidateBadgeData`
|
|
91
|
+
|
|
92
|
+
**State:** `m_CMInterface`, `m_mapBadgeData`, `m_mapCommunityItemDefs`
|
|
93
|
+
|
|
94
|
+
## `partnerEventStore`
|
|
95
|
+
|
|
96
|
+
**Methods:** `BHasClanAnnouncementGID`, `BHasClanEventModel`, `BIsSummaryOnlyStore`, `DefaultEventSortFunction`, `DeleteClanEvent`, `DeleteOldAnnouncement`, `FlushEventFromCache`, `GetAllClanEvents`, `GetAppImportantUpdate`, `GetBestEventsForCurrentUser`, `GetClanEventFromAnnouncementGID`, `GetClanEventGIDFromAnnouncementGID`, `GetClanEventGIDs`, `GetClanEventGIDsForApp`, `GetClanEventModel`, `GetPartnerEventChangeCallback`, `GetRankedClanEvents`, `HelperInitializeNumSalesHeaderArray`, `HintLoadImportantUpdates`, `Init`, `InsertEventModelFromClanEventData`, `InsertUniqueEventGID`, `InternalLoadAdjacentPartnerEvents`, `InternalLoadPartnerEventFromClanEventOrClanAnnouncementGID`, `InternalLoadPartnerEventFromClanEventOrClanAnnouncementGIDCached`, `InternalLoadPartnerEventList`, `LoadAdjacentPartnerEvents`, `LoadAdjacentPartnerEventsByAnnouncement`, `LoadAdjacentPartnerEventsByEvent`, `LoadBatchPartnerEventsByEventGIDsOrAnnouncementGIDs`, `LoadClanEventLocalizationFromAnnouncementGID`, `LoadHiddenPartnerEvent`, `LoadHiddenPartnerEventByAnnouncementGID`, `LoadImportantEventsAroundToday`, `LoadPartnerEventFromAnnoucementGID`, `LoadPartnerEventFromAnnoucementGIDAndClanSteamID`, `LoadPartnerEventFromClanEventGID`, `LoadPartnerEventFromClanEventGIDAndClanSteamID`, `LoadPartnerEventGeneric`, `LoadPartnerEventsPageable`, `QueueLoadPartnerEvent`, `RegisterClanEvents`, `RemoveGIDFromList`, `ResetModel`, `SavePartnerEventSaleAssets`, `ValidateAdjacentEvent`, `ValidateStoreDefault`
|
|
97
|
+
|
|
98
|
+
**State:** `m_PendingInfoPromise`, `m_PendingInfoResolve`, `m_QueuedEventTimeout`, `m_bLoadedFromConfig`, `m_bOnlySummary`, `m_mapAdjacentAnnouncementGIDs`, `m_mapAnnouncementBodyToEvent`, `m_mapAppIDToGIDs`, `m_mapClanToGIDs`, `m_mapEventUpdateCallback`, `m_mapExistingEvents`, `m_mapUpdatedApps`, `m_rgQueuedEventsClanIDs`, `m_rgQueuedEventsForEditFlags`, `m_rgQueuedEventsUniqueIDs`, `m_tsUpdatedAppsQueryTime`
|
|
99
|
+
|
|
100
|
+
## `g_PartnerEventStore`
|
|
101
|
+
|
|
102
|
+
**Methods:** `BHasClanAnnouncementGID`, `BHasClanEventModel`, `BIsSummaryOnlyStore`, `DefaultEventSortFunction`, `DeleteClanEvent`, `FlushEventFromCache`, `GetAllClanEvents`, `GetAppImportantUpdate`, `GetBestEventsForCurrentUser`, `GetClanEventFromAnnouncementGID`, `GetClanEventGIDFromAnnouncementGID`, `GetClanEventGIDs`, `GetClanEventGIDsForApp`, `GetClanEventModel`, `GetPartnerEventChangeCallback`, `GetRankedClanEvents`, `HelperInitializeNumSalesHeaderArray`, `HintLoadImportantUpdates`, `Init`, `InsertEventModelFromClanEventData`, `InsertUniqueEventGID`, `InternalLoadAdjacentPartnerEvents`, `InternalLoadPartnerEventFromClanEventOrClanAnnouncementGID`, `InternalLoadPartnerEventFromClanEventOrClanAnnouncementGIDCached`, `InternalLoadPartnerEventList`, `LoadAdjacentPartnerEvents`, `LoadAdjacentPartnerEventsByAnnouncement`, `LoadAdjacentPartnerEventsByEvent`, `LoadBatchPartnerEventsByEventGIDsOrAnnouncementGIDs`, `LoadClanEventLocalizationFromAnnouncementGID`, `LoadHiddenPartnerEvent`, `LoadHiddenPartnerEventByAnnouncementGID`, `LoadImportantEventsAroundToday`, `LoadPartnerEventFromAnnoucementGID`, `LoadPartnerEventFromAnnoucementGIDAndClanSteamID`, `LoadPartnerEventFromClanEventGID`, `LoadPartnerEventFromClanEventGIDAndClanSteamID`, `LoadPartnerEventGeneric`, `LoadPartnerEventsPageable`, `QueueLoadPartnerEvent`, `RegisterClanEvents`, `RemoveGIDFromList`, `ResetModel`, `SavePartnerEventSaleAssets`, `ValidateAdjacentEvent`, `ValidateStoreDefault`
|
|
103
|
+
|
|
104
|
+
**State:** `m_PendingInfoPromise`, `m_PendingInfoResolve`, `m_QueuedEventTimeout`, `m_bLoadedFromConfig`, `m_bOnlySummary`, `m_mapAdjacentAnnouncementGIDs`, `m_mapAnnouncementBodyToEvent`, `m_mapAppIDToGIDs`, `m_mapClanToGIDs`, `m_mapEventUpdateCallback`, `m_mapExistingEvents`, `m_mapUpdatedApps`, `m_rgQueuedEventsClanIDs`, `m_rgQueuedEventsForEditFlags`, `m_rgQueuedEventsUniqueIDs`, `m_tsUpdatedAppsQueryTime`
|
|
105
|
+
|
|
106
|
+
## `g_PartnerEventSummaryStore`
|
|
107
|
+
|
|
108
|
+
**Methods:** `BHasClanAnnouncementGID`, `BHasClanEventModel`, `BIsSummaryOnlyStore`, `DefaultEventSortFunction`, `DeleteClanEvent`, `FlushEventFromCache`, `GetAllClanEvents`, `GetAppImportantUpdate`, `GetBestEventsForCurrentUser`, `GetClanEventFromAnnouncementGID`, `GetClanEventGIDFromAnnouncementGID`, `GetClanEventGIDs`, `GetClanEventGIDsForApp`, `GetClanEventModel`, `GetPartnerEventChangeCallback`, `GetRankedClanEvents`, `HelperInitializeNumSalesHeaderArray`, `HintLoadImportantUpdates`, `Init`, `InsertEventModelFromClanEventData`, `InsertUniqueEventGID`, `InternalLoadAdjacentPartnerEvents`, `InternalLoadPartnerEventFromClanEventOrClanAnnouncementGID`, `InternalLoadPartnerEventFromClanEventOrClanAnnouncementGIDCached`, `InternalLoadPartnerEventList`, `LoadAdjacentPartnerEvents`, `LoadAdjacentPartnerEventsByAnnouncement`, `LoadAdjacentPartnerEventsByEvent`, `LoadBatchPartnerEventsByEventGIDsOrAnnouncementGIDs`, `LoadClanEventLocalizationFromAnnouncementGID`, `LoadHiddenPartnerEvent`, `LoadHiddenPartnerEventByAnnouncementGID`, `LoadImportantEventsAroundToday`, `LoadPartnerEventFromAnnoucementGID`, `LoadPartnerEventFromAnnoucementGIDAndClanSteamID`, `LoadPartnerEventFromClanEventGID`, `LoadPartnerEventFromClanEventGIDAndClanSteamID`, `LoadPartnerEventGeneric`, `LoadPartnerEventsPageable`, `QueueLoadPartnerEvent`, `RegisterClanEvents`, `RemoveGIDFromList`, `ResetModel`, `SavePartnerEventSaleAssets`, `ValidateAdjacentEvent`, `ValidateStoreDefault`
|
|
109
|
+
|
|
110
|
+
**State:** `m_PendingInfoPromise`, `m_PendingInfoResolve`, `m_QueuedEventTimeout`, `m_bLoadedFromConfig`, `m_bOnlySummary`, `m_mapAdjacentAnnouncementGIDs`, `m_mapAnnouncementBodyToEvent`, `m_mapAppIDToGIDs`, `m_mapClanToGIDs`, `m_mapEventUpdateCallback`, `m_mapExistingEvents`, `m_mapUpdatedApps`, `m_rgQueuedEventsClanIDs`, `m_rgQueuedEventsForEditFlags`, `m_rgQueuedEventsUniqueIDs`, `m_tsUpdatedAppsQueryTime`
|
|
111
|
+
|
|
112
|
+
## `libraryEventStore`
|
|
113
|
+
|
|
114
|
+
**Methods:** `AddToDoNotShowList`, `BNoShowMoreOrLessDataFetched`, `BNotYetLoaded`, `ClearJustChangedAppPriority`, `ClearJustChangedPriority`, `FetchUpdatedEventAppPrioritiesForUser`, `FilterImageURLsForKnownFailures`, `GetAppsShowingLess`, `GetAppsShowingMore`, `GetEventsCountLastTime`, `GetJustChangedPriorityAppID`, `GetLibraryHomeBestEventsForUser`, `GetTakeOverEvents`, `GetUserAppPrioritySetting`, `GetWasJustChangedPriorityLower`, `GetWhatsNewEvents`, `ImageFailureCallback`, `Init`, `LowerAppPriorityForApp`, `OnNetworkOrVisibilityStateChanged`, `RaiseAppPriorityForApp`, `RemoveEvent`, `ResetDoNotShowList`, `ResetUserAppPriorityForApp`, `ScheduleEventsLoad`, `ScheduleUpdateBestEventsForUser`, `SetEventsLoaded`, `TrackEventClickedByUser`, `TrackEventShownToUser`, `TrackEventShownToUserByGID`, `UpdateBestEventsForCurrentUser`
|
|
115
|
+
|
|
116
|
+
**State:** `m_CMInterface`, `m_TimeEventsLastLoaded`, `m_TimeoutInitialLoad`, `m_TimeoutJustChangedPriority`, `m_bConnectedToSteam`, `m_bEventsLoaded`, `m_bInitialLoadPending`, `m_bLastPriorityChangeWasLower`, `m_bNoMoreOrLessDataFetched`, `m_iGetBestEventsForUserErrorBackoff`, `m_mapAppEventPriorities`, `m_mapFailedImagesThisSession`, `m_nAppIDJustChangedPriority`, `m_nEventsReturnedLastTime`, `m_nLastConnectionToSteam`, `m_rgEventsHiddenLocally`, `m_schScheduledUpdateBestEventsForUser`, `m_vecAppsShowingLess`, `m_vecAppsShowingMore`, `m_vecHomeBestEventsForUser`, `m_vecHomeTakeOverEventsForUser`
|
|
117
|
+
|
|
118
|
+
## `g_EventCalendarTrackingStore`
|
|
119
|
+
|
|
120
|
+
**Methods:** `GetTimeSpentOnPageS`, `InitBrowserID`, `RecordAppInteractionEvent`, `RecordFilterChangeEvent`, `RecordViewedEvent`, `SendExperimentEventToSteam`
|
|
121
|
+
|
|
122
|
+
**State:** `m_nFutureViewableEvents`, `m_nFutureViewedIndex`, `m_nLastRecordedFilter`, `m_nPastViewedDays`, `m_nPastViewedIndex`, `m_sBrowserID`, `m_scheduledFilterChange`, `m_scheduledFutureStats`, `m_scheduledPastStats`
|
|
123
|
+
|
|
124
|
+
## `g_CreatorHomeStore`
|
|
125
|
+
|
|
126
|
+
**Methods:** `BHasCreatorHomeLoaded`, `GetCreatorHome`, `GetCreatorHomeByID`, `GetCreatorHomeListForAppIncludeHidden`, `GetServiceTransport`, `InternalCreatorHome`, `LazyInit`, `LoadCreatorHome`, `LoadCreatorHomeListForAppIncludeHiddden`, `SearchCreatorHomeStore`, `ValidateStoreDefault`, `ValidateStoreDefaultAppList`
|
|
127
|
+
|
|
128
|
+
**State:** `m_bLoadedFromConfig`, `m_mapAppToCreatorIDList`, `m_mapClanToCreatorHome`, `m_serviceTransport`
|
|
129
|
+
|
|
130
|
+
## `g_CreatorHomeListInfoStore`
|
|
131
|
+
|
|
132
|
+
**Methods:** `GetListSubtitle`, `GetListTitle`, `GetListtileImage`, `LazyInit`, `ValidateCreatorHomeTitles`
|
|
133
|
+
|
|
134
|
+
**State:** `m_bLoadedFromConfig`, `m_mapListInfo`
|
|
135
|
+
|
|
136
|
+
## `g_EventCalendarDevFeatures`
|
|
137
|
+
|
|
138
|
+
**Methods:** `BHasTimeOverride`, `GetTimeNowWithOverride`, `GetTimeNowWithOverrideAsDate`, `ParseDevOverrides`
|
|
139
|
+
|
|
140
|
+
**State:** `bIncludeCurators`, `bIncludeFeaturedAsGameSource`, `bRequireAllEventsLoadedInTimeBlock`, `nOverrideDateNow`
|
|
141
|
+
|
|
142
|
+
## `g_FriendsUIApp`
|
|
143
|
+
|
|
144
|
+
**Methods:** `AddPopupManagerShutdownCallback`, `BIsValidBrowserContext`, `BPlayChatRoomNotificationSound`, `BShowChatRoomNotification`, `BShowDirectChatNotification`, `BShowIncomingChatMessages`, `CreateChatPopup`, `CreateNewTabFromUniqueID`, `GetChatRoomBBCodeParser`, `GetChatRoomEffectSettings`, `GetCurrentUserStatusInterface`, `GetDefaultBrowserContext`, `GetFriendChatBBCodeParser`, `GetLocalMidnightInRTime32`, `GetNotificationBBCodeParser`, `GetServerRTime32`, `GetServerTimeMS`, `GetStartupTime`, `GetVoiceInterface`, `Init`, `InitAdjustClockDriftFromServer`, `InitInternal`, `IsDesktopUIActive`, `IsGamepadUIActive`, `IsLoadedInClientSharedJSContext`, `OnFriendsListClosed`, `OnReadyToRender`, `OnVoiceChatActiveStateChange`, `OnWindowBecameVisible`, `OpenURLInBrowser`, `RTime32ToDate`, `Reconnect`, `RemoteClientInviteResult`, `RemoteClientLaunchFailed`, `RemoteClientStarted`, `RemotePlayGroupCreated`, `SetDefaultPopupContext`, `SetEmoticonTrackerCallback`, `SetReadyToRender`, `SetStickerTrackerCallback`, `ShowAlert`, `ShowCloseActiveVoiceConfirmation`, `ShowFriendChatDialog`, `ShowPopupFriendsList`, `ShowPopupFriendsListAtStartup`, `SignOutOfFriends`, `UpdatePersonaState`
|
|
145
|
+
|
|
146
|
+
**`m_exportsCurrentUserStatus`** — `GetPersonaState`, `GetUserDoNotDisturb`, `SetUserAway`, `SetUserDoNotDisturb`, `SetUserInvisible`, `SetUserOffline`, `SetUserOnline`
|
|
147
|
+
|
|
148
|
+
**`m_exportsVoiceInterface`** — `ConvertGainValueToSliderValue`, `ConvertSliderToGainValue`, `EndLocalMicTest`, `EndVoiceChat`, `GetMaxInputOutputGain`, `GetPushToMuteEnabled`, `GetPushToTalkEnabled`, `GetPushToTalkHotKeyDisplayString`, `GetPushToTalkOrMuteSoundsEnabled`, `GetSelectedMic`, `GetSelectedOutputDevice`, `GetUseAutoGainControl`, `GetUseEchoCancellation`, `GetUseNoiseCancellation`, `GetUseNoiseGateLevel`, `GetUseSteamAudioSpatialization`, `GetVoiceInputGain`, `GetVoiceLogs`, `GetVoiceOutputGain`, `InitiateLocalMicTest`, `IsAnyVoiceActive`, `IsLocalMicTestActive`, `IsMicMuted`, `IsOutputMuted`, `RefreshPushToTalkKeySettings`, `RegisterForCurrentUserVoiceLevel`, `RegisterForPendingOneOnOneVoiceChatRequests`, `SetPushToMuteEnabled`, `SetPushToTalkEnabled`, `SetPushToTalkOrMuteSoundsEnabled`, `SetSelectedMic`, `SetSelectedOutput`, `SetUseAutoGainControl`, `SetUseEchoCancellation`, `SetUseNoiseCancellation`, `SetUseNoiseGateLevel`, `SetUseSteamAudioSpatialization`, `SetVoiceInputGain`, `SetVoiceOutputGain`, `ToggleMicMuting`, `ToggleOutputMuting`
|
|
149
|
+
|
|
150
|
+
**State:** `AppInfoStore`, `AudioPlaybackManager`, `BroadcastStore`, `CMInterface`, `ChatStore`, `EconomyStore`, `FriendStore`, `GroupMemberStore`, `IdleTracker`, `NotificationManager`, `ParentalStore`, `RemotePlayStore`, `SettingsStore`, `Storage`, `UIStore`, `UserStore`, `VRPopupManager`, `VoiceStore`, `m_AppInfoStore`, `m_AudioPlaybackManager`, `m_BroadcastStore`, `m_CMInterface`, `m_ChatRoomBBCodeParser`, `m_ChatStore`, `m_DesktopApp`, `m_EconomyStore`, `m_FriendChatBBCodeParser`, `m_FriendStore`, `m_GroupMemberStore`, `m_IdleTracker`, `m_NotificationBBCodeParser`, `m_NotificationManager`, `m_ParentalStore`, `m_RemotePlayStore`, `m_SettingsStore`, `m_Storage`, `m_UIStore`, `m_UserStore`, `m_VoiceChatStore`, `m_bLoadedInClientSharedJSContext`, `m_bReadyToRender`, `m_bShuttingDown`, `ready_to_render`
|
|
151
|
+
|
|
152
|
+
## `__FriendsUIBrowserContext`
|
|
153
|
+
|
|
154
|
+
**State:** `m_eUIMode`, `m_nBrowserID`, `m_unPID`
|
|
155
|
+
|