Workspace Environment Management

XML printer list configuration

Workspace Environment Management includes the ability to configure user printers via an XML printer list file.

After you have created an XML printer list file, create a printer action in the administration console with an Action Type option set to Use Device Mapping Printers File.

Note:

Only printers that do not require specific Windows credentials are supported.

XML printer list file structure

The XML file is encoded in UTF-8, and has the following basic XML structure:

<?xml version="1.0" encoding="UTF-8"?>

    <ArrayOfSerializableKeyValuePairOfStringListOfVUEMUserAssignedPrinter xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    ...
    </ArrayOfSerializableKeyValuePairOfStringListOfVUEMUserAssignedPrinter>
<!--NeedCopy-->

Every client and associated device is represented by an object of the following type:

SerializableKeyValuePair<string, List<VUEMUserAssignedPrinter>>>

Each device is represented like this:

    <SerializableKeyValuePairOfStringListOfVUEMUserAssignedPrinter>
        <Key>DEVICE1</Key>
        <Value>
            <VUEMUserAssignedPrinter>
               ...
            </VUEMUserAssignedPrinter>
        </Value>
    </SerializableKeyValuePairOfStringListOfVUEMUserAssignedPrinter>

<!--NeedCopy-->

Note:

When the agent is installed on a single-session or multi-session OS:

  • Client refers to a client device connecting to the agent host.
  • Computer and Client Remote refer to the agent host.

Each block of devices must be matched to a specific client or computer name. The <Key> tag contains the relevant name. The <Value> tag contains a list of VUEMUserAssignedPrinter objects matching the printers assigned to the specified client.

    <?xml version="1.0" encoding="utf-8"?>

       <ArrayOfSerializableKeyValuePairOfStringListOfVUEMUserAssignedPrinter xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
        <SerializableKeyValuePairOfStringListOfVUEMUserAssignedPrinter>
            <Key>DEVICE1</Key>
            <Value>
                <VUEMUserAssignedPrinter>
             ...
                </VUEMUserAssignedPrinter>
            </Value>
        </SerializableKeyValuePairOfStringListOfVUEMUserAssignedPrinter>
       </ArrayOfSerializableKeyValuePairOfStringListOfVUEMUserAssignedPrinter>
<!--NeedCopy-->

Note:

To ensure that the WEM agent can access the XML printer list file, the XML printer list file must be stored on your local machine or on a shared network resource.

VUEMUserAssignedPrinter tag syntax

Each configured printer must be defined in a <VUEMUserAssignedPrinter> tag, using the following attributes:

<IdPrinter>. This is the Workspace Environment Management printer ID for the configured printer. Each printer must have a different ID. Note The XML Printer List action configured in the Workspace Environment Management Administration Console is also a printer action with its own ID which must be different from the ID of printers individually configured in the XML list.

<IdSite>. Contains the site ID for the relevant Workspace Environment Management site, which must match the ID of an existing site.

<State>. Specifies the state of the printer where 1 is active and 0 is disabled.

<ActionType>. Must always be 0.

<UseExtCredentials>. Must be 0. The use of specific Windows credentials is not currently supported.

<isDefault>. If 1, the printer is the default Windows printer. If 0, it is not configured as default.

<IdFilterRule>. Must always be 1.

<RevisionId>. Must always be 1. If printer properties are further modified, increment this value by 1 to notify the Agent Host and ensure that the printer action is re-processed.

<Name>. This is the printer name as perceived by the Workspace Environment Management Agent Host. This field cannot be left blank.

<Description>. This is the printer description as perceived by the Workspace Environment Management Agent Host. This field can be blank.

<DisplayName>. This is unused and must be left blank.

<TargetPath>. This path is the UNC path to the printer.

<ExtLogin>. Contains the name of the Windows account used when specifying Windows credentials for connection. [Currently unsupported. Leave this field blank].

<ExtPassword>. Contains the password for the Windows account used when specifying Windows credentials for connection. [Currently unsupported. Leave this field blank].

<Reserved01>. This contains advanced settings. Do not alter it in any way.

&gt;&lt;VUEMActionAdvancedOption&gt;&lt;Name&gt;SelfHealingEnabled&lt;/Name&gt;&lt;Value&gt;0&lt;/Value&gt;&lt;/VUEMActionAdvancedOption
<!--NeedCopy-->

To activate self-healing for a given printer object, simply copy and paste the above contents, changing the highlight 0 value to 1.

Example printer object

