Citrix App Layering PowerShell SDK (BETA)

This is a reversed engineered SDK that emulates the SOAP calls that AL uses to manage the appliance. Currently only supports version 4.11 or later. THIS USES UNSUPPORTED API CALLS. PLEASE USE WITH CAUTION.

Install and Update

Install Manually

Import-Module ".\ctxal-sdk.psm1"

Install PSGallery

Find-Module -name ctxal-sdk
Install-Module -Name ctxal-sdk -Scope CurrentUser

Update PSGallery

Find-Module -name ctxal-sdk
Update-Module -Name ctxal-sdk

``

Changelog

  • 06-01-2018 BETA release
  • 06-03-2018 Function for appliance details
  • 06-03-2018 Fix in Get-alvmname for message text
  • 06-04-2018 Get system info functions
  • 06-09-2018 Better response output and clarify examples
  • 06-20-2018 Get-ALImageComp function add
  • 10-05-2018 Add stop-alworkticket function
  • 10-18-2018 Add XenServer OS import option (now vcenter and xenserver)
  • 10-18-2018 More detail for Get-ALImageComp
  • 10-30-2018 Added functionality to export, view, create, check associations and remove icons
  • 11-08-2018 Added functionality to export and import layers to and from network shares
  • 11-10-2018 Cleaned up parameters and better get status returns
  • 12-29-2018 Added functionality for directory junctions
  • 01-22-2019 Added functionality to pull user information and assignments
  • 01-22-2019 Much better regex for Get-AlVMName (Thanks Bill Nickerson @wnickerson78)
  • 01-29-2019 Added ability to remove layer revisions (Thanks Siebrand Feenstra @Siebrandf)
  • 02-18-2019 Added better functionality to see app assignments (See ExamplesGetUserAppAssignments)
  • 02-21-2019 vCenter Connector commands
  • 04-01-2019 Set admin password functionality. Get local accounts
  • 04-11-2019 Get connector detail and set connector credentials
Commands

This page contains details on **** commands.

Add-ALAppAssignment

