I'd be interested, too ...
For TeamViewer, you may be able to do the following:
Make CustomerID.tvc files for each connection -- or usernames -- but at least something that you can have a relationship between the ticket customer and the connection icon. This assumes that you know this information in advance.
The .tvc file is comprised of three lines (four if you dare include the password in plain text) (999999999 represents your client's targetID):
[TeamViewer Configuration]
targetID=999999999
action=RemoteSupport
password=my$ecret
Please note that if you do put the password in plain text, it's a bad idea, but there is a possibility to mitigate this problem ever so slightly by whitelisting the "valid" partnerIDs in the TeamViewer Host options. Also, if there's any access to the outside world that you're doing this and they can guess your customerIDs, and uri to the tvc file, bad guys might be able to connect using your targetIDs.
Then, you'll want to make sure this file is of type octet/streaming, either in apache config or .htaccess:
AddType application/octet-stream tvc
This forces download/save or run instead of text view and your TeamViewer app will attempt to connect to this connection.
But, let's say you don't have that information. You can still (as I do) have the signatures include a link to remote support/webex/
join.me applet or link that is initiated on the customer side.
Explicitly: I have a customized TeamViewer QuickSupport hosted on my company's domain. Every communication I have with the customer lets the customer know that link. "but why?" Why not? it doesn't cost any extra for the customer to download it or run it and it's pretty useless to the customer to have only half a solution. Meanwhile, it helps the customer be prepared for my connection to their machine. She can reply to the ticket "I have the link open and these are the connection credentials..."