SmartMoverParams JobFile structure

This section describes the settings available for configuring a Relocation or Deployment job. Such jobs are supported in Nuix Enterprise Collection Center 7.4 and newer.

The root element for a Relocation or Deployment JobFile is a pair of <JobParameters>..</JobParameters> elements. The opening <JobParameters> tag appears just after the XML Declaration. This opening tag should include optional attributes for the XML namespace and schema, as follows:

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

<JobParameters

xmlns="-//nuix.com/2014/CollectorEngine"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="-//nuix.com/2014/CollectorEngine

./CollectorEngine.xsd">

<Impersonation/>

<WorkerParameters>

<SmartMoverParams>

<!-- various "child" elements go here:

</SmartMoverParams>

</WorkerParameters>

</JobParameters>

Within the <JobParameters> element, the <WorkerParameters> child element contains a <SmartMoverParams> child element, as described below.

SmartMoverParams element

<WorkerParameters>

<SmartMoverParams SourceId="1423" DestinationId="2806" VerboseLogging="No">

<!-- one <NetworkCredentials> element can go here --><!-- one or more <DataTransfer> elements go here -->

</SmartMoverParams>

</WorkerParameters>

The <SmartMoverParams> element contains two attributes:

The SourceId attribute specifies the ID number for the Source computer. This is typically specified via the New Collection Wizard within ECC Admin Console. Such computers are referred to as Staging Computers within Admin Console.

The DestinationId attribute specifies the ID number for the Destination computer. This is typically specified via the New Collection Wizard within ECC Admin Console.

It is possible for the SourceId and DestinationId to refer to the same computer, to copy or move files from one local path to another.

The VerboseLogging attribute specifies whether to perform verbose logging at the source computer and destination computer. Log files are written to a Log folder, which is located next to the folder holding the ECC Client executables (the Modules folder on Windows or the bin folder on Linux and macOS). Can be set to Yes or No (No is the default if no value is specified, i.e. verbose logging is disabled).

The SourcePort attribute specifies the TCP port number which the ECC Client will listen on for inbound connections from other ECC Clients. When unspecified, the ECC Client will listen on a randomly selected TCP port. The random port can be restricted to a specific range via the Computer Configuration associated with each ECC Client computer.

The DestinationPort attribute specifies the TCP port number which the ECC Client will utilize for outbound connections to other ECC Clients. When unspecified, the ECC Client will establish a new connection to another ECC Client using a randomly selected TCP port. The random port can be restricted to a specific range via the Computer Configuration associated with each ECC Client computer

Note: Software and hardware firewalls may need new rules configured to permit traffic through the SourcePort and DestinationPort, or through the range of TCP ports defined for random selection. For details see the topics Configuring ECC Client Computers and Configure Software and Hardware Firewalls in the ECC Administration Guide.

The <SmartMoverParams> element contains additional child elements which specify how files and folders will be relocated or deployed. These child elements are described below.

NetworkCredentials element

<WorkerParameters>

<SmartMoverParams SourceId="1423" DestinationId="2806">

<NetworkCredentials>

<!--One <Source> "child" element can go here -->

<!--One <Destination> "child" element can go here -->

</NetworkCredentials>

</SmartMoverParams>

<DataTransfer MaxRetries="3"/>

</WorkerParameters>

An optional element for specifying network share credentials, needed only when files or directories specified under the <DataTransfer> element are located on password-protected network shares.

The <NetworkCredentials> element contains a <Source> child element and/or a <Destination> child element, each of which can hold one or more sets of <Credentials> grandchild elements.

The actual <File> and <Directory> elements are specified under one or more <DataTransfer> <Source> elements, while the actual <Destination> is specified under the <DataTransfer> <Destination> element (each <DataTransfer> element is at the same level as this <NetworkCredentials> element).

Source element

<SmartMoverParams SourceId="1423" DestinationId="2806">

<NetworkCredentials>

<Source>

<!--One or more <Credentials> "child" elements go here -->

</Source>

</NetworkCredentials>

</SmartMoverParams>

