I'm writing a TeamCity plugin, and it'd be really useful if I could call a method on the agent-side part of my plugin from the server-side.
I realise that I could just add a new build configuration and then add it to the queue to essentially get this to happen, but obviously this won't work if the user is running professional edition and is already at the 20 build configuration limit.
Similarly, I could create a TCP listening socket during agent-side plugin startup and connect to it from the server-side plugin, but again, this obviously won't work if the user has configured a firewall to only allow TeamCity's TCP connection through and nothing else.
The best option I can think of so far, is to poll from the agent-side plugin to a server-side JSP, although obviously this incurs all the overheads of polling repeatedly.
I want a more robust way than the above if possible.
Thanks in advance!