Citrix Virtual Apps and Desktops SDK

New-BrokerRebootScheduleV2

Creates a new reboot schedule for a desktop group.

Syntax

New-BrokerRebootScheduleV2
   [-Day <RebootScheduleDays>]
   [-DayInMonth <RebootScheduleDays>]
   [-Description <String>]
   -DesktopGroupUid <Int32>
   [-Enabled <Boolean>]
   [-Frequency <RebootScheduleFrequency>]
   [-FrequencyFactor <Int32>]
   [-IgnoreMaintenanceMode <Boolean>]
   [-MaxOvertimeStartMins <Int32>]
   [-Name] <String>
   -RebootDuration <Int32>
   [-RestrictToTag <String>]
   [-StartDate <String>]
   [-StartTime <TimeSpan>]
   [-UseNaturalReboot <Boolean>]
   [-WarningDuration <Int32>]
   [-WarningMessage <String>]
   [-WarningRepeatInterval <Int32>]
   [-WarningTitle <String>]
   [-WeekInMonth <RebootScheduleWeeks>]
   [-LoggingId <Guid>]
   [<CitrixCommonParameters>]
   [<CommonParameters>]
<!--NeedCopy-->
New-BrokerRebootScheduleV2
   [-Day <RebootScheduleDays>]
   [-DayInMonth <RebootScheduleDays>]
   [-Description <String>]
   -DesktopGroupName <String>
   [-Enabled <Boolean>]
   [-Frequency <RebootScheduleFrequency>]
   [-FrequencyFactor <Int32>]
   [-IgnoreMaintenanceMode <Boolean>]
   [-MaxOvertimeStartMins <Int32>]
   [-Name] <String>
   -RebootDuration <Int32>
   [-RestrictToTag <String>]
   [-StartDate <String>]
   [-StartTime <TimeSpan>]
   [-UseNaturalReboot <Boolean>]
   [-WarningDuration <Int32>]
   [-WarningMessage <String>]
   [-WarningRepeatInterval <Int32>]
   [-WarningTitle <String>]
   [-WeekInMonth <RebootScheduleWeeks>]
   [-LoggingId <Guid>]
   [<CitrixCommonParameters>]
   [<CommonParameters>]
<!--NeedCopy-->

Description

The New-BrokerRebootScheduleV2 cmdlet is used to define a reboot schedule for a desktop group.

Examples

EXAMPLE 1

Schedules the machines in the desktop group named ‘BankTellers’ to be rebooted every night between 2 AM and 4 AM.

New-BrokerRebootScheduleV2 -Name BankTellers-DailyReboot -DesktopGroupName BankTellers -Frequency Daily -StartTime "02:00" -Enabled $true -RebootDuration 120
<!--NeedCopy-->

EXAMPLE 2

Schedules the machines in the desktop group having Uid 17 to be rebooted every Saturday early morning between 1 AM and 5 AM. Ten minutes prior to rebooting, each machine will display a message box with the title “WARNING: Reboot pending” and message “Save your work” in every user session.

New-BrokerRebootScheduleV2 -Name 'Saturday reboots' -DesktopGroupUid 17 -Frequency Weekly -Day Saturday -StartTime "01:00" -Enabled $true -RebootDuration 240 -WarningTitle "WARNING: Reboot pending" -WarningMessage "Save your work" -WarningDuration 10
<!--NeedCopy-->

EXAMPLE 3

Schedules the machines in the desktop group having Uid 17 to be rebooted Saturday and Sunday early morning between 1 AM and 5 AM for every four weeks starting from Feb 6, 2021. Ten minutes prior to rebooting, each machine will display a message box with the title “WARNING: Reboot pending” and message “Save your work” in every user session.

New-BrokerRebootScheduleV2 -Name 'Saturday reboots' -DesktopGroupUid 17 -Frequency Weekly -FrequencyFactor 4 -Day "Saturday,Sunday" -StartDate "2021-02-03" -StartTime "01:00" -Enabled $true -RebootDuration 240 -WarningTitle "WARNING: Reboot pending" -WarningMessage "Save your work" -WarningDuration 10
<!--NeedCopy-->

EXAMPLE 4

