Hello-
I, too, do not know of a list with info about active connections, but there is at least a property that keeps the _count_ of active connections. The "Runtime.NumMksConnections" property of the .Net View object of a VM holds that count:
PS C:\> Get-VM myVM | Get-View -Property Name,Runtime.NumMksConnections | select Name,@{n="NumConn"; e={$_.Runtime.NumMksConnections}}
Name NumConn
---- -------
myVM 1
So, you could check that count, pmassey, and if it is "-eq 0", then initiate the connection...