SignalSmartsite command line utility
SignalSmartsite is a command line utility that gives sytem administrators access to some features of a running Smartsite instance from the command line.
Typical use cases for this command line tool is starting a scheduling job or rendering an item (that performs certain business logic using Sxml) using the Window Scheduled Tasks which is available from the Windows Control Panel. You can add a new Scheduled Task and have it execute at a certain moment in time.
SignalSmartsite allows you to perform the following operations:
|/clearcache:[disk|memory|all]||Clears the memory or disk cache.|
|/killjob:[name]||Kills the scheduled job with the given name.|
|/nologo||Displays no logo. Mostly used when using the render or sysinfo option.|
|/render:[nr|code|url]||Renders the item with the item number, item code or url.|
|/restart||Restarts the publication engine by unloading the Application Domain.|
|/startjob:[name]||Starts the scheduled job with that name.|
|/stopjob:[name]||Stops the running scheduled job with that name.|
Returns system information from a running Publication server in either html or xml format.
|/endpoint:[name]||Uses the endpoint in SignalSmartsite.exe.config with the given name.|
|/webconfig:[path]||Uses the Web.Config file in the given path to search for the InteropService endpoint. (May fail for complex configurations.)|
|/user:[loginname]||Performs the render operation on behalf of this user.|
|/password:[password]||The password of the user.|
|/integrated||Use integrated security. Cannot be used in combination with /user and /password.|
The difference between stopping a scheduled job and killing a scheduled job is that stop kindly requests the background process to stop its processing. The job make needs some time to respond to this request or it may not respond at all if this background process hangs. Killing a job instantly stop the running process without notifying the background process. This allows you to stop hanging background processes.
By default, SignalSmartsite will check if it is located in the www\bin folder. If so, it will use the configuration of the Web.config file in the parent folder to connect to Smartsite. SignalSmartsite can also use the WCF settings in its own configuration file to connect with Smartsite. A typical SignalSmartsite.exe.config file looks like this:
<?xml version="1.0" encoding="utf-8" ?> <configuration> <system.serviceModel> <bindings> <netNamedPipeBinding> <binding name="InteropServiceBinding"> <readerQuotas maxStringContentLength="5000000" /> </binding> </netNamedPipeBinding> </bindings> <client> <endpoint address="net.pipe://localhost/InteropService" binding="netNamedPipeBinding" bindingConfiguration="InteropServiceBinding" contract="Smartsite.InteropServices.InteropService" name="localhost" /> </client> </system.serviceModel> </configuration>
Note that the endpoint address must match the endpoint address of the Interop webservice in the web.config file.