Skype for Business, Lync, and in the dark ages Office Communicator even had it. If you left IM open and your PC unlocked but you weren't using it, after a user set delay your status would turn to idle. You can't set the timeout in Teams anymore, IIRC.
Does Slack not have this? I'm 99% sure Zoom does as well.