The following code uses Stingray's Control API to list all the running virtual servers on a cluster. The code is written in PHP 5.
#!/usr/bin/php5 <? $conn = new SoapClient( "VirtualServer.wsdl", array( 'login' => "username", 'password' => "password" )); $names = $conn->getVirtualServerNames(); $enabled = $conn->getEnabled( $names ); for ($i=0; $i < count( $names ); $i++) { if ( $enabled[$i] ) print "$names[$i]\n"; } ?>
Run the PHP script as follows
$ ./listVS.php
Main website
Mail servers
Test site
You may need to enable the SOAP extensions in your php.ini file. Like Python, the PHP Soap toolkit expects to find the location of the SOAP server in the WSDL file, and does not provide any means to override it. However, you can specify the login details from your application, so these do not need to be embedded in the WSDL:
<service name="VirtualServer"> <port name="VirtualServerPort" binding="zeusns:VirtualServerBinding"> <soap:address location="https://host:9090/soap" /> </port> </service>