NAME
Add-ALAppAssignment
SYNOPSIS
Adds a layer(application) assignment to image(template)
SYNTAX
Add-ALAppAssignment [-websession] <Object> [-apprevid] <String> [-imageid] <String> [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Adds a layer(application) assignment to image(template)
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-apprevid <String>
Application layer version to be added
-imageid <String>
Image or template where application should be added

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$image = Get-ALimage -websession $websession|where{$_.name -eq “Accounting}

$app = Get-ALapplayer -websession $websession|where{$_.name -eq “Libre Office”} $apprevs = get-alapplayerDetail -websession $websession -id $app.Id $apprevid = $apprevs.Revisions.AppLayerRevisionDetail|where{$_.state -eq “Deployable”}|Sort-Object revision -Descending|select -First 1 add-alappassignment -websession $websession -apprevid $apprevid.id -imageid $image.id

REMARKS
To see the examples, type: “get-help Add-ALAppAssignment -examples”. For more information, type: “get-help Add-ALAppAssignment -detailed”. For technical information, type: “get-help Add-ALAppAssignment -full”.

Add-ALELAppassignment

NAME
Add-ALELAppassignment
SYNOPSIS
Adds a user account or group to an applications elastic layer assignment
SYNTAX
Add-ALELAppassignment [-websession] <Object> [-apprevid] <String> [-unideskid] <Int64> [-directoryjunctionid] <Int64> [-ldapguid] <String> [-ldapdn] <String> [-sid] <String> [-objecttype] <String> [[-imageid] <Int64>] [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Adds a user account or group to an applications elastic layer assignment
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-apprevid <String>
Application version layer ID

-unideskid <Int64>

-directoryjunctionid <Int64>

-ldapguid <String>

-ldapdn <String>

-sid <String>

-objecttype <String>

-imageid <Int64>

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$user = get-alldapobject -websession $websession -object “myusername”

add-alelappassignment -websession $websession -apprevid $apprevid.Id -unideskid $unideskid -objecttype $objecttype -directoryjunctionid $directoryjunctionid -ldapguid $ldapguid -ldapdn $ldapdn -sid $sid -Confirm:$False

————————– EXAMPLE 2 ————————–

PS C:>$users = @(‘MyGroup1’,’MyGroup2’,’Domain Users’)

$finduser = $users|get-alldapobject -websession $websession $app = Get-ALapplayerDetail -websession $websession|where{$_.name -eq “Libre Office”} $apprevs = Get-ALapplayerDetail -websession $websession -id $app.Id $apprevid = $apprevs.Revisions.AppLayerRevisionDetail|where{$_.state -eq “Deployable”}|Sort-Object revision -Descending|select -First 1 add-alelappassignment -websession $websession -apprevid $apprevid.Id -unideskid $finduser.unideskid -objecttype $finduser.objecttype -directoryjunctionid $finduser.directoryjunctionid -ldapguid $finduser.guid -ldapdn $finduser.dn -sid $finsuser.sid -Confirm:$False

REMARKS
To see the examples, type: “get-help Add-ALELAppassignment -examples”. For more information, type: “get-help Add-ALELAppassignment -detailed”. For technical information, type: “get-help Add-ALELAppassignment -full”.
Commands

This page contains details on **** commands.

Connect-ALsession

NAME
Connect-ALsession
SYNOPSIS
Connects to the Citrix Application Layering appliance and creates a web request session
SYNTAX
Connect-ALsession [-Credential] <PSCredential> [-aplip] <String> [<CommonParameters>]
DESCRIPTION
Connects to the Citrix Application Layering appliance and creates a web request session
PARAMETERS
-Credential <PSCredential>
PowerShell credential object

-aplip <String>

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$websession = Connect-alsession -aplip $aplip -Credential $Credential -Verbose

REMARKS
To see the examples, type: “get-help Connect-ALsession -examples”. For more information, type: “get-help Connect-ALsession -detailed”. For technical information, type: “get-help Connect-ALsession -full”.
Commands

This page contains details on **** commands.

Disconnect-ALsession

NAME
Disconnect-ALsession
SYNOPSIS
Logs off and disconnects web session
SYNTAX
Disconnect-ALsession [-websession] <Object> [<CommonParameters>]
DESCRIPTION
Logs off and disconnects web session
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Disconnect-ALsession -websession $websession

REMARKS
To see the examples, type: “get-help Disconnect-ALsession -examples”. For more information, type: “get-help Disconnect-ALsession -detailed”. For technical information, type: “get-help Disconnect-ALsession -full”.
Commands

This page contains details on **** commands.

Export-ALLayerRev

NAME
Export-ALLayerRev
SYNOPSIS
Gets revisions that can be used to export
SYNTAX
Export-ALLayerRev [-websession] <Object> [-sharepath] <String> [-id] <String> [[-username] <String>] [[-sharepw] <String>] [<CommonParameters>]
DESCRIPTION
Gets revisions that can be used to export
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-sharepath <String>
Share UNC Path type
-id <String>
ID(s) of revision layers to export
-username <String>
Share username
-sharepw <String>
Share password
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Export-ALlayerrev -websession $websession -sharepath “\myserverpathlayers” -id @(12042,225252,2412412)

REMARKS
To see the examples, type: “get-help Export-ALLayerRev -examples”. For more information, type: “get-help Export-ALLayerRev -detailed”. For technical information, type: “get-help Export-ALLayerRev -full”.
Commands

This page contains details on **** commands.

Get-ALapplayer

NAME
Get-ALapplayer
SYNOPSIS
Gets all application layers
SYNTAX
Get-ALapplayer [-websession] <Object> [<CommonParameters>]
DESCRIPTION
Gets all application layers
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALapplayer -websession $websession

REMARKS
To see the examples, type: “get-help Get-ALapplayer -examples”. For more information, type: “get-help Get-ALapplayer -detailed”. For technical information, type: “get-help Get-ALapplayer -full”.

Get-ALapplayerDetail

NAME
Get-ALapplayerDetail
SYNOPSIS
Gets detailed information on Application Layer including revisions(versions)
SYNTAX
Get-ALapplayerDetail [-websession] <Object> [-id] <String> [<CommonParameters>]
DESCRIPTION
Gets detailed information on Application Layer including revisions(versions)
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-id <String>
Application layer ID
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>get-alapplayer -websession $websession -id $app.Id

REMARKS
To see the examples, type: “get-help Get-ALapplayerDetail -examples”. For more information, type: “get-help Get-ALapplayerDetail -detailed”. For technical information, type: “get-help Get-ALapplayerDetail -full”.

Get-ALAuditInfo

NAME
Get-ALAuditInfo
SYNOPSIS
Gets audit information
SYNTAX
Get-ALAuditInfo [-websession] <Object> [-entitytype] <String> [[-id] <String>] [<CommonParameters>]
DESCRIPTION
Gets System Settings
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-entitytype <String>
Type of log to pull
-id <String>
ID of entity to pull audit logs
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALAuditInfo -websession $websession -entitytype OsLayer -id 753664

————————– EXAMPLE 2 ————————–

PS C:>Get-ALAuditInfo -websession $websession -entitytype ManagementAppliance

REMARKS
To see the examples, type: “get-help Get-ALAuditInfo -examples”. For more information, type: “get-help Get-ALAuditInfo -detailed”. For technical information, type: “get-help Get-ALAuditInfo -full”.

Get-ALCachePointInfo

NAME
Get-ALCachePointInfo
SYNOPSIS
Gets appliance Layering Service Info
SYNTAX
Get-ALCachePointInfo [-websession] <Object> [<CommonParameters>]
DESCRIPTION
Gets appliance Layering Service Info
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALCachePointInfo -websession $websession

REMARKS
To see the examples, type: “get-help Get-ALCachePointInfo -examples”. For more information, type: “get-help Get-ALCachePointInfo -detailed”. For technical information, type: “get-help Get-ALCachePointInfo -full”.

Get-ALconnector

NAME
Get-ALconnector
SYNOPSIS
Gets all appliance connectors currently configured
SYNTAX
Get-ALconnector [-websession] <Object> [-type] <String> [[-name] <String>] [<CommonParameters>]
DESCRIPTION
Gets all appliance connectors currently configured
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-type <String>
Connector type for publishing or creating layersimages
-name <String>
Name of object to return
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALconnector -websession $websession -type “Publish”

REMARKS
To see the examples, type: “get-help Get-ALconnector -examples”. For more information, type: “get-help Get-ALconnector -detailed”. For technical information, type: “get-help Get-ALconnector -full”.

Get-ALconnectoragent

NAME
Get-ALconnectoragent
SYNOPSIS
Gets connector agents
SYNTAX
Get-ALconnectoragent [-websession] <Object> [<CommonParameters>]
DESCRIPTION
Gets connector agents
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALconnectoragent -websession $websession

REMARKS
To see the examples, type: “get-help Get-ALconnectoragent -examples”. For more information, type: “get-help Get-ALconnectoragent -detailed”. For technical information, type: “get-help Get-ALconnectoragent -full”.

Get-ALConnectorDetail

NAME
Get-ALConnectorDetail
SYNOPSIS
Gets Detailed Connector configurations
SYNTAX
Get-ALConnectorDetail [-websession] <Object> [[-name] <String>] [-includescripts] [[-port] <String>] [[-connid] <String>] [<CommonParameters>]
DESCRIPTION
Gets Detailed Connector configurations
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance

-name <String>

-includescripts [<SwitchParameter>]
Include ELM script hosts in return
-port <String>
port of the specific connector (Use: Get-ALConnector)
-connid <String>
connection ID of the specific connector (Use: Get-ALConnector)
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>get-alconnectordetail -websession $websession -connid $connector.Id -port $connector.ConfigurationSslPort

REMARKS
To see the examples, type: “get-help Get-ALConnectorDetail -examples”. For more information, type: “get-help Get-ALConnectorDetail -detailed”. For technical information, type: “get-help Get-ALConnectorDetail -full”.

Get-ALconnectortype

NAME
Get-ALconnectortype
SYNOPSIS
Gets all Connector Types
SYNTAX
Get-ALconnectortype [-websession] <Object> [[-name] <String>] [<CommonParameters>]
DESCRIPTION
Gets all Connector Types
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-name <String>
Name of object to return
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).
REMARKS
To see the examples, type: “get-help Get-ALconnectortype -examples”. For more information, type: “get-help Get-ALconnectortype -detailed”. For technical information, type: “get-help Get-ALconnectortype -full”.

Get-ALDirectory

NAME
Get-ALDirectory
SYNOPSIS
Gets Directory Junctions
SYNTAX
Get-ALDirectory [-websession] <Object> [<CommonParameters>]
DESCRIPTION
Gets Directory Junctions
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALDirectory -websession $websession

REMARKS
To see the examples, type: “get-help Get-ALDirectory -examples”. For more information, type: “get-help Get-ALDirectory -detailed”. For technical information, type: “get-help Get-ALDirectory -full”.

Get-ALDirectoryDetail

NAME
Get-ALDirectoryDetail
SYNOPSIS
Gets additional directory junction detail
SYNTAX
Get-ALDirectoryDetail [-websession] <Object> [-id] <String> [<CommonParameters>]
DESCRIPTION
Gets additional directory junction detail
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-id <String>
Directory Junction id
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>get-aldirectorydetail -websession $websession -id $directory.id

REMARKS
To see the examples, type: “get-help Get-ALDirectoryDetail -examples”. For more information, type: “get-help Get-ALDirectoryDetail -detailed”. For technical information, type: “get-help Get-ALDirectoryDetail -full”.

Get-ALExportableRev

NAME
Get-ALExportableRev
SYNOPSIS
Gets revisions that can be used to export to share
SYNTAX
Get-ALExportableRev [-websession] <Object> [-sharepath] <String> [[-username] <String>] [[-sharepw] <String>] [-showall] [<CommonParameters>]
DESCRIPTION
Gets revisions that can be used to export to share
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-sharepath <String>
Share UNC Path type
-username <String>
Share username
-sharepw <String>
Share password
-showall [<SwitchParameter>]
Get all layers including non exportable ones
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALExportableRev -websession $websession -sharepath “\myserverpathlayers”

REMARKS
To see the examples, type: “get-help Get-ALExportableRev -examples”. For more information, type: “get-help Get-ALExportableRev -detailed”. For technical information, type: “get-help Get-ALExportableRev -full”.

Get-ALicon

NAME
Get-ALicon
SYNOPSIS
Gets all icon IDs
SYNTAX
Get-ALicon [-websession] <Object> [<CommonParameters>]
DESCRIPTION
Gets all icon IDs
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALicon -websession $websession

REMARKS
To see the examples, type: “get-help Get-ALicon -examples”. For more information, type: “get-help Get-ALicon -detailed”. For technical information, type: “get-help Get-ALicon -full”.

Get-ALiconassoc

NAME
Get-ALiconassoc
SYNOPSIS
Gets items associated with icon
SYNTAX
Get-ALiconassoc [-websession] <Object> [-iconid] <String> [<CommonParameters>]
DESCRIPTION
Gets items associated with icon
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-iconid <String>
Icon ID
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALicon -websession $websession

REMARKS
To see the examples, type: “get-help Get-ALiconassoc -examples”. For more information, type: “get-help Get-ALiconassoc -detailed”. For technical information, type: “get-help Get-ALiconassoc -full”.

Get-ALimage

NAME
Get-ALimage
SYNOPSIS
Gets all images(templates)
SYNTAX
Get-ALimage [-websession] <Object> [<CommonParameters>]
DESCRIPTION
Gets all images(templates)
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALimage -websession $websession

REMARKS
To see the examples, type: “get-help Get-ALimage -examples”. For more information, type: “get-help Get-ALimage -detailed”. For technical information, type: “get-help Get-ALimage -full”.

Get-ALImageComp

NAME
Get-ALImageComp
SYNOPSIS
Gets image composition details
SYNTAX
Get-ALImageComp [-websession] <Object> [[-id] <String>] [[-name] <String>] [<CommonParameters>]
DESCRIPTION
Gets image composition details
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-id <String>
Image(template) id
-name <String>
Image name (supports wildcard)
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Gets all images and layer composition

Get-ALImageComp -websession $websession

————————– EXAMPLE 2 ————————–

PS C:>Gets image and layer composition based on ID

Get-ALImageComp -websession $websession -id 5535

————————– EXAMPLE 3 ————————–

PS C:>Gets image and layer composition based on name

Get-ALImageComp -websession $websession -name “Windows 10”

————————– EXAMPLE 4 ————————–

PS C:>Gets image and layer composition based on name (wildcard)

Get-ALImageComp -websession $websession -name “10

REMARKS
To see the examples, type: “get-help Get-ALImageComp -examples”. For more information, type: “get-help Get-ALImageComp -detailed”. For technical information, type: “get-help Get-ALImageComp -full”.

Get-ALimageDetail

NAME
Get-ALimageDetail
SYNOPSIS
Gets additional image(template) detail
SYNTAX
Get-ALimageDetail [-websession] <Object> [-id] <String> [<CommonParameters>]
DESCRIPTION
Gets additional image(template) detail
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-id <String>
Image(template) id
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>get-alimagedetail -websession $websession -id $image.id

REMARKS
To see the examples, type: “get-help Get-ALimageDetail -examples”. For more information, type: “get-help Get-ALimageDetail -detailed”. For technical information, type: “get-help Get-ALimageDetail -full”.

Get-ALImportableRev

NAME
Get-ALImportableRev
SYNOPSIS
Gets revisions that can be used to import
SYNTAX
Get-ALImportableRev [-websession] <Object> [-sharepath] <String> [[-username] <String>] [[-sharepw] <String>] [-showall] [<CommonParameters>]
DESCRIPTION
Gets revisions that can be used to import
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-sharepath <String>
Share UNC Path type
-username <String>
Share username
-sharepw <String>
Share password
-showall [<SwitchParameter>]
Get all layers including non exportable ones
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALImportableRev -websession $websession -sharepath “\myserverpathlayers”

REMARKS
To see the examples, type: “get-help Get-ALImportableRev -examples”. For more information, type: “get-help Get-ALImportableRev -detailed”. For technical information, type: “get-help Get-ALImportableRev -full”.

Get-ALLayerInstallDisk

NAME
Get-ALLayerInstallDisk
SYNOPSIS
Gets install disk location during finalize process
SYNTAX
Get-ALLayerInstallDisk [-websession] <Object> [-id] <String> [<CommonParameters>]
DESCRIPTION
Gets install disk location during finalize process
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-id <String>
Layer ID to be located
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>get-allayerinstalldisk -websession $websession -layerid $apprevid.LayerId

REMARKS
To see the examples, type: “get-help Get-ALLayerInstallDisk -examples”. For more information, type: “get-help Get-ALLayerInstallDisk -detailed”. For technical information, type: “get-help Get-ALLayerInstallDisk -full”.

Get-ALLdapObject

NAME
Get-ALLdapObject
SYNOPSIS
Locates LDAP user or group object
SYNTAX
Get-ALLdapObject [-websession] <Object> [-object] <String> [<CommonParameters>]
DESCRIPTION
Locates LDAP user or group object
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-object <String>
Group or user to be located
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>get-alldapobject -websession $websession -object “myusername”

————————– EXAMPLE 2 ————————–

PS C:>$users = @(‘MyGroup1’,’MyGroup2’,’Domain Users’)

$finduser = $users|get-alldapobject -websession $websession

REMARKS
To see the examples, type: “get-help Get-ALLdapObject -examples”. For more information, type: “get-help Get-ALLdapObject -detailed”. For technical information, type: “get-help Get-ALLdapObject -full”.

Get-ALLocalUser

NAME
Get-ALLocalUser
SYNOPSIS
Gets ELM local users
SYNTAX
Get-ALLocalUser [-websession] <Object> [<CommonParameters>]
DESCRIPTION
Gets ELM local users
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALLocalUser -websession $websession

REMARKS
To see the examples, type: “get-help Get-ALLocalUser -examples”. For more information, type: “get-help Get-ALLocalUser -detailed”. For technical information, type: “get-help Get-ALLocalUser -full”.

Get-ALOsLayer

NAME
Get-ALOsLayer
SYNOPSIS
Gets all OS layers
SYNTAX
Get-ALOsLayer [-websession] <Object> [<CommonParameters>]
DESCRIPTION
Gets all OS layers
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALOsLayer -websession $websession

REMARKS
To see the examples, type: “get-help Get-ALOsLayer -examples”. For more information, type: “get-help Get-ALOsLayer -detailed”. For technical information, type: “get-help Get-ALOsLayer -full”.

Get-ALOsLayerDetail

NAME
Get-ALOsLayerDetail
SYNOPSIS
Gets detailed information on a OS layer including revisions
SYNTAX
Get-ALOsLayerDetail [-websession] <Object> [-id] <String> [<CommonParameters>]
DESCRIPTION
Gets detailed information on a OS layer including revisions
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-id <String>
Operating System Layer ID
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>get-aloslayerdetail -websession $websession -id $app.AssociatedOsLayerId

REMARKS
To see the examples, type: “get-help Get-ALOsLayerDetail -examples”. For more information, type: “get-help Get-ALOsLayerDetail -detailed”. For technical information, type: “get-help Get-ALOsLayerDetail -full”.

Get-ALPendingOp

NAME
Get-ALPendingOp
SYNOPSIS
Gets appliance operation based on ID
SYNTAX
Get-ALPendingOp [-websession] <Object> [-id] <String> [<CommonParameters>]
DESCRIPTION
Gets appliance operation based on ID
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-id <String>
workticket id
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALPendingOp -websession $websession -id $myworkid

REMARKS
To see the examples, type: “get-help Get-ALPendingOp -examples”. For more information, type: “get-help Get-ALPendingOp -detailed”. For technical information, type: “get-help Get-ALPendingOp -full”.

Get-ALPlatformlayer

NAME
Get-ALPlatformlayer
SYNOPSIS
Gets all platform layers
SYNTAX
Get-ALPlatformlayer [-websession] <Object> [<CommonParameters>]
DESCRIPTION
Gets all platform layers
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALPlatformlayer -websession $websession

REMARKS
To see the examples, type: “get-help Get-ALPlatformlayer -examples”. For more information, type: “get-help Get-ALPlatformlayer -detailed”. For technical information, type: “get-help Get-ALPlatformlayer -full”.

Get-ALPlatformLayerDetail

NAME
Get-ALPlatformLayerDetail
SYNOPSIS
Gets detailed information on a platform layer including revisions
SYNTAX
Get-ALPlatformLayerDetail [-websession] <Object> [-id] <String> [<CommonParameters>]
DESCRIPTION
Gets detailed information on a platform layer including revisions
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-id <String>
Platform layer ID
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>get-alplatformlayerDetail -websession $websession -id $platform.id

REMARKS
To see the examples, type: “get-help Get-ALPlatformLayerDetail -examples”. For more information, type: “get-help Get-ALPlatformLayerDetail -detailed”. For technical information, type: “get-help Get-ALPlatformLayerDetail -full”.

Get-ALRemoteshare

NAME
Get-ALRemoteshare
SYNOPSIS
Gets CIFS share information currently configured
SYNTAX
Get-ALRemoteshare [-websession] <Object> [<CommonParameters>]
DESCRIPTION
Gets CIFS share information currently configured
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALRemoteshare -websession $websession

REMARKS
To see the examples, type: “get-help Get-ALRemoteshare -examples”. For more information, type: “get-help Get-ALRemoteshare -detailed”. For technical information, type: “get-help Get-ALRemoteshare -full”.

Get-ALStatus

NAME
Get-ALStatus
SYNOPSIS
Gets any non-completed task currently running on appliance
SYNTAX
Get-ALStatus [-websession] <Object> [[-id] <String>] [<CommonParameters>]
DESCRIPTION
Gets any non-completed task currently running on appliance
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-id <String>
Workticket ID of job
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALStatus -websession $websession

————————– EXAMPLE 2 ————————–

PS C:>Get-ALStatus -websession $websession -id “4521984”

REMARKS
To see the examples, type: “get-help Get-ALStatus -examples”. For more information, type: “get-help Get-ALStatus -detailed”. For technical information, type: “get-help Get-ALStatus -full”.

Get-ALSystemInfo

NAME
Get-ALSystemInfo
SYNOPSIS
Gets appliance System Details
SYNTAX
Get-ALSystemInfo [-websession] <Object> [<CommonParameters>]
DESCRIPTION
Gets appliance System Details
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALSystemInfo -websession $websession

REMARKS
To see the examples, type: “get-help Get-ALSystemInfo -examples”. For more information, type: “get-help Get-ALSystemInfo -detailed”. For technical information, type: “get-help Get-ALSystemInfo -full”.

Get-ALSystemSettingInfo

NAME
Get-ALSystemSettingInfo
SYNOPSIS
Gets appliance System Settings
SYNTAX
Get-ALSystemSettingInfo [-websession] <Object> [<CommonParameters>]
DESCRIPTION
Gets appliance System Settings
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALSystemSettingInfo -websession $websession

REMARKS
To see the examples, type: “get-help Get-ALSystemSettingInfo -examples”. For more information, type: “get-help Get-ALSystemSettingInfo -detailed”. For technical information, type: “get-help Get-ALSystemSettingInfo -full”.

Get-ALUserAssignment

NAME
Get-ALUserAssignment
SYNOPSIS
Gets user app layer assignments
SYNTAX
Get-ALUserAssignment [-websession] <Object> [-id] <String[]> [<CommonParameters>]
DESCRIPTION
Gets user app layer assignments
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-id <String[]>
Unidesk ID of user
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALUserAssignments -websession $websession -id “4521984” -Verbose

REMARKS
To see the examples, type: “get-help Get-ALUserAssignment -examples”. For more information, type: “get-help Get-ALUserAssignment -detailed”. For technical information, type: “get-help Get-ALUserAssignment -full”.

Get-ALUserDetail

NAME
Get-ALUserDetail
SYNOPSIS
Gets detailed information on user from directory junction
SYNTAX
Get-ALUserDetail [-websession] <Object> [-id] <String> [-junctionid] <String> [-ldapguid] <String> [-dn] <String> [<CommonParameters>]
DESCRIPTION
Gets detailed information on user from directory junction
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-id <String>
Unidesk ID of user
-junctionid <String>
Directory junction ID

-ldapguid <String>

-dn <String>
LDAP DN of user
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALUserDetail -websession $websession -junctionid $dir.id -ldapguid $userid.DirectoryId.LdapGuid -dn $userid.DirectoryId.LdapDN -id $userid.DirectoryId.UnideskId

REMARKS
To see the examples, type: “get-help Get-ALUserDetail -examples”. For more information, type: “get-help Get-ALUserDetail -detailed”. For technical information, type: “get-help Get-ALUserDetail -full”.

Get-ALUserGroupMembership

NAME
Get-ALUserGroupMembership
SYNOPSIS
Gets group membership of user
SYNTAX
Get-ALUserGroupMembership [-websession] <Object> [-id] <String> [-junctionid] <String> [-ldapguid] <String> [-ldapdn] <String> [-sid] <String> [<CommonParameters>]
DESCRIPTION
Gets group membership of user
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-id <String>
Unidesk ID of user
-junctionid <String>
Directory Junction ID
-ldapguid <String>
User LDAP guid
-ldapdn <String>
User LDAP DN
-sid <String>
User SID
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALUserGroupMembership -websession $websession -junctionid $dir.id -id $User.DirectoryId.UnideskId -ldapguid $user.FullId.LdapGuid -ldapdn $user.FullId.LdapDN -sid $userdetail.FullId.sid

REMARKS
To see the examples, type: “get-help Get-ALUserGroupMembership -examples”. For more information, type: “get-help Get-ALUserGroupMembership -detailed”. For technical information, type: “get-help Get-ALUserGroupMembership -full”.

Get-ALUserList

NAME
Get-ALUserList
SYNOPSIS
Gets list of users and groups for specific LDAP DN
SYNTAX
Get-ALUserList [-websession] <Object> [-junctionid] <String> [[-dn] <String>] [<CommonParameters>]
DESCRIPTION
Gets list of users and groups for specific LDAP DN
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-junctionid <String>
Directory junction ID
-dn <String>
LDAP DN of user location
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALUserList -websession $websession -junctionid $dir.id -dn “CN=Users,DC=mydomain,DC=com”

————————– EXAMPLE 2 ————————–

PS C:>Get-ALUserList -websession $websession -junctionid $dir.id

REMARKS
To see the examples, type: “get-help Get-ALUserList -examples”. For more information, type: “get-help Get-ALUserList -detailed”. For technical information, type: “get-help Get-ALUserList -full”.

Get-AlVcenterConnector

NAME
Get-AlVcenterConnector
SYNOPSIS
Gets Vcenter Connector configuration
SYNTAX
Get-AlVcenterConnector [-websession] <Object> [[-name] <String>] [-includescripts] [[-connid] <String>] [<CommonParameters>]
DESCRIPTION
Gets Vcenter Connector configuration
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-name <String>
Name of object to return
-includescripts [<SwitchParameter>]
Include ELM script hosts in return

-connid <String>

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-AlVcenterConnector -websession $websession

REMARKS
To see the examples, type: “get-help Get-AlVcenterConnector -examples”. For more information, type: “get-help Get-AlVcenterConnector -detailed”. For technical information, type: “get-help Get-AlVcenterConnector -full”.

Get-alVcenterObject

NAME
Get-alVcenterObject
SYNOPSIS
Gets Vcenter Connector datacenters
SYNTAX
Get-alVcenterObject [-websession] <Object> [[-configid] <String>] [-vcenter] <String> [[-vcenterpass] <String>] [-username] <String> [-type] <String> [[-dc] <String>] [[-vmfolder] <String>] [[-name] <String>] [<CommonParameters>]
DESCRIPTION
Gets Vcenter Connector datacenters
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-configid <String>
Connector ID
-vcenter <String>
vCenter Hostname
-vcenterpass <String>
Password to authenticate to vcenter
-username <String>
Username to authenticate to vcenter
-type <String>
Type of object to return
-dc <String>
vCenter Datacenter ID to query
-vmfolder <String>
vCenter folder ID to query
-name <String>
Name of object to return
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-alVcenterObjectDataCenter -websession $websession -configid $vcenter.pccId -username $vcenter.pccConfig.userName -vcenter $vcenter.pccConfig.vCenterServer -Verbose

REMARKS
To see the examples, type: “get-help Get-alVcenterObject -examples”. For more information, type: “get-help Get-alVcenterObject -detailed”. For technical information, type: “get-help Get-alVcenterObject -full”.

Get-ALVMName

NAME
Get-ALVMName
SYNOPSIS
Extracts VM name out of “action required” task
SYNTAX
Get-ALVMName [-message] <Object> [<CommonParameters>]
DESCRIPTION
Extracts VM name out of “action required” task
PARAMETERS
-message <Object>
Message from pending operation
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Get-ALVMName -message $status.WorkItems.WorkItemResult.Status

REMARKS
To see the examples, type: “get-help Get-ALVMName -examples”. For more information, type: “get-help Get-ALVMName -detailed”. For technical information, type: “get-help Get-ALVMName -full”.
Commands

This page contains details on **** commands.

Import-ALLayerRev

NAME
Import-ALLayerRev
SYNOPSIS
Imports existing layers from share into ELM
SYNTAX
Import-ALLayerRev [-websession] <Object> [-sharepath] <String> [-id] <String> [[-username] <String>] [[-sharepw] <String>] [<CommonParameters>]
DESCRIPTION
Imports existing layers from share into ELM
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-sharepath <String>
Share UNC Path type
-id <String>
ID(s) of revision layers to export
-username <String>
Share username
-sharepw <String>
Share password
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Import-ALlayerrevs -websession $websession -sharepath “\myserverpathlayers” -id @(12042,225252,2412412)

REMARKS
To see the examples, type: “get-help Import-ALLayerRev -examples”. For more information, type: “get-help Import-ALLayerRev -detailed”. For technical information, type: “get-help Import-ALLayerRev -full”.

Import-ALOsLayer

NAME
Import-ALOsLayer
SYNOPSIS
Creates a new operating system layer
SYNTAX
Import-ALOsLayer [-websession] <Object> [-vmname] <String> [[-description] <String>] [-connectorid] <String> [-shareid] <String> [[-icon] <String>] [-name] <String> [[-size] <String>] [-version] <String> [-vmid] <String> [-hypervisor] <String[]> [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Creates a new operating system layer
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-vmname <String>
Virtual machine name to import from
-description <String>
Description of the layer
-connectorid <String>
ID of Connector to use
-shareid <String>
ID of file share
-icon <String>
Icon ID (default 196608)
-name <String>
Name of the layer
-size <String>
Size of layer in GB (default 61440)
-version <String>
Version number of the layer
-vmid <String>
Virtual Machine ID from vCenter or GUID XenCenter
-hypervisor <String[]>
Hypversior to import from (ESXI or XenServer)

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$fileshare = Get-ALRemoteshare -websession $websession

$connector = Get-ALconnector -websession $websession -type Create|where{$_.name -eq “MYvCenter”} $shares = get-alremoteshare -websession $websession #vCenter Command $vm = Get-VM “Windows2016VM” $vmid = $vm.Id -replace “VirtualMachine-“,”” $response = import-aloslayer -websession $websession -vmname $vm.name -connectorid $connector.id -shareid $fileshare.id -name “Windows 2016” -version “1.0” -vmid $vmid -hypervisor esxi

————————– EXAMPLE 2 ————————–

PS C:>$fileshare = Get-ALRemoteshare -websession $websession

$connector = Get-ALconnector -websession $websession -type Create|where{$_.name -eq “MYXenCenter”} $shares = get-alremoteshare -websession $websession #Xen Command $XenVM = get-xenvm -name $VMName $response = import-aloslayer -websession $websession -vmname $vmname -connectorid $connector.id -shareid $fileshare.id -name “Windows 2016” -version “1.0” -vmid $XenVM.uuid -hypervisor xenserver

REMARKS
To see the examples, type: “get-help Import-ALOsLayer -examples”. For more information, type: “get-help Import-ALOsLayer -detailed”. For technical information, type: “get-help Import-ALOsLayer -full”.
Commands

This page contains details on **** commands.

Invoke-ALCreateBundle

NAME
Invoke-ALCreateBundle
SYNOPSIS
Creates diagnostic bundle
SYNTAX
Invoke-ALCreateBundle [-websession] <Object> [-IncludeCrashDumps] [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Creates diagnostic bundle
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance

-IncludeCrashDumps [<SwitchParameter>]

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Invoke-ALCreateBundle -websession $websession

REMARKS
To see the examples, type: “get-help Invoke-ALCreateBundle -examples”. For more information, type: “get-help Invoke-ALCreateBundle -detailed”. For technical information, type: “get-help Invoke-ALCreateBundle -full”.

Invoke-ALLayerFinalize

NAME
Invoke-ALLayerFinalize
SYNOPSIS
Runs finalize process on a layer
SYNTAX
Invoke-ALLayerFinalize [-websession] <Object> [-fileshareid] <String> [-LayerRevisionId] <String> [-uncpath] <String> [-filename] <String> [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Runs finalize process on a layer
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-fileshareid <String>
ID of file share location used to store disk
-LayerRevisionId <String>
Revision ID of layer to be finalized
-uncpath <String>
UNC Path of fileshare
-filename <String>
Filename of the disk

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$app = Get-ALapplayer -websession $websession|where{$_.name -eq “7-Zip”}

$apprevs = get-alapplayerdetail -websession $websession -id $app.Id $shares = get-alremoteshare -websession $websession $apprevid = $apprevs.Revisions.AppLayerRevisionDetail|where{$_.state -eq “Finalizable”}|Sort-Object revision -Descending|select -First 1 $disklocation = get-allayerinstalldisk -websession $websession -layerid $apprevid.LayerId invoke-allayerfinalize -websession $websession -fileshareid $shares.id -LayerRevisionId $apprevid.Id -uncpath $disklocation.diskuncpath -filename $disklocation.diskname

REMARKS
To see the examples, type: “get-help Invoke-ALLayerFinalize -examples”. For more information, type: “get-help Invoke-ALLayerFinalize -detailed”. For technical information, type: “get-help Invoke-ALLayerFinalize -full”.

Invoke-ALPublish

NAME
Invoke-ALPublish
SYNOPSIS
Publishes image(template)
SYNTAX
Invoke-ALPublish [-websession] <Object> [-imageid] <Array> [[-description] <Array>] [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Publishes image(template)
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-imageid <Array>
Image ID’s to be published

-description <Array>

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$images = Get-ALimage -websession $websession|where{$_.name -eq “Win 10 Accounting”}

$image = get-alimagedetail -websession $websession -id $images.Id invoke-alpublish -websession $websession -imageid $images.id

REMARKS
To see the examples, type: “get-help Invoke-ALPublish -examples”. For more information, type: “get-help Invoke-ALPublish -detailed”. For technical information, type: “get-help Invoke-ALPublish -full”.
Commands

This page contains details on **** commands.

New-ALAppLayer

NAME
New-ALAppLayer
SYNOPSIS
Creates a new application layer
SYNTAX
New-ALAppLayer [-websession] <Object> [-version] <String> [-name] <String> [[-description] <String>] [[-revdescription] <String>] [[-OsLayerSwitching] <String>] [-connectorid] <String> [-osrevid] <String> [[-platformrevid] <String>] [[-appprereqid] <String[]>] [-diskformat] <String> [-fileshareid] <String> [[-size] <String>] [[-icon] <String>] [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Creates a new application layer
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-version <String>
Version of the layer
-name <String>
Name of the layer
-description <String>
Description of the layer
-revdescription <String>
Revision description
-OsLayerSwitching <String>
Allow OS Switching NotBoundToOsLayer=ON BoundToOsLayer=OFF
-connectorid <String>
ID of Connector to use
-osrevid <String>
Operating system version ID
-platformrevid <String>
Platform version ID if needed
-appprereqid <String[]>
Application Layer Prerequisie version ID(s) if needed
-diskformat <String>
Disk format of the image
-fileshareid <String>
Fileshare ID to store disk
-size <String>
Size of layer in GB (default 10240)
-icon <String>
Icon ID (default 196608)

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$connector = Get-ALconnector -websession $websession -type Create|where{$_.name -eq “MYvCenter”}

$fileshare = Get-ALRemoteshare -websession $websession $oss = Get-ALOsLayer -websession $websession|where{$_.name -eq “Windows 10 x64”} $osrevs = get-aloslayerDetail -websession $websession -id $oss.id $osrevid = $osrevs.Revisions.OsLayerRevisionDetail|where{$_.state -eq “Deployable”}|Sort-Object revision -Descending|select -First 1 new-alapplayer -websession $websession -version “1.0” -name “Accounting APP” -description “Accounting application” -connectorid $connector.id -osrevid $osrevid.Id -diskformat $connector.ValidDiskFormats.DiskFormat -OsLayerSwitching BoundToOsLayer -fileshareid $fileshare.id

REMARKS
To see the examples, type: “get-help New-ALAppLayer -examples”. For more information, type: “get-help New-ALAppLayer -detailed”. For technical information, type: “get-help New-ALAppLayer -full”.

New-AlApplayerClone

NAME
New-AlApplayerClone
SYNOPSIS
Clones a Layer
SYNTAX
New-AlApplayerClone [-websession] <Object> [-apprevid] <Object> [-name] <String> [[-description] <String>] [[-iconid] <String>] [-targetrevversion] <String> [[-targetrevdescription] <String>] [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Clones a Layer
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-apprevid <Object>
Application revision version id to clone from
-name <String>
Name of the cloned layer
-description <String>
Description of the cloned layer
-iconid <String>
Icon ID
-targetrevversion <String>
Versionname of the cloned layer revision
-targetrevdescription <String>
Description for the cloned layer revision

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$layer = Get-ALapplayer -websession $websession | Where-Object {$_.name -like “S2016_APP_JAVA”}

$apprevs = Get-ALapplayerDetail -websession $websession -id $layer.id $apprevid = $apprevs.Revisions.AppLayerRevisionDetail | Sort-Object id | Select-Object -Last 1 $targetrevversion = $apprevid.DisplayedVersion $targetrevdescription = “Cloned revision $($targetrevversion)” $name = “$($Layer.name)_Copy” $description = $($Layer.name) $Iconid = $(Get-ALicon -websession $websession | Where-Object {$(Get-ALiconassoc -iconid $_.iconid -websession $websession -ea 0) | Where-Object {$_.id -match $layer.id} }).Iconid

REMARKS
To see the examples, type: “get-help New-AlApplayerClone -examples”. For more information, type: “get-help New-AlApplayerClone -detailed”. For technical information, type: “get-help New-AlApplayerClone -full”.

New-ALAppLayerRev

NAME
New-ALAppLayerRev
SYNOPSIS
Creates a new layer version
SYNTAX
New-ALAppLayerRev [-websession] <Object> [-version] <String> [-name] <String> [[-description] <String>] [-connectorid] <String> [-appid] <String> [-apprevid] <String> [-osrevid] <String> [[-platformrevid] <String>] [[-appprereqid] <String[]>] [-diskformat] <String> [-fileshareid] <String> [[-size] <String>] [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Creates a new layer version
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-version <String>
Version of the revision
-name <String>
Name of the layer revision
-description <String>
Description of the revision
-connectorid <String>
ID of Connector to use

-appid <String>

-apprevid <String>
Base application version layer id to use
-osrevid <String>
OS version layer id to use
-platformrevid <String>
Platform version ID if needed
-appprereqid <String[]>
Application Layer Prerequisie version ID(s) if needed
-diskformat <String>
Diskformat to store layer

-fileshareid <String>

-size <String>
Size of layer in GB (default 10240)

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$fileshare = Get-ALRemoteshare -websession $websession

$connector = Get-ALconnector -websession $websession -type Create|where{$_.name -eq “MYvCenter”} $app = Get-ALapplayer -websession $websession|where{$_.name -eq “7-Zip”} $oss = Get-ALOsLayer -websession $websession $osrevs = get-aloslayerdetail -websession $websession -id $app.AssociatedOsLayerId $osrevid = $osrevs.Revisions.OsLayerRevisionDetail|where{$_.state -eq “Deployable”}|Sort-Object revision -Descending|select -First 1 $apprevs = get-alapplayerDetail -websession $websession -id $app.Id $apprevid = $apprevs.Revisions.AppLayerRevisionDetail|where{$_.state -eq “Deployable”}|Sort-Object revision -Descending|select -First 1 new-alapplayerrev -websession $websession -version “9.0” -name $app.Name -connectorid $connector.id -appid $app.Id -apprevid $apprevid.id -osrevid $osrevid.Id -diskformat $connector.ValidDiskFormats.DiskFormat -fileshareid $fileshare.id

REMARKS
To see the examples, type: “get-help New-ALAppLayerRev -examples”. For more information, type: “get-help New-ALAppLayerRev -detailed”. For technical information, type: “get-help New-ALAppLayerRev -full”.

new-aldirectory

NAME
new-aldirectory
SYNOPSIS
Creates Directory Junction
SYNTAX
new-aldirectory [-websession] <Object> [-name] <String> [-serveraddress] <String> [[-port] <String>] [-usessl] [-username] <String> [-adpassword] <String> [-basedn] <String> [-force] [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Creates Directory Junction
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-name <String>
Junction name
-serveraddress <String>
AD server to connect
-port <String>
AD port (uses 389 and 636 by default)
-usessl [<SwitchParameter>]
Connect via SSL
-username <String>
AD username (eg admin@domain.com)
-adpassword <String>
AD password
-basedn <String>
Base AD DN
-force [<SwitchParameter>]
Skip AD tests

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>new-aldirectory -websession $websession -serveraddress “mydc.domain.com” -Verbose -username “admin@domain.com” -adpassword “MYPASSWORD” -basedn DC=domain,DC=com -name “Mydirectory”

————————– EXAMPLE 2 ————————–

PS C:>new-aldirectory -websession $websession -serveraddress “mydc.domain.com” -Verbose -usessl -username “admin@domain.com” -adpassword “MYPASSWORD” -basedn DC=domain,DC=com -name “Mydirectory”

REMARKS
To see the examples, type: “get-help new-aldirectory -examples”. For more information, type: “get-help new-aldirectory -detailed”. For technical information, type: “get-help new-aldirectory -full”.

new-ALicon

NAME
new-ALicon
SYNOPSIS
Converts and uploads image file to be used as icon
SYNTAX
new-ALicon [-websession] <Object> [-iconfile] <Object> [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Converts and uploads image file to be used as icon
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-iconfile <Object>
Icon filename

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Upload-ALicon -websession $websession -iconfilename “d:mysweeticon.png”

REMARKS
To see the examples, type: “get-help new-ALicon -examples”. For more information, type: “get-help new-ALicon -detailed”. For technical information, type: “get-help new-ALicon -full”.

New-ALImage

NAME
New-ALImage
SYNOPSIS
Creates new image(template)
SYNTAX
New-ALImage [-websession] <Object> [-name] <String> [[-description] <String>] [-connectorid] <String> [-appids] <String[]> [-osrevid] <String> [-platrevid] <String> [[-ElasticLayerMode] <String>] [-diskformat] <String> [[-size] <String>] [[-icon] <String>] [[-syspreptype] <String>] [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Creates new image(template)
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-name <String>
Name of the layer
-description <String>
Description of the layer
-connectorid <String>
ID of Connector to use
-appids <String[]>
IDs of application versions to add to image
-osrevid <String>
Operating system layer version ID
-platrevid <String>
Platform layer version ID
-ElasticLayerMode <String>
Elastic Layer setting for the image. Options “None”,”Session”,”Office365”,”SessionOffice365”,”Desktop”
-diskformat <String>
Disk format of the image
-size <String>
Size of layer in GB (default 102400)
-icon <String>
Icon ID (default 196608)
-syspreptype <String>
Syspreptype for the Image. Options “None”,”Offline” (default “None”)

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$connector = Get-ALconnector -websession $websession -type “Publish”|where{$_.name -eq “PVS”}

$oss = Get-ALOsLayer -websession $websession|where{$_.name -eq “Windows 10 x64”} $osrevs = get-aloslayer -websession $websession -id $oss.id $osrevid = $osrevs.Revisions.OsLayerRevisionDetail|where{$_.state -eq “Deployable”}|Sort-Object revision -Descending|select -First 1 $plats = get-alplatformlayer -websession $websession|where{$_.name -eq “Windows 10 VDA”} $platrevs = get-alplatformlayerdetail -websession $websession -id $plats.id $platformrevid = $platrevs.Revisions.PlatformLayerRevisionDetail|where{$_.state -eq “Deployable”}|Sort-Object revision -Descending|select -First 1 $ids = @(“1081350”,”1081349”) new-alimage -websession $websession -name “Win10TEST55” -description “Accounting” -connectorid $connector.id -osrevid $osrevid.Id -appids $ids -platrevid $platformrevid.id -diskformat $connector.ValidDiskFormats.DiskFormat -elasticlayermode Desktop

REMARKS
To see the examples, type: “get-help New-ALImage -examples”. For more information, type: “get-help New-ALImage -detailed”. For technical information, type: “get-help New-ALImage -full”.

New-ALImageClone

NAME
New-ALImageClone
SYNOPSIS
Clones an Image
SYNTAX
New-ALImageClone [-websession] <Object> [-imageid] <Object> [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Clones an Image
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-imageid <Object>
id for the image to be cloned

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$image = Get-ALimage -websession $websession | where {$_.name -eq “Windows 10 Accounting”}

New-ALImageClone -websession $websession -imageid $image.Id -Confirm:$false -OutVariable ALImageClone

REMARKS
To see the examples, type: “get-help New-ALImageClone -examples”. For more information, type: “get-help New-ALImageClone -detailed”. For technical information, type: “get-help New-ALImageClone -full”.

New-ALOsLayerRev

NAME
New-ALOsLayerRev
SYNOPSIS
Creates new OS layer version
SYNTAX
New-ALOsLayerRev [-websession] <Object> [-version] <String> [[-description] <String>] [-connectorid] <String> [-osid] <String> [-osrevid] <String> [[-platformrevid] <String>] [-diskformat] <String> [-shareid] <String> [-name] <String> [[-size] <String>] [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Creates new OS layer version
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-version <String>
Version of the new layer
-description <String>
Description of the layer
-connectorid <String>
ID of Connector to use
-osid <String>
Operating system layer ID
-osrevid <String>
OS version layer id to use
-platformrevid <String>
Platform version ID if needed
-diskformat <String>
Disk format of the image
-shareid <String>
ID of file share
-name <String>
Name of the PackagingDisk or layer version
-size <String>
Size of layer in GB (default 61440)

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$fileshare = Get-ALRemoteshare -websession $websession

$connector = Get-ALconnector -websession $websession -type Create|where{$_.name -eq “MYvCenter”} $oss = Get-ALOsLayer -websession $websession|where{$_.name -eq “Windows 2016 Standard”} $osrevs = get-aloslayerDetail -websession $websession -id $oss.id $osrevid = $osrevs.Revisions.OsLayerRevisionDetail|where{$_.state -eq “Deployable”}|Sort-Object revision -Descending|select -First 1 new-aloslayerrev -websession $websession -version “2.0” -connectorid $connector.Id -osid $oss.id -osrevid $osrevid.id -diskformat $connector.ValidDiskFormats.DiskFormat -shareid $fileshare.id

REMARKS
To see the examples, type: “get-help New-ALOsLayerRev -examples”. For more information, type: “get-help New-ALOsLayerRev -detailed”. For technical information, type: “get-help New-ALOsLayerRev -full”.

New-ALPlatformLayer

NAME
New-ALPlatformLayer
SYNOPSIS
Creates new platform layer
SYNTAX
New-ALPlatformLayer [-websession] <Object> [[-version] <String>] [-osrevid] <String> [-connectorid] <String> [[-Description] <String>] [-shareid] <String> [[-iconid] <String>] [-name] <String> [[-size] <String>] [-diskformat] <String> [[-platformrevid] <String>] [-type] <String> [[-HypervisorPlatformTypeId] <String>] [[-ProvisioningPlatformTypeId] <String>] [[-BrokerPlatformTypeId] <String>] [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Creates new platform layer
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-version <String>
Version of the new layer
-osrevid <String>
OS version layer id to use
-connectorid <String>
ID of Connector to use
-Description <String>
Description of the layer
-shareid <String>
ID of file share

-iconid <String>

-name <String>
Name of the layer
-size <String>
Size of layer in GB (default 10240)
-diskformat <String>
Disk format of the image
-platformrevid <String>
Platform version ID if needed
-type <String>
Type of platform layer to create (Create or Publish)
-HypervisorPlatformTypeId <String>
Hypervisor type of platform layer (default=vsphere)
-ProvisioningPlatformTypeId <String>
Provisioning type MCS or PVS (default=mcs)
-BrokerPlatformTypeId <String>
Broker type used (default=xendesktop)

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$fileshare = Get-ALRemoteshare -websession $websession

$connector = Get-ALconnector -websession $websession -type Create|where{$_.name -eq “MYvCenter”} $oss = Get-ALOsLayer -websession $websession|where{$_.name -eq “Windows 2016 Standard”} $osrevs = get-aloslayerdetail -websession $websession -id $oss.id $osrevid = $osrevs.Revisions.OsLayerRevisionDetail|where{$_.state -eq “Deployable”}|Sort-Object revision -Descending|select -First 1 New-ALPlatformLayer -websession $websession -osrevid $osrevid.Id -name “Citrix XA VDA 7.18” -connectorid $connector.id -shareid $fileshare.id -diskformat $connector.ValidDiskFormats.DiskFormat -type Create

REMARKS
To see the examples, type: “get-help New-ALPlatformLayer -examples”. For more information, type: “get-help New-ALPlatformLayer -detailed”. For technical information, type: “get-help New-ALPlatformLayer -full”.

New-ALPlatformLayerRev

NAME
New-ALPlatformLayerRev
SYNOPSIS
Creates new platform layer version
SYNTAX
New-ALPlatformLayerRev [-websession] <Object> [-osrevid] <String> [-connectorid] <String> [[-Description] <String>] [-shareid] <String> [-layerid] <String> [-layerrevid] <String> [-version] <String> [-Diskname] <String> [[-size] <String>] [-diskformat] <String> [[-HypervisorPlatformTypeId] <String>] [[-ProvisioningPlatformTypeId] <String>] [[-BrokerPlatformTypeId] <String>] [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Creates new platform layer version
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-osrevid <String>
OS version layer id to use
-connectorid <String>
ID of Connector to use
-Description <String>
Description of the layer
-shareid <String>
ID of file share
-layerid <String>
Platform layer ID
-layerrevid <String>
Version ID to base version from
-version <String>
Version of the new layer
-Diskname <String>
Disk file name
-size <String>
Size of layer in MB (default 10240)
-diskformat <String>
Disk format of the image
-HypervisorPlatformTypeId <String>
Hypervisor type of platform layer (default=vsphere)
-ProvisioningPlatformTypeId <String>
Provisioning type MCS or PVS (default=mcs)
-BrokerPlatformTypeId <String>
Broker type used (default=xendesktop)

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$connector = Get-ALconnector -websession $websession -type “Create”

$shares = get-alremoteshare -websession $websession $oss = Get-ALOsLayer -websession $websession|where{$_.name -eq “Windows 10 x64”} $osrevs = get-aloslayerdetail -websession $websession -id $oss.id $osrevid = $osrevs.Revisions.OsLayerRevisionDetail|where{$_.state -eq “Deployable”}|Sort-Object revision -Descending|select -First 1 $plats = Get-ALPlatformlayer -websession $websession|where{$_.name -eq “Windows 10 VDA”} $platrevs = get-alplatformlayerDetail -websession $websession -id $plats.id $platformrevid = $platrevs.Revisions.PlatformLayerRevisionDetail|where{$_.state -eq “Deployable”}|Sort-Object revision -Descending|select -First 1

$params = @{ websession = $websession; osrevid = $osrevid.Id; connectorid = $connector.Id; shareid = $shares.id; layerid = $plats.Id; layerrevid = $platformrevid.id; version = “5.0”; Diskname = $plats.Name; Verbose = $true; Description = “test”; diskformat = $connector.ValidDiskFormats.DiskFormat;

REMARKS
To see the examples, type: “get-help New-ALPlatformLayerRev -examples”. For more information, type: “get-help New-ALPlatformLayerRev -detailed”. For technical information, type: “get-help New-ALPlatformLayerRev -full”.

new-AlVcenterConnector

NAME
new-AlVcenterConnector
SYNOPSIS
Creates vCenter Connector configuration
SYNTAX
new-AlVcenterConnector [-websession] <Object> [-name] <Object> [-dc] <Object> [-datastore] <Object> [-hostsystem] <Object> [-network] <Object> [-folder] <Object> [-connid] <Object> [-vcenterpass] <Object> [-username] <Object> [-vcenter] <Object> [[-vmtemplate] <Object>] [[-cachesize] <Object>] [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Creates vCenter Connector configuration
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-name <Object>
Name of the new connector
-dc <Object>
vCenter Datacenter id
-datastore <Object>
vCenter Datastore id
-hostsystem <Object>
vCenter ESXI hostname id
-network <Object>
vCenter network id
-folder <Object>
vCenter folder id
-connid <Object>
ELM platform connection id
-vcenterpass <Object>
vCenter password to authenticate
-username <Object>
vCenter username to authenticate
-vcenter <Object>
vCenter hostname
-vmtemplate <Object>
vCenter template id to use
-cachesize <Object>
Cache size for connector (GB)

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$Params = @{

Name = “MyconnectorTest” DC = $dc DATASTORE = $datastore HOSTSYSTEM = $hostvar NETWORK = $network FOLDER = $folder CONNID = $type.Id VMTEMPLATE = $template CACHESIZE = “250” }

new-AlVcenterConnector -websession $websession -username $usernamevc -vcenter $vcentername -vcenterpass $vcenterpassword @params

REMARKS
To see the examples, type: “get-help new-AlVcenterConnector -examples”. For more information, type: “get-help new-AlVcenterConnector -detailed”. For technical information, type: “get-help new-AlVcenterConnector -full”.
Commands

This page contains details on **** commands.

Remove-ALAppassignment

NAME
Remove-ALAppassignment
SYNOPSIS
Removes a layer(application) assignment to image(template)
SYNTAX
Remove-ALAppassignment [-websession] <Object> [-applayerid] <String> [-imageid] <String> [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Removes a layer(application) assignment to image(template)
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance

-applayerid <String>

-imageid <String>
Image or template where application should be removed

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$image = Get-ALimage -websession $websession|where{$_.name -eq “Accounting}

$app = Get-ALapplayer -websession $websession|where{$_.name -eq “Libre Office”} $apprevs = get-alapplayer -websession $websession -id $app.Id $apprevid = $apprevs.Revisions.AppLayerRevisionDetail|where{$_.state -eq “Deployable”}|Sort-Object revision -Descending|select -First 1 remove-alappassignment -websession $websession -applayerid $apprevid.LayerId -imageid $image.id

REMARKS
To see the examples, type: “get-help Remove-ALAppassignment -examples”. For more information, type: “get-help Remove-ALAppassignment -detailed”. For technical information, type: “get-help Remove-ALAppassignment -full”.

Remove-ALAppLayerRev

NAME
Remove-ALAppLayerRev
SYNOPSIS
Removes a app layer version
SYNTAX
Remove-ALAppLayerRev [-websession] <Object> [-appid] <Object> [-apprevid] <Object> [-fileshareid] <Object> [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Removes a app layer version
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-appid <Object>
Base application layer version id to use
-apprevid <Object>
Application revision version id to use

-fileshareid <Object>

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$fileshare = Get-ALRemoteshare -websession $websession

$appid = Get-ALapplayer -websession $websession | where{$_.name -eq “7-Zip”} $apprevid = get-alapplayerDetail -websession $websession -id $appid.Id $apprevid = $apprevid.Revisions.AppLayerRevisionDetail | where{$_.candelete -eq $true} | Sort-Object revision -Descending | select -First 1 remove-alapplayerrev -websession $websession -appid $appid.Id -apprevid $apprevid.id -fileshareid $fileshare.id

REMARKS
To see the examples, type: “get-help Remove-ALAppLayerRev -examples”. For more information, type: “get-help Remove-ALAppLayerRev -detailed”. For technical information, type: “get-help Remove-ALAppLayerRev -full”.

Remove-ALConnector

NAME
Remove-ALConnector
SYNOPSIS
Removes Connector
SYNTAX
Remove-ALConnector [-websession] <Object> [-connid] <Object> [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Removes Connector
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-connid <Object>
Connector ID

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Remove-ALConnector -websession $websession -connid $conn.Id

REMARKS
To see the examples, type: “get-help Remove-ALConnector -examples”. For more information, type: “get-help Remove-ALConnector -detailed”. For technical information, type: “get-help Remove-ALConnector -full”.

remove-ALDirectory

NAME
remove-ALDirectory
SYNOPSIS
Removes Directory Junction
SYNTAX
remove-ALDirectory [-websession] <Object> [-id] <String> [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Removes Directory Junction
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-id <String>
Directory Junction ID

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Remove-ALDirectory -websession $websession -id “4915204”

REMARKS
To see the examples, type: “get-help remove-ALDirectory -examples”. For more information, type: “get-help remove-ALDirectory -detailed”. For technical information, type: “get-help remove-ALDirectory -full”.

Remove-ALELAppassignment

NAME
Remove-ALELAppassignment
SYNOPSIS
Removes a user account or group to an applications elastic layer assignment
SYNTAX
Remove-ALELAppassignment [-websession] <Object> [-applayerid] <String> [-user] <String> [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Removes a user account or group to an applications elastic layer assignment
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance

-applayerid <String>

-user <String>
LDAP located user object

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$user = get-alldapobject -websession $websession -object “myusername”

remove-alelappassignment -websession $websession -apprevid $apprevid.Id -user $user

————————– EXAMPLE 2 ————————–

PS C:>$users = @(‘MyGroup1’,’MyGroup2’,’Domain Users’)

$finduser = $users|get-alldapobject -websession $websession $app = Get-ALapplayerDetail -websession $websession|where{$_.name -eq “Libre Office”} $apprevs = Get-ALapplayerDetail -websession $websession -id $app.Id $apprevid = $apprevs.Revisions.AppLayerRevisionDetail|where{$_.state -eq “Deployable”}|Sort-Object revision -Descending|select -First 1 $finduser|remove-alelappassignment -websession $websession -apprevid $apprevid.Id

REMARKS
To see the examples, type: “get-help Remove-ALELAppassignment -examples”. For more information, type: “get-help Remove-ALELAppassignment -detailed”. For technical information, type: “get-help Remove-ALELAppassignment -full”.

remove-ALicon

NAME
remove-ALicon
SYNOPSIS
Removes icon based on ID
SYNTAX
remove-ALicon [-websession] <Object> [-iconid] <String> [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Removes icon based on ID
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-iconid <String>
Icon ID

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Remove-ALicon -websession $websession -iconid “4259847”

REMARKS
To see the examples, type: “get-help remove-ALicon -examples”. For more information, type: “get-help remove-ALicon -detailed”. For technical information, type: “get-help remove-ALicon -full”.

Remove-ALImage

NAME
Remove-ALImage
SYNOPSIS
Removes image(template)
SYNTAX
Remove-ALImage [-websession] <Object> [-id] <String> [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Removes image(template)
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-id <String>
ID of image to remove

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$image = Get-ALimage -websession $websession|where{$_.name -eq “Windows 10 Accounting”}

Remove-ALImage -websession $websession -imageid $image.id

REMARKS
To see the examples, type: “get-help Remove-ALImage -examples”. For more information, type: “get-help Remove-ALImage -detailed”. For technical information, type: “get-help Remove-ALImage -full”.

Remove-ALOSLayerRev

NAME
Remove-ALOSLayerRev
SYNOPSIS
Removes a OS layer version
SYNTAX
Remove-ALOSLayerRev [-websession] <Object> [-osid] <Object> [-osrevid] <Object> [-fileshareid] <Object> [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Removes a OS layer version
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-osid <Object>
Base OS layer version id to use
-osrevid <Object>
OS revision version id to use

-fileshareid <Object>

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$fileshare = Get-ALRemoteshare -websession $websession

$osid = Get-ALOSlayer -websession $websession | where{$_.name -eq “Windows 10 x64”} $osrevid = Get-ALOSlayerDetail -websession $websession -id $osid.Id $osrevid = $osrevid.Revisions.OSLayerRevisionDetail | where{$_.candelete -eq $true} | Sort-Object revision -Descending | select -Last 1 remove-aloslayerrev -websession $websession -osid $osid.Id -osrevid $osrevid.id -fileshareid $fileshare.id

REMARKS
To see the examples, type: “get-help Remove-ALOSLayerRev -examples”. For more information, type: “get-help Remove-ALOSLayerRev -detailed”. For technical information, type: “get-help Remove-ALOSLayerRev -full”.

Remove-ALPlatformLayerRev

NAME
Remove-ALPlatformLayerRev
SYNOPSIS
Removes a platform layer version
SYNTAX
Remove-ALPlatformLayerRev [-websession] <Object> [-platformid] <Object> [-platformrevid] <Object> [-fileshareid] <Object> [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Removes a platform layer version
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-platformid <Object>
Base platform layer version id to use
-platformrevid <Object>
Platform revision version id to use

-fileshareid <Object>

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$fileshare = Get-ALRemoteshare -websession $websession

$platformid = Get-ALPlatformlayer -websession $websession | where{$_.name -eq “Windows 10 VDA”} $platformrevid = Get-ALPlatformlayerDetail -websession $websession -id $platformid.Id $platformrevid = $platformrevid.Revisions.PlatformLayerRevisionDetail | where{$_.candelete -eq $true} | Sort-Object revision -Descending | select -First 1 remove-alplatformlayerrev -websession $websession -platformid $platformid.Id -platformrevid $platformrevid.id -fileshareid $fileshare.id

REMARKS
To see the examples, type: “get-help Remove-ALPlatformLayerRev -examples”. For more information, type: “get-help Remove-ALPlatformLayerRev -detailed”. For technical information, type: “get-help Remove-ALPlatformLayerRev -full”.
Commands

This page contains details on **** commands.

Set-ALAdminUser

NAME
Set-ALAdminUser
SYNOPSIS
Sets Administrator User Password
SYNTAX
Set-ALAdminUser [-websession] <Object> [[-Password] <String>] [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Sets Administrator User Password
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-Password <String>
New Password for the User

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Set-ALAdminUser -websession $websession -Password $PlainPassword -Verbose

REMARKS
To see the examples, type: “get-help Set-ALAdminUser -examples”. For more information, type: “get-help Set-ALAdminUser -detailed”. For technical information, type: “get-help Set-ALAdminUser -full”.

Set-ALApplayer

NAME
Set-ALApplayer
SYNOPSIS
Edits values of an application layer
SYNTAX
Set-ALApplayer [-websession] <Object> [-id] <String> [[-name] <String>] [[-description] <String>] [[-scriptpath] <String>] [[-icon] <String>] [[-OsLayerSwitching] <String>] [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Edits values of an application layer
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-id <String>
ID of the applayer to edit
-name <String>
Name of the application layer
-description <String>
Description of the layer
-scriptpath <String>
Path of script to be run
-icon <String>
Icon ID
-OsLayerSwitching <String>
Allow OS Switching NotBoundToOsLayer=ON BoundToOsLayer=OFF

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$app = Get-ALapplayer -websession $websession|where{$_.name -eq “7-Zip”}

Set-alapplayer -websession $websession -name “7-Zip” -description “7-zip” -id $app.Id -scriptpath “C:NeededScript.ps1” -OsLayerSwitching BoundToOsLayer

REMARKS
To see the examples, type: “get-help Set-ALApplayer -examples”. For more information, type: “get-help Set-ALApplayer -detailed”. For technical information, type: “get-help Set-ALApplayer -full”.

Set-ALApplayerRev

NAME
Set-ALApplayerRev
SYNOPSIS
Edits values of an application layer version
SYNTAX
Set-ALApplayerRev [-websession] <Object> [-layerid] <String> [-revid] <String> [[-name] <String>] [[-description] <String>] [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Edits values of an application layer version
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-layerid <String>
ID of the applayer to edit
-revid <String>
ID of the applayer version to edit
-name <String>
Name of the application layer version
-description <String>
Description of the layer version

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$app = Get-ALapplayer -websession $websession|where{$_.name -eq “7-Zip”}

$appdetail = Get-ALapplayerDetail -websession $websession -id $app.Id $appver = $appdetail.Revisions.AppLayerRevisionDetail | select-object -last 1 Set-AlApplayerRev -websession $websession -layerid $app.Id -revid $appver.Id -name “21.06” -description “7-zip 21.06 (2021-11-24)”

REMARKS
To see the examples, type: “get-help Set-ALApplayerRev -examples”. For more information, type: “get-help Set-ALApplayerRev -detailed”. For technical information, type: “get-help Set-ALApplayerRev -full”.

Set-ALConnectorCred

NAME
Set-ALConnectorCred
SYNOPSIS
Sets Connector Credentials
SYNTAX
Set-ALConnectorCred [-websession] <Object> [-username] <String> [-password] <String> [-config] <PSObject> [-connector] <PSObject> [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Sets Connector Username and Pass
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-username <String>
Username to be used for Connector
-password <String>
password to be used for Connector
-config <PSObject>
Configuration settings for specific connector (Use get-alconnectordetail)
-connector <PSObject>
Configurations for specific connector (Use get-alconnector)

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Set-ALconnectorCred -websession $websession -config $ConnectorConfig -connector $connector -username “domainfirst.last” -password “Test123

REMARKS
To see the examples, type: “get-help Set-ALConnectorCred -examples”. For more information, type: “get-help Set-ALConnectorCred -detailed”. For technical information, type: “get-help Set-ALConnectorCred -full”.

set-aldirectory

NAME
set-aldirectory
SYNOPSIS
Sets properties of an existing Directory Junction
SYNTAX
set-aldirectory [-websession] <Object> [-id] <Object> [[-name] <String>] [[-serveraddress] <String>] [[-port] <String>] [[-usessl] <String>] [[-username] <String>] [-adpassword] <String> [-force] [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Sets properties of an existing Directory Junction
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-id <Object>
Junction ID
-name <String>
Junction name
-serveraddress <String>
AD server to connect
-port <String>
AD port (uses 389 and 636 by default)
-usessl <String>
Connect via SSL
-username <String>
AD username (eg admin@domain.com)
-adpassword <String>
AD password
-force [<SwitchParameter>]
Skip AD tests

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Set-aldirectory -websession $websession -adpassword “MYPASSWORD” -id $directory.id

————————– EXAMPLE 2 ————————–

PS C:>Set-aldirectory -websession $websession -adpassword “MYPASSWORD” -id $directory.id -name “MYNEWNAME”

REMARKS
To see the examples, type: “get-help set-aldirectory -examples”. For more information, type: “get-help set-aldirectory -detailed”. For technical information, type: “get-help set-aldirectory -full”.

Set-ALImage

NAME
Set-ALImage
SYNOPSIS
Edits values of a image(template)
SYNTAX
Set-ALImage [-websession] <Object> [-id] <String> [[-name] <String>] [[-description] <String>] [[-connectorid] <String>] [[-osrevid] <String>] [[-platrevid] <String>] [[-applayerid] <Array>] [[-apprevid] <Array>] [[-ElasticLayerMode] <String>] [[-diskformat] <String>] [[-size] <String>] [[-icon] <String>] [[-syspreptype] <String>] [[-LayeredImageDiskFilename] <String>] [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Edits values of a image(template)
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-id <String>
ID of image
-name <String>
Name of the image
-description <String>
Description of the image
-connectorid <String>
ID of Connector to use
-osrevid <String>
Operating system layer version ID
-platrevid <String>
Platform layer version ID
-applayerid <Array>
Application layer ID
-apprevid <Array>
Application layer version ID
-ElasticLayerMode <String>
Elastic Layer setting for the image. Options “None”,”Session”,”Office365”,”SessionOffice365”,”Desktop”
-diskformat <String>
Disk format of the image
-size <String>
Size of layer in MB
-icon <String>
Icon ID
-syspreptype <String>
Syspreptype for the Image. Options “None”,”Offline”

-LayeredImageDiskFilename <String>

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$fileshare = Get-ALRemoteshare -websession $websession

$connector = Get-ALconnector -websession $websession -type Create|where{$_.name -eq “MYvCenter”} $oss = Get-ALOsLayer -websession $websession|where{$_.name -eq “Windows 10 x64”} $osrevs = get-aloslayerdetail -websession $websession -id $oss.id $osrevid = $osrevs.Revisions.OsLayerRevisionDetail|where{$_.state -eq “Deployable”}|Sort-Object revision -Descending|select -First 1 $plats = Get-ALPlatformlayer -websession $websession|where{$_.name -eq “Windows 10 VDA”} $platrevs = get-alplatformlayerdetail -websession $websession -id $plats.id $platformrevid = $platrevs.Revisions.PlatformLayerRevisionDetail|where{$_.state -eq “Deployable”}|Sort-Object revision -Descending|select -First 1 $image = Get-ALimage -websession $websession|where{$_.name -eq “Windows 10 Accounting”} Set-alimage -websession $websession -name $images.Name -description “My new description” -connectorid $connector.id -osrevid $osrevid.Id -platrevid $platformrevid.id -id $image.Id -ElasticLayerMode Session -diskformat $connector.ValidDiskFormats.DiskFormat -syspreptype Offline

### Edit image with latest revision for a specific app or apps *** $apps = @(“Winscp”,”7-zip”) $applayerids = foreach ($app in $apps){Get-ALapplayer -websession $websession|where{$_.name -eq $app}} $apprevs = foreach ($applayerid in $applayerids){get-alapplayerDetail -websession $websession -id $applayerid.Id} $apprevid = foreach ($apprev in $apprevs){$apprev.Revisions.AppLayerRevisionDetail|where{$_.state -eq “Deployable”}|Sort-Object DisplayedVersion -Descending|select -First 1} Set-alimage -websession $websession -name $images.Name -description “My new description” -connectorid $connector.id -osrevid $osrevid.Id -platrevid $platformrevid.id -id $image.Id -ElasticLayerMode Session -diskformat $connector.ValidDiskFormats.DiskFormat -applayerid $apprevid.LayerId -apprevid $apprevid.Id -syspreptype Offline

REMARKS
To see the examples, type: “get-help Set-ALImage -examples”. For more information, type: “get-help Set-ALImage -detailed”. For technical information, type: “get-help Set-ALImage -full”.

Set-ALPlatformlayer

NAME
Set-ALPlatformlayer
SYNOPSIS
Edits values of an platform layer
SYNTAX
Set-ALPlatformlayer [-websession] <Object> [-id] <String> [[-name] <String>] [[-description] <String>] [[-scriptpath] <String>] [[-icon] <String>] [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Edits values of an platform layer
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-id <String>
ID of the platformlayer to edit
-name <String>
Name of the platform layer
-description <String>
Description of the layer
-scriptpath <String>
Path of script to be run
-icon <String>
Icon ID

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>$platform = Get-ALplatformlayer -websession $websession|where{$_.name -eq “XenDesktop”}

Set-ALPlatformlayer -websession $websession -name “XenDesktop” -description “Xendesktop-Layer” -id $platform.Id -scriptpath “C:NeededScript.ps1”

REMARKS
To see the examples, type: “get-help Set-ALPlatformlayer -examples”. For more information, type: “get-help Set-ALPlatformlayer -detailed”. For technical information, type: “get-help Set-ALPlatformlayer -full”.

Set-alVcenterConnector

NAME
Set-alVcenterConnector
SYNOPSIS
Sets Vcenter Connector configuration
SYNTAX
Set-alVcenterConnector [-websession] <Object> [-config] <Object> [-force] [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Sets Vcenter Connector configuration
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-config <Object>
Connector Config
-force [<SwitchParameter>]
Skip Verify

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Set-VcenterConnector -websession $websession -config $connectorconfig

REMARKS
To see the examples, type: “get-help Set-alVcenterConnector -examples”. For more information, type: “get-help Set-alVcenterConnector -detailed”. For technical information, type: “get-help Set-alVcenterConnector -full”.
Commands

This page contains details on **** commands.

Stop-ALWorkTicket

NAME
Stop-ALWorkTicket
SYNOPSIS
Stops or cancels a running layer operation process
SYNTAX
Stop-ALWorkTicket [-websession] <Object> [-id] <String> [-WhatIf] [-Confirm] [<CommonParameters>]
DESCRIPTION
Stops or cancels a running layer operation process
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance

-id <String>

-WhatIf [<SwitchParameter>]

-Confirm [<SwitchParameter>]

<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>Stop-ALWorkTicket -websession $websession

REMARKS
To see the examples, type: “get-help Stop-ALWorkTicket -examples”. For more information, type: “get-help Stop-ALWorkTicket -detailed”. For technical information, type: “get-help Stop-ALWorkTicket -full”.
Commands

This page contains details on **** commands.

test-aldirectory

NAME
test-aldirectory
SYNOPSIS
Test Directory Junction connectivity
SYNTAX
test-aldirectory [-websession] <Object> [-serveraddress] <String> [[-port] <String>] [-usessl] [<CommonParameters>]
DESCRIPTION
Test Directory Junction connectivity
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-serveraddress <String>
AD server to connect
-port <String>
AD port (uses 389 and 636 by default)
-usessl [<SwitchParameter>]
Connect via SSL
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>test-aldirectory -websession $websession -serveraddress “mydc.domain.com” -Verbose

————————– EXAMPLE 2 ————————–

PS C:>test-aldirectory -websession $websession -serveraddress “mydc.domain.com” -Verbose -usessl

REMARKS
To see the examples, type: “get-help test-aldirectory -examples”. For more information, type: “get-help test-aldirectory -detailed”. For technical information, type: “get-help test-aldirectory -full”.

test-aldirectoryauth

NAME
test-aldirectoryauth
SYNOPSIS
Test Directory Junction authentication
SYNTAX
test-aldirectoryauth [-websession] <Object> [-serveraddress] <String> [[-port] <String>] [-usessl] [-username] <String> [-adpassword] <String> [<CommonParameters>]
DESCRIPTION
Test Directory Junction authentication
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-serveraddress <String>
AD server to connect
-port <String>
AD port (uses 389 and 636 by default)
-usessl [<SwitchParameter>]
Connect via SSL
-username <String>
AD username (eg admin@domain.com)
-adpassword <String>
AD password
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>test-aldirectoryauth -websession $websession -serveraddress “mydc.domain.com” -Verbose -username “admin@domain.com” -adpassword “MYPASSWORD”

————————– EXAMPLE 2 ————————–

PS C:>test-aldirectoryauth -websession $websession -serveraddress “mydc.domain.com” -Verbose -usessl -username “admin@domain.com” -adpassword “MYPASSWORD”

REMARKS
To see the examples, type: “get-help test-aldirectoryauth -examples”. For more information, type: “get-help test-aldirectoryauth -detailed”. For technical information, type: “get-help test-aldirectoryauth -full”.

test-aldirectorydn

NAME
test-aldirectorydn
SYNOPSIS
Test Directory Junction DN path
SYNTAX
test-aldirectorydn [-websession] <Object> [-serveraddress] <String> [[-port] <String>] [-usessl] [-username] <String> [-adpassword] <String> [-basedn] <String> [<CommonParameters>]
DESCRIPTION
Test Directory Junction DN path
PARAMETERS
-websession <Object>
Existing Webrequest session for ELM Appliance
-serveraddress <String>
AD server to connect
-port <String>
AD port (uses 389 and 636 by default)
-usessl [<SwitchParameter>]
Connect via SSL
-username <String>
AD username (eg admin@domain.com)
-adpassword <String>
AD password
-basedn <String>
Base AD DN
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).

————————– EXAMPLE 1 ————————–

PS C:>test-aldirectorydn -websession $websession -serveraddress “mydc.domain.com” -Verbose -username “admin@domain.com” -adpassword “MYPASSWORD” -basedn DC=domain,DC=com

————————– EXAMPLE 2 ————————–

PS C:>test-aldirectorydn -websession $websession -serveraddress “mydc.domain.com” -Verbose -usessl -username “admin@domain.com” -adpassword “MYPASSWORD” -basedn DC=domain,DC=com

REMARKS
To see the examples, type: “get-help test-aldirectorydn -examples”. For more information, type: “get-help test-aldirectorydn -detailed”. For technical information, type: “get-help test-aldirectorydn -full”.

Application Assignments

Add app layers to an image

$image = Get-ALimage -websession $websession|where{$_.name -eq "Accounting"}
$app = Get-ALapplayer -websession $websession|where{$_.name -eq "Libre Office"}
$apprevs = get-alapplayerDetail -websession $websession -id $app.Id
$apprevid = $apprevs.Revisions.AppLayerRevisionDetail|where{$_.state -eq "Deployable"}|Sort-Object DisplayedVersion -Descending|select -First 1
add-alappassignment -websession $websession -apprevid $apprevid.id -imageid $image.id

Remove app layers from an image

$image = Get-ALimage -websession $websession|where{$_.name -eq "Accounting"}
$app = Get-ALapplayer -websession $websession|where{$_.name -eq "Libre Office"}
$apprevs = Get-ALapplayerDetail -websession $websession -id $app.Id
$apprevid = $apprevs.Revisions.AppLayerRevisionDetail|where{$_.state -eq "Deployable"}|Sort-Object DisplayedVersion -Descending|select -First 1
remove-alappassignment -websession $websession -applayerid $apprevid.LayerId -imageid $image.id

Add user\group to Elastic Layers

$users = @('MyGroup1','MyGroup2','Domain Users')
$finduser = $users|get-alldapobject -websession $websession
$app = Get-ALapplayer -websession $websession|where{$_.name -eq "Libre Office"}
$apprevs = Get-ALapplayerDetail -websession $websession -id $app.Id
$apprevid = $apprevs.Revisions.AppLayerRevisionDetail|where{$_.state -eq "Deployable"}|Sort-Object DisplayedVersion -Descending|select -First 1
$add = $finduser|add-alelappassignment -websession $websession -apprevid $apprevid.Id

Remove user\group from Elastic Layers

$users = @('MyGroup1','MyGroup2','Domain Users')
$finduser = $users|get-alldapobject -websession $websession
$app = Get-ALapplayer -websession $websession|where{$_.name -eq "Libre Office"}
$apprevs = Get-ALapplayerDetail -websession $websession -id $app.Id
$apprevid = $apprevs.Revisions.AppLayerRevisionDetail|where{$_.state -eq "Deployable"}|Sort-Object DisplayedVersion -Descending|select -First 1
$finduser|remove-alelappassignment -websession $websession -apprevid $apprevid.Id

Application Layers

New Application Layer

$connector = Get-ALconnector -websession $websession -type Create|where{$_.name -eq "MYvCenter"}
$fileshare = Get-ALRemoteshare -websession $websession
$oss = Get-ALOsLayer -websession $websession|where{$_.name -eq "Windows 10 x64"}
$osrevs = get-aloslayerDetail -websession $websession -id $oss.id
$osrevid = $osrevs.Revisions.OsLayerRevisionDetail|where{$_.state -eq "Deployable"}|Sort-Object DisplayedVersion -Descending|select -First 1
new-alapplayer -websession $websession -version "1.0" -name "Accounting APP" -description "Accounting application" -connectorid $connector.id -osrevid $osrevid.Id -diskformat $connector.ValidDiskFormats.DiskFormat -OsLayerSwitching BoundToOsLayer -fileshareid $fileshare.id

New Application Layer Version

$fileshare = Get-ALRemoteshare -websession $websession
$connector = Get-ALconnector -websession $websession -type Create|where{$_.name -eq "MYvCenter"}
$app = Get-ALapplayer -websession $websession|where{$_.name -eq "7-Zip"}
$oss = Get-ALOsLayer -websession $websession
$osrevs = get-aloslayerdetail -websession $websession -id $app.AssociatedOsLayerId
$osrevid = $osrevs.Revisions.OsLayerRevisionDetail|where{$_.state -eq "Deployable"}|Sort-Object DisplayedVersion -Descending|select -First 1
$apprevs = get-alapplayerDetail -websession $websession -id $app.Id
$apprevid = $apprevs.Revisions.AppLayerRevisionDetail|where{$_.state -eq "Deployable"}|Sort-Object DisplayedVersion -Descending|select -First 1
new-alapplayerrev -websession $websession -version "9.0" -name $app.Name -connectorid $connector.id -appid $app.Id -apprevid $apprevid.id -osrevid $osrevid.Id -diskformat $connector.ValidDiskFormats.DiskFormat -fileshareid $fileshare.id

Set Application Layer

$app = Get-ALapplayer -websession $websession|where{$_.name -eq "7-Zip"}
Set-alapplayer -websession $websession -name "7-Zip" -description "7-zip" -id $app.Id -scriptpath "C:\NeededScript.ps1" -OsLayerSwitching BoundToOsLayer

Remove Application Layer Revision

$fileshare = Get-ALRemoteshare -websession $websession
$appid = Get-ALapplayer -websession $websession | where{$_.name -eq "7-Zip"}
$apprevid = get-alapplayerDetail -websession $websession -id $appid.Id
$apprevid = $apprevid.Revisions.AppLayerRevisionDetail | where{$_.candelete -eq $true} | Sort-Object DisplayedVersion -Descending | select -First 1
remove-alapplayerrev -websession $websession -appid $appid.Id -apprevid $apprevid.id -fileshareid $fileshare.id

Connect and Disconnect

Connect

$aplip = "192.168.1.5"
$pass = "Password"
$username = "administrator"
$SecurePassword = ConvertTo-SecureString $Pass -AsPlainText -Force
$Credential = New-Object System.Management.Automation.PSCredential ($Username, $SecurePassword)
$websession = Connect-alsession -aplip $aplip -Credential $Credential -Verbose

Disconnect

disconnect-alsession -websession $websession

Connectors

General

Get Connector Detail

$conn = get-alconnector -websession $websession -type Publish -name "MyconnectorTest7"
get-alconnectordetail -websession $websession -connid $conn.Id -port $conn.ConfigurationSslPort

Remove Connector

$conn = get-alconnector -websession $websession -type Publish -name "MyconnectorTest7"
Remove-ALConnector -websession $websession -connid $conn.Id -Confirm:$false

Set Connector Credentials

$conn = get-alconnector -websession $websession -type Publish -name "MyconnectorTest7"
$conndetail = get-alconnectordetail -websession $websession -connid $conn.Id -port $conn.ConfigurationSslPort
Set-ALconnectorCred -websession $websession -config $conndetail -connector $conn -username "domain\first.last" -password "Test123

vCenter

Get vCenter connector(s) information

Get-alVcenterConnector -websession $websession

Get vCenter Resource Info

$vcenter = Get-alVcenterConnector -websession $websession
$dc = get-alvcenterobject -websession $websession -configid $vcenter.pccId -username $vcenter.pccConfig.userName -vcenter $vcenter.pccConfig.vCenterServer -type datacenter -configid $vcenter.pccId
$folder 
$hostvar = get-alvcenterobject -websession $websession -configid $vcenter.pccId -username $vcenter.pccConfig.userName -vcenter $vcenter.pccConfig.vCenterServer -type Host -dc $dc.value
$datastore = get-alvcenterobject -websession $websession -configid $vcenter.pccId -username $vcenter.pccConfig.userName -vcenter $vcenter.pccConfig.vCenterServer -type Datastore -dc $dc.value
$network = get-alvcenterobject -websession $websession -configid $vcenter.pccId -username $vcenter.pccConfig.userName -vcenter $vcenter.pccConfig.vCenterServer -type network -dc $dc.value
$template = get-alvcenterobject -websession $websession -configid $vcenter.pccId -username $vcenter.pccConfig.userName -vcenter $vcenter.pccConfig.vCenterServer -type vmTemplate -vmfolder $dc.vmFolder
$folder = get-alvcenterobject -websession $websession -configid $vcenter.pccId -username $vcenter.pccConfig.userName -vcenter $vcenter.pccConfig.vCenterServer -type vmfolder -vmfolder $dc.vmFolder

Validate and Set vCenter Password

$vcenter = Get-alVcenterConnector -websession $websession
$vcenter.pccConfig|Add-Member -NotePropertyName "password" -NotePropertyValue "mysecretpassword"

Set-alVcenterConnector -websession $websession -config $vcenter

Create vCenter Connector

$vcenterpassword = "mysupersecretpassword"
$usernamevc = "domain\username"
$vcentername = "myvcenter.domain.local"
$type = get-alconnectortype -websession $websession -name "Citrix MCS for vSphere"
$dc = get-alvcenterobject -websession $websession -username $usernamevc -vcenter $vcentername -vcenterpass $vcenterpassword -type Datacenter -name "Lab"
$hostvar = get-alvcenterobject -websession $websession -username $usernamevc -vcenter $vcentername -vcenterpass $vcenterpassword -type Host -dc $dc.value -name "myhostname"
$datastore = get-alvcenterobject -websession $websession -username $usernamevc -vcenter $vcentername -vcenterpass $vcenterpassword -type Datastore -dc $dc.value -name "nydatastire"
$network = get-alvcenterobject -websession $websession -username $usernamevc -vcenter $vcentername -vcenterpass $vcenterpassword -type network -dc $dc.value -name "VLAN10"
$template = get-alvcenterobject -websession $websession -username $usernamevc -vcenter $vcentername -vcenterpass $vcenterpassword -type vmTemplate -vmfolder $dc.vmFolder -name "CALTEMP"
$folder = get-alvcenterobject -websession $websession -username $usernamevc -vcenter $vcentername -vcenterpass $vcenterpassword -type vmfolder -vmfolder $dc.vmFolder -name "Unidesk"


$Params = @{
  Name = "MyconnectorTest"
  DC = $dc
  DATASTORE = $datastore
  HOSTSYSTEM = $hostvar
  NETWORK = $network
  FOLDER = $folder
  CONNID = $type.Id
  VMTEMPLATE = $template
  CACHESIZE = "250"
}

new-AlVcenterConnector -websession $websession -username $usernamevc -vcenter $vcentername -vcenterpass $vcenterpassword @params

Directory Junction

New Directory Junction

new-aldirectory -websession $websession -serveraddress "mydc.domain.com" -usessl -username "admin@domain.com" -adpassword "MYPASSWORD" -basedn DC=domain,DC=com -name "Mydirectory"

Get ALL Directory Junctions

Get-ALDirectory -websession $websession

Get Directory Junction Info

get-aldirectorydetail -websession $websession -id $directory.id

Set Directory Junction Info

Set-aldirectory -websession $websession -adpassword "MYPASSWORD" -id $directory.id -name "MYNEWNAME"

Delete Directory Junction

Remove-ALDirectory -websession $websession -id "4915204"

User Info

$dir = Get-ALDirectory -websession $websession|where{$_.name -eq "MyDirectory"}
$userid = Get-ALUserList -websession $websession -junctionid $dir.id -dn "CN=Users,DC=mydomain,DC=com"|Where-Object {$_.loginname -eq "myusername"}
$userdetail = Get-ALUserDetail -websession $websession -junctionid $dir.id -ldapguid $userid.DirectoryId.LdapGuid -dn $userid.DirectoryId.LdapDN -id $userid.DirectoryId.UnideskId
$groups = Get-ALUserGroupMembership -websession $websession -junctionid $dir.id -id $User.DirectoryId.UnideskId -ldapguid $user.FullId.LdapGuid -ldapdn $user.FullId.LdapDN -sid $userdetail.FullId.sid
#build group array for search
$groupids = @()
$groups|%{$groupids += $_.DirectoryId.UnideskId}
#add user to group array
$groupids += $User.DirectoryId.UnideskId
$apps = Get-ALUserAssignment -websession $websession -id $userid.DirectoryId.UnideskId -Verbose
$apps|Select-Object LayerName,CurrentRevision,PendingRevision,AssignedViaDisplayName

Export and Import Layers

Gets “Exportable” Layers

$mypath = "\\mynas\layershare\"
Get-ALExportableRev -websession $websession -sharepath $mypath

Gets “Exportable” layers including ones that are already present

$mypath = "\\mynas\layershare\"
Get-ALExportableRev -websession $websession -sharepath $mypath -showall

Gets “Importable” Layers

$mypath = "\\mynas\layershare\"
Get-ALimportableRev -websession $websession -sharepath $mypath

Gets “Importable” layers including ones that are already present

$mypath = "\\mynas\layershare\"
Get-ALimportableRev -websession $websession -sharepath $mypath -showall

Export Layers

Exports all “exportable” layers to fileshare

$mypath = "\\mynas\layershare\"
Get-ALExportableRev -websession $websession -sharepath $mypath|Export-ALlayerrev -websession $websession -sharepath $mypath

Exports all “exportable” layers to fileshare with authenication. (Press CTRL key to select more than one layer)

$mypath = "\\mynas\layershare\"
$myusername = "mydomain@domain.com"
$sharepw = "mysupersecret"
Get-ALExportableRev -websession $websession -sharepath $mypath -username $myusername -sharepw $sharepw|Export-ALlayerrev -websession $websession -sharepath $mypath -username $myusername -sharepw $sharepw

Allows user to select which layers to export. (Press CTRL key to select more than one layer)

$mypath = "\\mynas\layershare\"
Get-ALExportableRev -websession $websession -sharepath $mypath|Out-gridview -PassThru|Export-ALlayerrev -websession $websession -sharepath $mypath

Import Layers

Imports all “importable” layers to fileshare

$mypath = "\\mynas\layershare\"
Get-ALImportableRev -websession $websession -sharepath $mypath|Import-ALlayerrev -websession $websession -sharepath $mypath

Imports all “importable” layers to fileshare with authenication. (Press CTRL key to select more than one layer)

$mypath = "\\mynas\layershare\"
$myusername = "mydomain@domain.com"
$sharepw = "mysupersecret"
Get-ALImportableRev -websession $websession -sharepath $mypath -username $myusername -sharepw $sharepw|Import-ALlayerrev -websession $websession -sharepath $mypath -username $myusername -sharepw $sharepw

Allows user to select which layers to import. (Press CTRL key to select more than one layer)

$mypath = "\\mynas\layershare\"
Get-ALImportableRev -websession $websession -sharepath $mypath|Out-gridview -PassThru|Import-ALlayerrev -websession $websession -sharepath $mypath

Icons

Get icon ids

Get-ALicon -websession $websession

Export all icons (save as png)

$icons = Get-ALicon -websession $websession

foreach($icon in $icons)
{
    #No authentication needed to grab image
    Invoke-WebRequest -uri $($icon.url) -OutFile ("D:\Temp\icons\" + $($icon.iconid)+".png")
}

Get icon associations

Get-ALiconassoc -websession $websession -iconid "196608"

Create new icon

$iconfile = "D:\Temp\icons\myiconpic.png"
$temp = new-alicon -WebSession $websession -iconfile $iconfile -Verbose

Remove icon

Remove-ALicon -websession $websession -iconid "4259840"

Images

Get Image Composition

$image = Get-ALImageComp -websession $websession -name "Windows 10 Accounting"
$image.OSLayer
$image.PlatformLayer
$image.AppLayer

Create New Image

$fileshare = Get-ALRemoteshare -websession $websession
$connector = Get-ALconnector -websession $websession -type Create|where{$_.name -eq "MYvCenter"}
$oss = Get-ALOsLayer -websession $websession|where{$_.name -eq "Windows 10 x64"}
$osrevs = get-aloslayerDetail -websession $websession -id $oss.id
$osrevid = $osrevs.Revisions.OsLayerRevisionDetail|where{$_.state -eq "Deployable"}|Sort-Object DisplayedVersion -Descending|select -First 1
$plats = get-alplatformlayer -websession $websession|where{$_.name -eq "Windows 10 VDA"}
$platrevs = get-alplatformlayerdetail -websession $websession -id $plats.id
$platformrevid = $platrevs.Revisions.PlatformLayerRevisionDetail|where{$_.state -eq "Deployable"}|Sort-Object DisplayedVersion -Descending|select -First 1
#Application IDs
$apps = @("Winscp","7-zip")
$appids = @()
foreach ($app in $apps)
{
    $applayerid = Get-ALapplayer -websession $websession|where{$_.name -eq $app}
    $apprevs = get-alapplayerDetail -websession $websession -id $applayerid.Id
    $apprevid = $apprevs.Revisions.AppLayerRevisionDetail|where{$_.state -eq "Deployable"}|Sort-Object DisplayedVersion -Descending|select -First 1
    $appids += $apprevid.Id
}
new-alimage -websession $websession -name "Windows 10 Accounting" -description "Accounting" -connectorid $connector.id -osrevid $osrevid.Id -appids $appids -platrevid $platformrevid.id -diskformat $connector.ValidDiskFormats.DiskFormat -ElasticLayerMode Session

Edit Image

$fileshare = Get-ALRemoteshare -websession $websession
$connector = Get-ALconnector -websession $websession -type Create|where{$_.name -eq "MYvCenter"}
$oss = Get-ALOsLayer -websession $websession|where{$_.name -eq "Windows 10 x64"}
$osrevs = get-aloslayerdetail -websession $websession -id $oss.id
$osrevid = $osrevs.Revisions.OsLayerRevisionDetail|where{$_.state -eq "Deployable"}|Sort-Object DisplayedVersion -Descending|select -First 1
$plats = Get-ALPlatformlayer -websession $websession|where{$_.name -eq "Windows 10 VDA"}
$platrevs = get-alplatformlayerdetail -websession $websession -id $plats.id
$platformrevid = $platrevs.Revisions.PlatformLayerRevisionDetail|where{$_.state -eq "Deployable"}|Sort-Object DisplayedVersion -Descending|select -First 1
$image = Get-ALimage -websession $websession|where{$_.name -eq "Windows 10 Accounting"}
Set-alimage -websession $websession -name $images.Name -description "My new description" -connectorid $connector.id -osrevid $osrevid.Id -platrevid $platformrevid.id -id $image.Id -ElasticLayerMode Session -diskformat $connector.ValidDiskFormats.DiskFormat

Edit image with latest revision for a specific app or apps

$apps = @("Winscp","7-zip")
$applayerids = foreach ($app in $apps){Get-ALapplayer -websession $websession|where{$_.name -eq $app}}
$apprevs = foreach ($applayerid in $applayerids){get-alapplayerDetail -websession $websession -id $applayerid.Id}
$apprevid = foreach ($apprev in $apprevs){$apprev.Revisions.AppLayerRevisionDetail|where{$_.state -eq "Deployable"}|Sort-Object DisplayedVersion -Descending|select -First 1}
Set-alimage -websession $websession -name $images.Name -description "My new description" -connectorid $connector.id -osrevid $osrevid.Id -platrevid $platformrevid.id -id $image.Id -ElasticLayerMode Session -diskformat $connector.ValidDiskFormats.DiskFormat -applayerid $apprevid.LayerId -apprevid $apprevid.Id

Remove Image

$image = Get-ALimage -websession $websession|where{$_.name -eq "Windows 10 Accounting"}
Remove-ALImage -websession $websession -imageid $image.id

Publish Image

$image = Get-ALimage -websession $websession|where{$_.name -eq "Windows 10 Accounting"}
invoke-alpublish -websession $websession -imageid $image.id

Clone Image

$image = Get-ALimage -websession $websession | where {$_.name -eq "Windows 10 Accounting"}
New-ALImageClone -websession $websession -imageid $image.Id -Confirm:$false -OutVariable ALImageClone

Local Users

Get Local Users

Get-ALLocalUser -websession $websession

Set Local Admin Password

Set-ALAdminUser -websession $websession -Password $PlainPassword -Verbose

Operating System Layers

Import Operating System

vCenter

$fileshare = Get-ALRemoteshare -websession $websession
$connector = Get-ALconnector -websession $websession -type Create|where{$_.name -eq "MYvCenter"}
$shares = get-alremoteshare -websession $websession
#vCenter Command
$vm = Get-VM "Windows2016VM"
$vmid = $vm.Id -replace "VirtualMachine-",""
$response = import-aloslayer -websession $websession -vmname $vm.name -connectorid $connector.id -shareid $fileshare.id -name "Windows 2016" -version "1.0" -vmid $vmid -hypervisor esxi

Citrix Hypervisor (XenServer)

Thanks Dan Feller!

$fileshare = Get-ALRemoteshare -websession $websession
$connector = Get-ALconnector -websession $websession -type Create|where{$_.name -eq "MYXenServer"}
$shares = get-alremoteshare -websession $websession
#Xen Command
$XenVM = get-xenvm -name $VMName
$response = import-aloslayer -websession $websession -vmname $vmname -connectorid $connector.id -shareid $fileshare.id -name "Windows 2016" -version "1.0" -vmid $XenVM.uuid -hypervisor xenserver

New Operating System Layer Version

$fileshare = Get-ALRemoteshare -websession $websession
$connector = Get-ALconnector -websession $websession -type Create|where{$_.name -eq "MYvCenter"}
$oss = Get-ALOsLayer -websession $websession|where{$_.name -eq "Windows 2016 Standard"}
$osrevs = get-aloslayerDetail -websession $websession -id $oss.id
$osrevid = $osrevs.Revisions.OsLayerRevisionDetail|where{$_.state -eq "Deployable"}|Sort-Object DisplayedVersion -Descending|select -First 1
$myosrev = new-aloslayerrev -websession $websession -version "2.0" -connectorid $connector.Id -osid $oss.id -osrevid $osrevid.id -diskformat $connector.ValidDiskFormats.DiskFormat -shareid $fileshare.id

#Keep checking for change in task
do{
$status = get-alstatus -websession $websession -id $myosrev.WorkTicketId
Start-Sleep -Seconds 5
} Until ($status.state -eq "ActionRequired")
#use function to extract VM NAME from status message
get-alvmname -message $status.WorkItems.WorkItemResult.Status

Remove Operating System Layer Revision

$fileshare = Get-ALRemoteshare -websession $websession
$osid = Get-ALOSlayer -websession $websession | where{$_.name -eq "Windows 10 x64"}
$osrevid = Get-ALOSlayerDetail -websession $websession -id $osid.Id
$osrevid = $osrevid.Revisions.OSLayerRevisionDetail | where{$_.candelete -eq $true} | Sort-Object DisplayedVersion -Descending | select -Last 1
remove-aloslayerrev -websession $websession -osid $osid.Id -osrevid $osrevid.id -fileshareid $fileshare.id

Platform Layers

New Platform Layer

$fileshare = Get-ALRemoteshare -websession $websession
$connector = Get-ALconnector -websession $websession -type Create|where{$_.name -eq "MYvCenter"}
$oss = Get-ALOsLayer -websession $websession|where{$_.name -eq "Windows 2016 Standard"}
$osrevs = get-aloslayerdetail -websession $websession -id $oss.id
$osrevid = $osrevs.Revisions.OsLayerRevisionDetail|where{$_.state -eq "Deployable"}|Sort-Object DisplayedVersion -Descending|select -First 1
New-ALPlatformLayer -websession $websession -osrevid $osrevid.Id -name "Citrix XA VDA 7.18" -connectorid $connector.id -shareid $fileshare.id -diskformat $connector.ValidDiskFormats.DiskFormat -type Create

New Platform Layer Version

$fileshare = Get-ALRemoteshare -websession $websession
$connector = Get-ALconnector -websession $websession -type Create|where{$_.name -eq "MYvCenter"}
$oss = Get-ALOsLayer -websession $websession|where{$_.name -eq "Windows 10 x64"}
$osrevs = get-aloslayerdetail -websession $websession -id $oss.id
$osrevid = $osrevs.Revisions.OsLayerRevisionDetail|where{$_.state -eq "Deployable"}|Sort-Object DisplayedVersion -Descending|select -First 1
$plats = Get-ALPlatformlayer -websession $websession|where{$_.name -eq "Windows 10 VDA"}
$platrevs = get-alplatformlayerDetail -websession $websession -id $plats.id
$platformrevid = $platrevs.Revisions.PlatformLayerRevisionDetail|where{$_.state -eq "Deployable"}|Sort-Object DisplayedVersion -Descending|select -First 1

$params = @{
websession = $websession;
osrevid = $osrevid.Id;
connectorid =  $connector.Id;
shareid = $fileshare.id;
layerid = $plats.Id;
layerrevid = $platformrevid.id;
version = "5.0";
Diskname = $plats.Name;
Verbose = $true;
Description = "Citrix VDA 7.18 with windows 10";
diskformat = $connector.ValidDiskFormats.DiskFormat;
}

New-ALPlatformLayerRev @params

Remove Platform Layer Revision

$fileshare = Get-ALRemoteshare -websession $websession
$platformid = Get-ALPlatformlayer -websession $websession | where{$_.name -eq "Windows 10 VDA"}
$platformrevid = Get-ALPlatformlayerDetail -websession $websession -id $platformid.Id
$platformrevid = $platformrevid.Revisions.PlatformLayerRevisionDetail | where{$_.candelete -eq $true} | Sort-Object DisplayedVersion -Descending | select -First 1
remove-alplatformlayerrev -websession $websession -platformid $platformid.Id -platformrevid $platformrevid.id -fileshareid $fileshare.id

System Info

Get System Information (Version)

Get-ALSystemInfo -websession $websession

Get System Settings

get-alsystemsettinginfo -websession $websession|Select-Object -ExpandProperty value -Property @{Name="SettingName"; Expression = {$_.Name}}

Task Status

Get Task Status

Get all tasks

Get-ALStatus -websession $websession

Get specific task based on ID (accepts wildcard)

Get-ALStatus -id 123456 -websession $websession

Cancel Task

Locate ID of Task Get-ALStatus -websession $websession

Stop-ALWorkTicket -id 123456 -websession $websession