Schedules the machines in the desktop group having Uid 17 to be rebooted the last Saturday of the month early morning between 1 AM and 5 AM for every month. Ten minutes prior to rebooting, each machine will display a message box with the title “WARNING: Reboot pending” and message “Save your work” in every user session.

New-BrokerRebootScheduleV2 -Name 'Monthly reboots' -DesktopGroupUid 17 -Frequency Monthly -DayInMonth Saturday -WeekInMonth Last -StartTime "01:00" -Enabled $true -RebootDuration 240 -WarningTitle "WARNING: Reboot pending" -WarningMessage "Save your work" -WarningDuration 10
<!--NeedCopy-->

EXAMPLE 5

Schedules the machines in the desktop group having Uid 17 to be rebooted the first Sunday of the month early morning between 1 AM and 5 AM for every two months, starting from Feb 7, 2021 which is the first Sunday of Feburary, 2021. Ten minutes prior to rebooting, each machine will display a message box with the title “WARNING: Reboot pending” and message “Save your work” in every user session.

New-BrokerRebootScheduleV2 -Name 'Monthly reboots' -DesktopGroupUid 17 -Frequency Monthly -FrequencyFactor 2 -StartDate "2021-02-03" -DayInMonth Sunday -WeekInMonth First -StartTime "01:00" -Enabled $true -RebootDuration 240 -WarningTitle "WARNING: Reboot pending" -WarningMessage "Save your work" -WarningDuration 10
<!--NeedCopy-->

EXAMPLE 6

Schedules the machines in the desktop group named ‘BankTellers’ to be rebooted every night between 3 AM and 5 AM. Fifteen, ten and five minutes prior to rebooting each machine, the message “Rebooting in %m% minutes.” will be displayed in each user session with the pattern ‘%m%’ replaced with the number of minutes until the reboot.

New-BrokerRebootScheduleV2 -Name BankTellers-DailyReboot -DesktopGroupName BankTellers -Frequency Daily -StartTime "03:00" -Enabled $true -RebootDuration 120 -WarningMessage "Rebooting in %m% minutes." -WarningDuration 15 -WarningRepeatInterval 5
<!--NeedCopy-->

EXAMPLE 7

Schedules only machines with the tag ‘Daily Reboot’ in the desktop group named ‘BankTellers’ to be rebooted every night between 3 AM and 5 AM. Fifteen, ten and five minutes prior to rebooting each machine, the message “Rebooting in %m% minutes.” will be displayed in each user session with the pattern ‘%m%’ replaced with the number of minutes until the reboot.

New-BrokerRebootScheduleV2 -Name BankTellers-DailyReboot -DesktopGroupName BankTellers -Frequency Daily -StartTime "03:00" -Enabled $true -RebootDuration 120 -WarningMessage "Rebooting in %m% minutes." -WarningDuration 15 -WarningRepeatInterval 5 -RestrictToTag 'Daily Reboot'
<!--NeedCopy-->

Parameters

-Name

The name of the new reboot schedule.

Type: String
Position: 2
Default value: None
Required: True
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: True

-RebootDuration

Approximate maximum number of minutes over which the scheduled reboot cycle runs.

Type: Int32
Position: Named
Default value: None
Required: True
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False

-DesktopGroupName

The name of the desktop group that this reboot schedule is applied to.

Type: String
Position: Named
Default value: None
Required: True
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: True

-DesktopGroupUid

The Uid of the desktop group that this reboot schedule is applied to.

Type: Int32
Position: Named
Default value: None
Required: True
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False

-Day

For weekly schedules, the days of the week on which the scheduled reboot-cycle starts (one or more of Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday).

Type: RebootScheduleDays
Position: Named
Default value: None
Required: False
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False

-DayInMonth

For monthly schedules, the day in the month on which the scheduled reboot-cycle starts (one of Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday).

Type: RebootScheduleDays
Position: Named
Default value: None
Required: False
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False

-Description

An optional description for the reboot schedule.

Type: String
Position: Named
Default value: None
Required: False
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: True

-Enabled

Boolean that indicates if the new reboot schedule is enabled.

Type: Boolean
Position: Named
Default value: None
Required: False
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False

-Frequency

Frequency with which this schedule runs (either Weekly or Daily or Monthly).