The following example assigns two active printers on the client or computer DEVICE1:

  • HP LaserJet 2200 Series on UNC path \\server.example.net\HP LaserJet 2200 Series (default printer)
  • Canon C5531i Series printer on UNC path \\server.example.net\Canon C5531i Series

It also assigns one active printer on the client or computer DEVICE2:

  • HP LaserJet 2200 Series on UNC path \\server.example.net\HP LaserJet 2200 Series
    <?xml version="1.0" encoding="utf-8"?>
      <ArrayOfSerializableKeyValuePairOfStringListOfVUEMUserAssignedPrinter xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
        <SerializableKeyValuePairOfStringListOfVUEMUserAssignedPrinter>
            <Key>DEVICE1</Key>
            <Value>
                <VUEMUserAssignedPrinter>
                    <IdPrinter>1</IdPrinter>
                    <IdSite>1</IdSite>
                    <State>1</State>
                    <ActionType>0</ActionType>
                    <UseExtCredentials>0</UseExtCredentials>
                    <isDefault>1</isDefault>
                    <IdFilterRule>1</IdFilterRule>
                    <RevisionId>1</RevisionId>
                    <Name>HP LaserJet 2200 Series</Name>
                    <Description />
                    <DisplayName />
                    <TargetPath>\\server.example.net\HP LaserJet 2200 Series</TargetPath>
                    <ExtLogin />
                    <ExtPassword />
                    <Reserved01>&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;ArrayOfVUEMActionAdvancedOption xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;&lt;VUEMActionAdvancedOption&gt;&lt;Name&gt;SelfHealingEnabled&lt;/Name&gt;&lt;Value&gt;0&lt;/Value&gt;&lt;/VUEMActionAdvancedOption&gt;&lt;/ArrayOfVUEMActionAdvancedOption&gt;</Reserved01>
                </VUEMUserAssignedPrinter>
            </Value>
          <Value>
                <VUEMUserAssignedPrinter>
                    <IdPrinter>2</IdPrinter>
                    <IdSite>1</IdSite>
                    <State>1</State>
                    <ActionType>0</ActionType>
                    <UseExtCredentials>0</UseExtCredentials>
                    <isDefault>0</isDefault>
                    <IdFilterRule>1</IdFilterRule>
                    <RevisionId>1</RevisionId>
                    <Name>Canon C5531i Series</Name>
                    <Description />
                    <DisplayName />
                    <TargetPath>\\server.example.net\Canon C5531i Series</TargetPath>
                    <ExtLogin />
                    <ExtPassword />
                    <Reserved01>&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;ArrayOfVUEMActionAdvancedOption xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;&lt;VUEMActionAdvancedOption&gt;&lt;Name&gt;SelfHealingEnabled&lt;/Name&gt;&lt;Value&gt;0&lt;/Value&gt;&lt;/VUEMActionAdvancedOption&gt;&lt;/ArrayOfVUEMActionAdvancedOption&gt;</Reserved01>
                </VUEMUserAssignedPrinter>
            </Value></SerializableKeyValuePairOfStringListOfVUEMUserAssignedPrinter>
          <SerializableKeyValuePairOfStringListOfVUEMUserAssignedPrinter>
            <Key>DEVICE2</Key>
            <Value>
                <VUEMUserAssignedPrinter>
                    <IdPrinter>1</IdPrinter>
                    <IdSite>1</IdSite>
                    <State>1</State>
                    <ActionType>0</ActionType>
                    <UseExtCredentials>0</UseExtCredentials>
                    <isDefault>0</isDefault>
                    <IdFilterRule>1</IdFilterRule>
                    <RevisionId>1</RevisionId>
                    <Name>HP LaserJet 2200 Series</Name>
                    <Description />
                    <DisplayName />
                    <TargetPath>\\server.example.net\HP LaserJet 2200 Series</TargetPath>
                    <ExtLogin />
                    <ExtPassword />
                    <Reserved01>&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;ArrayOfVUEMActionAdvancedOption xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;&lt;VUEMActionAdvancedOption&gt;&lt;Name&gt;SelfHealingEnabled&lt;/Name&gt;&lt;Value&gt;0&lt;/Value&gt;&lt;/VUEMActionAdvancedOption&gt;&lt;/ArrayOfVUEMActionAdvancedOption&gt;</Reserved01>
                </VUEMUserAssignedPrinter>
            </Value></SerializableKeyValuePairOfStringListOfVUEMUserAssignedPrinter>
       </ArrayOfSerializableKeyValuePairOfStringListOfVUEMUserAssignedPrinter>
<!--NeedCopy-->
XML printer list configuration