How to automatically mark Steam notifications as read?

I'm sure that this is possible as a "trading card idler" program ArchiSteamFarm can mark item notifications as read (I don't know how the feature works when you're playing a game instead of "idling"):

DismissInventoryNotifications - bool type with default value of false. Every card drop triggers inventory notification - Steam notification telling you that you received new items. This can get annoying pretty fast, and serves little to no purpose, therefore ASF offers dismissing those notifications automatically. When you enable this option, ASF will automatically dismiss all notifications related to new items being received - this also includes items you obtained through trading and other ways. Of course, this option affects only inventory notifications, so all other notification types, e.g. profile comments notifications, will stay intact.

Other notification categories on Steam:

  • comments
  • chat
  • invites
  • gifts

Currently Steam doesn't offer an option to disable notifications globally. It is always unclear whether I've receive a message from a friend or a trading card drop worth of 0.01$.

notification icon


Solution 1:

ASF manages this because the author built that feature into it. It listens for notification events from the Steam server itself the same as the client does when it's connected. When it gets a notification it checks if it's for a card drop, and "opens" it or otherwise does something to tell Steam the user has seen that notification.

The closest thing I know of that can easily be done is use a custom skin to keep the notification bubbles from popping up by limiting them to 0 seconds and a maximum of 0 notifications in the stack at a time.

Solution 2:

The aforementioned ASF can be run in paused state, persistently on the background and set to start when you launch your computer:

I don't want ASF to farm any games by default, yet I want to use extra ASF features. Is this possible?

Yes, you can set Paused bot config property to true in order to launch ASF with paused cards farming module, then you can make use of extra ASF features, such as GamesPlayedWhileIdle.

Then add DismissInventoryNotifications (8) to your bot configuration file. RejectInvalidFriendInvites (1) automatically rejects all friend invites from "non-bot" accounts (i.e. all by default). You can use both features by setting BotBehaviour to 9; a basic ASF config for clarification:

{
  "Enabled": true,
  "IdleRefundableGames": false,
  "BotBehaviour": 9,
  "OnlineStatus": 0,
  "SteamLogin": "user",
  "SteamPassword": "password"
}