Type: RebootScheduleFrequency
Position: Named
Default value: None
Required: False
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False

-FrequencyFactor

The frequency factor for the reboot schedule. It indicates how often the schedule should run with respect to the frequency. For example, if the FrequencyFactor is set to 2, it means every two days from the StartDate when the Frequency is Daily, every two weeks from StartDate when the Frequency is Weekly, and similarly for monthly. It defaults to 1 if not provided. StartDate property needs to be provided if the frequency factor is greater than 1.

Type: Int32
Position: Named
Default value: None
Required: False
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False

-IgnoreMaintenanceMode

Boolean value to reboot machines in maintenance mode

Type: Boolean
Position: Named
Default value: False
Required: False
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False

-MaxOvertimeStartMins

Maximum delay in minutes after which the scheduled reboot will not take place.

Type: Int32
Position: Named
Default value: 0
Required: False
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False

-RestrictToTag

If set the reboot schedule only applies to machines in the desktop group with the specified tag.

Type: String
Position: Named
Default value: None
Required: False
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: True

-StartDate

The date on which the first schedule is expected to run, date is in ISO 8601 Format (YYYY-MM-DD). The actual start date to match the frequency pattern need not be provided. For example, if today is Monday and the schedule is set to run every Sunday for every four weeks, there is no need to identify the date on which Sunday falls after four weeks. Today’s date ((Get-Date).Date.ToString(‘yyyy-MM-dd’)) can be provided and the service would adjust the start date to reflect the actual date i.e, the Sunday four weeks from today. Get-BrokerRebootScheduleV2 cmdlet will reflect the actual start date.

Type: String
Position: Named
Default value: None
Required: False
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: True

-StartTime

Time of day at which the scheduled reboot cycle starts (HH:MM).

Type: TimeSpan
Position: Named
Default value: None
Required: False
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False

-UseNaturalReboot

Boolean value indicating whether the machines should reboot whenever they happen to have no sessions, rather than at equally spaced times within the cycle duration.

Type: Boolean
Position: Named
Default value: False
Required: False
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False

-WarningDuration

Time prior to the initiation of a machine reboot at which warning message is displayed in all user sessions on that machine. If the warning duration is zero then no message is displayed. In some cases the time required to process a reboot schedule may exceed the RebootDuration time by up to the WarningDuration value; Citrix recommends that the WarningDuration is kept small relative to the RebootDuration value.

Type: Int32
Position: Named
Default value: None
Required: False
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False

-WarningMessage

Warning message displayed in user sessions on a machine scheduled for reboot. If the message is blank then no message is displayed. The optional pattern ‘%m%’ is replaced by the number of minutes until the reboot.

Type: String
Position: Named
Default value: None
Required: False
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: True

-WarningRepeatInterval

Time to wait after the previous reboot warning before displaying the warning message in all user sessions on that machine again. If the warning repeat interval is zero then the warning message is not displayed after the initial warning.

Type: Int32
Position: Named
Default value: None
Required: False
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False

-WarningTitle

The window title used when showing the warning message in user sessions on a machine scheduled for reboot.

Type: String
Position: Named
Default value: None
Required: False
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: True

-WeekInMonth

For monthly schedules, the week in the month on which the scheduled reboot-cycle starts (one of First, Second, Third, Fourth, Last).

Type: RebootScheduleWeeks
Position: Named
Default value: None
Required: False
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: False

-LoggingId

Specifies the identifier of the high level operation that this cmdlet call forms a part of. Desktop Studio and Desktop Director typically create High Level Operations. PowerShell scripts can also wrap a series of cmdlet calls in a High Level Operation by way of the Start-LogHighLevelOperation and Stop-LogHighLevelOperation cmdlets.

Type: Guid
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

CitrixCommonParameters

This cmdlet supports the common Citrix parameters: -AdminAddress, -AdminClientIP, -BearerToken, -TraceParent, -TraceState and -VirtualSiteId. For more information, see about_CitrixCommonParameters.

CommonParameters

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.

Inputs

None

Input cannot be piped to this cmdlet.

Outputs

Citrix.Broker.Admin.SDK.RebootScheduleV2

New-BrokerRebootScheduleV2