Looking to see for a couple of solutions listed below:
1. Accessing a machine behind a firewall
2. Accessing a machine on another company/private intranet
3. Accessing a machine remotely without any actions needed to be taken by users on the remote machine's side.
You should take a look on http://software.intel.com/en-us/articles/fast-call-for-help-overview/ CIRA (Client Initiate Remote Assistance) that I believe will address your need.