Universal Messaging 10.1 | Concepts | Deployment | Language Deployment Tips | Silverlight Application Deployment
 
Silverlight Application Deployment
Silverlight and the Universal Messaging Policy File Server
Universal Messaging has a built in socket policy server for Silverlight applications that require tcp socket or ssl socket (NSP or NSPS) protocol.
Universal Messaging's Silverlight API enables clients to specify the communication protocol as nsp (ie tcp sockets). This means that when a Silverlight application is loaded and tries to make a socket request, Silverlight will first of all attempt to make a policy file request on port 943 to the host the original socket request was being made to. For example, if i specify an RNAME of nsp://myhost.mydomain.com:4502, when the Universal Messaging Silverlight API attempts to construct a socket on port 4502, it will first of all make a socket connect request to myhost.mydomain.com:943, and issue a policy file request.
With this in mind, Universal Messaging enables you to run a policy file server on a socket interface that will automatically handle these requests. You would first need to create a socket interface on port 943, and select the "Enable Policy Server" check box under the Basic tab for an nsp interface. Once this is setup, you will also need a clientaccesspolicy.xml file in the /install/server/name/plugins/htdocs directory of the server. This policy file might contain something like the following:

<?xml version="1.0" encoding="utf-8"?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from http-request-headers="*">
<domain uri="*"/>
</allow-from>
<grant-to>
<resource path="/" include-subpaths="true"/>
<socket-resource port='4502-4534' protocol='tcp' />
</grant-to>
</policy>
</cross-domain-access>
</access-policy>

For further information on socket policies see Microsoft's Silverlight Policy Documentation at http://msdn.microsoft.com/en-us/library/cc645032%28v=vs.95%29.aspx.

Copyright © 2013-2017 | Software AG, Darmstadt, Germany and/or Software AG USA, Inc., Reston, VA, USA, and/or its subsidiaries and/or its affiliates and/or their licensors.
Innovation Release