The optional <Source> element under the <NetworkCredentials> element holds one or more <Credentials> child elements. Each <Credentials> child element specifies the network credentials needed for accessing a <DataTransfer> <Source> folder.

Destination element

<SmartMoverParams SourceId="1423" DestinationId="2806">

<NetworkCredentials>

<Destination>

<!--One <Credentials> "child" element goes here -->

</Destination>

</NetworkCredentials>

</SmartMoverParams>

The optional <Destination> element under the <NetworkCredentials> element holds a <Credentials> child element. The <Credentials> child element specifies the network credentials needed for accessing the <DataTransfer> <Destination> folder.

Credentials element

<SmartMoverParams SourceId="1423" DestinationId="2806">

<NetworkCredentials>

<Source> or <Destination>

<Credentials

LoginUser="Alice"

Password="G1sv4zz2#"

LoginDomain="MYCOMPANY">MyServer</Credentials>

</Source> or </Destination>

</NetworkCredentials>

</SmartMoverParams>

Each <Credentials> element specifies the hostname and login credentials for accessing a network share. This allows deploying files from a network share (via a Deploy job), or relocating collected files to a network share (via a Relocate job).

The text value contains the name of the network machine to connect to. The attributes contain account credentials for access to the machine over the network.

The UserName attribute specifies the user ID for accessing the network share.

The Password attribute specifies the password for accessing the network share.

The Domain attribute specifies the domain for accessing the network share on an Active Directory domain.

DataTransfer element

<SmartMoverParams>

<NetworkCredentials/>

<DataTransfer MaxRetries="3">

<!-- Various "child" elements go here -->

</DataTransfer>

</SmartMoverParams>

Each <DataTransfer> element specifies set of files or folders to copy or move. A <DataTransfer> element contains one <Source> child element and one <Destination> child element, as well as the following attribute:

The MaxRetries attribute specifies the number of times to retry copying or deleting a file or folder in the event an error or disconnection occurs.

Source element

<SmartMoverParams>

<DataTransfer MaxRetries="3">

<Source IsFolder="Yes" DeleteFiles="Yes" DeleteFolders="Yes">

<Directories/>

<Files/>

</Source>

</DataTransfer>

</SmartMoverParams>

Each <DataTransfer> element must contain a single <Source> child element. The <Source> element contains a <Directories> child element which specifies the folders to copy or move, or a <Files> child element to specify individual files to copy or move. Both the <Directories> and <Files> child elements may be present, but only one will be honored, depending on the value of the IsFolder attribute, described below.

The IsFolder attribute can be set to "Yes" or "No":

Yes

Copy or move the directories (folders) in the <Directories> child element, along with any files in these directories. Ignore the <Files> child element, if present.

No

Copy or move the files in the <Files> child element. Ignore the <Directories> child element, if present.

The DeleteFiles attribute specifies whether source files will be deleted after they are copied to the specified destination. This attribute can be set to "Yes" or "No":

Yes

Delete the files in the specified <Directories> or <Files> after copying them to the destination. The result: the specified files are moved to the destination.

If a specified <Directory> entry contains subfolders, and the RecursiveCrawl attribute in the <Directory> is set to Yes, then the files within these subfolders will be copied to the destination and deleted from the source computer's <Directory> subfolders as well.

No

Copy files within the specified <Directories> or <Files> from the source to the destination. The original files will remain once they are copied to the destination.

The DeleteFolders attribute specifies whether source directories will be deleted after they are copied to the specified destination. Both this attribute and the DeleteFiles attribute must be "Yes" to delete the original folders. This attribute can be set to "Yes" or "No":

Yes

After copying files or directories to the destination, and then after deleting the original files, also delete the source directory. But only if the source directory has been fully emptied by the Relocate job. The result: each specified source directory is moved to the destination.

Warning: Source directories can be specified by one or more <Directory> elements, or by the paths contained within one or more <File> elements. These elements are described, below.

Note: A directory cannot be deleted unless it is empty. If the specified directory contains files, then both DeleteFolders and DeleteFiles must be set to "Yes" for the source directory to be emptied and deleted.

