Detect remote desktop connections
It would be nice if ManicTime could detect that a computer is controlled through a remote desktop connection such as through TeamViewer, and give the option to not track that time as active.
I have ManicTime installed on both my home and office computer, and sometimes need to do something on my office computer remotely when I'm at home. In effect, this time gets counted as doubly active, because my home ManicTime client will detect that I'm working in the TeamViewer application, while the office ManicTime client thinks I'm actually on the computer there and working in the local applications. (It also asks me about my away time when I log in, which I don't really want it to do unless I'm actually back in the office).
If given the option, I'd choose to not have ManicTime track activity when the computer it's running on is controlled remotely.
David Matten commented
Granted, the requestor is essentially asking for a user option, as not everyone would want it to work this way (and you'd need a way to determine what is a "remote" connection - a list of programs, etc), but I agree with Martin's comment. I don't think a feature to detect the manner of control of the current session is necessary, and is probably out of scope for the application itself. You could instead approach your need from the other end - excluding the activity of your local session based on tracking the use a remoting "client" app. This is much more straightforward, and doesn't require recoding of ManicTime, or for it to keep track of special treatment for every new terminal program that is created (RDP, VNC, Citrix, TeamViewer, ...)
From my experience dealing with this in the ordinary course of my own work, I let both instances record the activity as they will, then handle the accounting with Auto Tagging (via CustomTitle parsing).
I marked any activity using a remote access software (RDP, Citrix, et al) as "Remote" in my local terminal's timeline. Then the remote machine could record the detailed work that I was performing within ManicTime. When generating any report, I just excluded the "Remote" tag.
There were cases where I did not have the ability to run ManicTime on a remote machine, so those sessions (as distinguished by CustomTitle) were AutoTagged differently, so I could account for the time in the local session.
There are variants of this depending on your use case, of course.
Add plugin for TeamViewer Manager Data Migration
Martin Rudat commented
I think the most accurate thing to do is to record both the remote desktop session and the remote machine, but only count activity on the remote machine when the remote desktop session is active.
This also has the benefit that you can re-process previously collected data to produce a more accurate result.