diff --git a/Updater/Program.cs b/Updater/Program.cs index 3ef41d7..488e21d 100644 --- a/Updater/Program.cs +++ b/Updater/Program.cs @@ -96,27 +96,35 @@ namespace Updater } AppendArg(UpdatedArg); - TrackProcess("FanControl"); - TrackProcess("PowerControl"); - TrackProcess("PerformanceOverlay"); - TrackProcess("SteamController"); + + List usedTools = new List(); + TrackProcess("FanControl", usedTools); + TrackProcess("PowerControl", usedTools); + TrackProcess("PerformanceOverlay", usedTools); + TrackProcess("SteamController", usedTools); var updateURL = String.Format( - "https://steam-deck-tools.ayufan.dev/docs/updates/{0}_{1}.xml?version={2}&machineID={3}&env={4}", + "https://steam-deck-tools.ayufan.dev/docs/updates/{0}_{1}.xml?version={2}&id={3}&env={4}&apps={5}", Instance.IsDEBUG ? "debug" : "release", IsUsingInstaller ? "setup" : "zip", HttpUtility.UrlEncode(Instance.ProductVersionWithSha), HttpUtility.UrlEncode(Instance.ID), - Instance.IsProductionBuild ? "prod" : "dev" + Instance.IsProductionBuild ? "prod" : "dev", + HttpUtility.UrlEncode(String.Join(",", usedTools)) ); AutoUpdater.Start(updateURL); } - private static void TrackProcess(String processFilerName) + private static bool TrackProcess(String processFilterName, List? usedTools = null) { - if (FindProcesses(processFilerName).Any()) - AppendArg(RunPrefix + processFilerName); + if (FindProcesses(processFilterName).Any()) + { + AppendArg(RunPrefix + processFilterName); + usedTools?.Add(processFilterName); + return true; + } + return false; } private static void KillApps() diff --git a/docs/privacy.md b/docs/privacy.md index 08e706d..824b93c 100644 --- a/docs/privacy.md +++ b/docs/privacy.md @@ -13,10 +13,11 @@ including, but not only: - Exception Stack Trace - Application Version - Type of installation -- Unique installation ID +- Installation ID -Additionally for statistic purposes the installation ID and Application Version might -be tracked as part of Update process to see active user-base vs version used. +Additionally for statistic purposes the installation ID, application version +and which SteamDeckTools apps are used might be tracked as part of Update +process to see active user-base vs version used. The installation ID is one time generated GUID that is persisted on the first start of an application.