If a specified <Directory> contains sub-folders, the RecursiveCrawl attribute in the <Directory> element must be set to Yes to delete the <Directory> and its sub-folders. If the <Directory> or its sub-folders contain files, then RecursiveCrawl, DeleteFolders and DeleteFiles must all be set to "Yes" for the <Directory> to be deleted.

No

Leave each specified source directory intact after copying it to the destination.

Directories – a child element of Source

<SmartMoverParams>

<DataTransfer MaxRetries="3">

<Source IsFolder="Yes" DeleteFiles="Yes" DeleteFolders="Yes">

<Directories/>

<!—One or more <Directory> elements go here -->

<Directories/>

</Source>

</DataTransfer>

</SmartMoverParams>

The <Directories> element contains one or more <Directory> child elements which specify the individual directories to copy or move. The value of the IsFolder attribute in the parent <Source> element must be "Yes" for the <Directories> element to be honored.

Directory – a child element of Directories

<SmartMoverParams>

<DataTransfer MaxRetries="3">

<Source IsFolder="Yes" DeleteFiles="Yes" DeleteFolders="Yes">

<Directories>

<Directory RecursiveCrawl="Yes">C:\DataFiles

</Directory>

</Directories>

</Source>

</DataTransfer>

</SmartMoverParams>

Each <Directory> child element specifies a directory to copy or move.

Note: UNC paths and mapped drives are not supported. Only local paths on the source computer can be specified.

If two or more source directories have the same name, their contents will be copied to the destination, resulting in a single merged directory.

The value of the IsFolder attribute in the parent <Source> element must be "Yes" for the <Directories> element and <Directory> child elements to be honored.

The RecursiveCrawl attribute specifies whether to process items in sub-directories. This attribute can be set to "Yes" or "No":

Yes

Items in sub-directories are also processed.

No

Items in sub-directories are not processed.

For example, copying C:\Users\George\Documents from the source computer to D:\Data\new on the destination computer will result in a folder called D:\Data\new\Documents. If a <Directory> contains sub-folders and its RecursiveCrawl attribute is set to Yes, then the <Directory> will be copied to this <Destination> along with its entire sub-folder structure.

Files element

<SmartMoverParams>

<DataTransfer MaxRetries="3">

<Source IsFolder="Yes" DeleteFiles="Yes" DeleteFolders="Yes">

<Files>

<File>C:\Data\Docs\report.docx</File>

</Files>

</Source>

</DataTransfer>

</SmartMoverParams>

The <Files> element contains one or more <File> child elements which specify individual files to copy.

File element

<SmartMoverParams>

<DataTransfer MaxRetries="3">

<Source IsFolder="Yes" DeleteFiles="Yes" DeleteFolders="Yes">

<Files>

<File>C:\Data\Docs\report.docx</File>

</Files>

</Source>

</DataTransfer>

</SmartMoverParams>

The value of each <File> element specifies the full path to an individual file to copy or move. Any files specified by a <File> element will be placed directly in the <Destination>. The original paths of these source files are not maintained in the destination path.

The <File> element's NewName attribute, if present, specifies the new name to give the file after it is moved. Only the file at the destination is given the new name. The value of the NewName attribute specifies a filename only, with an optional filename extension. No folder or path names are permitted.

Note: UNC paths and mapped drives are not supported. Only local paths on the source computer can be specified.

If two or more source files have the same filename, only the last such file copied will remain in the destination path. The earlier files will be overwritten by subsequent files having the same name.

The value of the IsFolder attribute in the parent <Source> element must be "No" for the <Files> element and <File> child elements to be honored.

Destination element

<SmartMoverParams>

<DataTransfer MaxRetries="3">

<Source/>

<Destination>D:\local\folder\on\destination\comp>

</DataTransfer>

</SmartMoverParams>

Specifies the full path to the destination folder where files and/or folders will be copied or moved to.

Note: UNC paths and mapped drives are not supported. The destination folder must be a local path on the Destination computer (the computer specified by the <SmartMoverParams> element's DestinationId attribute).