public IFuture<IClientMessage> InvokeOnConnection(IClientMessage request, ClientConnection connection,
bool bypassHeartbeat = false)
{
var clientInvocation = new ClientInvocation(request, connection);
InvokeInternal(clientInvocation, null, connection, bypassHeartbeat);
return clientInvocation.Future;
}