Need to trigger Opalis policies remotely in a custom and user-friendly way? Here is the Opalis UI Generator!

Update : This tool is now at v1.1, see this post for the new version and the actual download : https://blogs.technet.com/b/yasc/archive/2010/11/28/opalis-ui-generator-v1-1.aspx

There are several ways to trigger Opalis workflows remotely, but some have challenges like user-friendliness and ease of use (Remote Trigger, Web Service) or the need to consider the “remoteness” nature of the policy trigger during design time (if Opalis is supposed to listen to database or file updates for example).

The goal of the Opalis UI Generator is to let an Opalis administrator browse graphically through all policies with a custom start activity, pick one of them, and generate one of these two files, or both:

- A XML template that can be used by the Remote Policy Launcher executable – also provided in this package. This single executable adapts its UI to the XML file generated by the Opalis UI Generator

- A Web page that can be used on an IIS server running ASP.NET. The web page is crafted for the chosen policy, also enabling its remote launch

Screenshot of the Opalis UI Generator

Screenshot of the Remote Policy Launcher UI (leveraging the XML file generated by the tool)

Screenshot of the Web page (also generated by the tool)

The remote launch itself is done using an URL call to the Opalis Operator Console, not yet using native Web Services calls. See the caveats and potential evolutions in the attached readme.

You might also wonder about the need to actually trigger those policies from a remote UI? While it is true that most custom start enabled policies would be triggered from other policies at run time, there are use cases for triggering policies from a UI:

- Provisioning scenarios for machines, etc : the corresponding web UI could be the basis for larger on-demand scenarios

- First level actions for operators working monitoring solutions

Enjoy, and let me know about any bug fixes or potential enhancements, I'll see what I can do if time permits :-)