Remove-CsRgsQueue

Deletes an existing Response Group queue. With the Response Group application, phone calls are put in a queue and callers are placed on hold until a Response Group agent is available to answer that call. This cmdlet was introduced in Lync Server 2010.

Syntax

Remove-CsRgsQueue
      [-Force]
      [-WhatIf]
      [-Confirm]
      -Instance <Queue>
      [<CommonParameters>]

Description

When someone calls a phone number associated with the Response Group application one of two things typically happens: either the call is transferred to a question that the caller must answer in order to continue (for example, "Press 1 for hardware support; press 2 for software support") or the call is placed in a queue until a Response Group agent is available to answer the call.

Instead of having a single queue for all phone calls, the Response Group application enables you to create multiple queues that can be associated with different workflows and different Response Group agent groups. In turn, this means queues can respond differently to events such as a designated number of calls being simultaneously held in the queue, or to callers that have been on hold for specified amount of time.

In addition to creating new queues you can also remove existing queues; that's what the Remove-CsRgsQueue cmdlet is for. Note that, by default, you will be prompted if you try to remove a queue that is currently assigned to an active workflow; the prompt will ask you to verify that you want to delete the queue and Windows PowerShell will pause (and no queue will be deleted) until you answer the prompt. To bypass the prompt and to delete queues that are being used by an active workflow, add the Force parameter. For example:

Get-CsRgsQueue -Identity "service:ApplicationServer:atl-cs-001.litwareinc.com" | Remove-CsRgsQueue -Force

Remove-CsRgsQueue always checks to see if a queue is being used by an active workflow before it will delete that queue. However, the cmdlet does not verify whether or not the queue is being used by another queue as either the timeout or overflow queue. That means it is possible to delete a queue that is needed by another queue. Because of that, you might want to use the Get-CsRgsQueue cmdlet to check the OverflowAction and TimeoutAction properties of your other Response Group queues before running Remove-CsRgsQueue to delete a queue.

Examples

-------------------------- Example 1 ------------------------

Get-CsRgsQueue -Identity service:ApplicationServer:atl-cs-001.litwareinc.com | Remove-CsRgsQueue

The command shown in Example 1 deletes all the Response Group queues found on the service ApplicationServer:atl-cs-001.litwareinc.com. To do this, the command first uses Get-CsRgsQueue to return a collection of all the queues found on ApplicationServer:atl-cs-001.litwareinc.com. This collection is then piped to Remove-CsRgsQueue, which deletes each queue in the collection.

-------------------------- Example 2 ------------------------

Get-CsRgsQueue -Identity service:ApplicationServer:atl-cs-001.litwareinc.com -Name "Help Desk Queue" | Remove-CsRgsQueue

In Example 2, a single Response Group queue is deleted: the queue named "Help Desk Queue", located on the service ApplicationServer:atl-cs-001.litwareinc.com. To delete this queue, Get-CsRgsQueue is called along with the Identity and Name parameters; the single queue returned by this call is then piped to and deleted by, Remove-CsRgsQueue.

-------------------------- Example 3 ------------------------

Get-CsRgsQueue -Identity service:ApplicationServer:atl-cs-001.litwareinc.com | Where-Object {$_.OverflowCandidate -eq "NewestCall"} | Remove-CsRgsQueue

Example 3 deletes all the Response Group queues found on the service ApplicationServer:atl-cs-001.litwareinc.com, provided those queues have their OverflowCandidate property set to NewestCall. To do this, Get-CsRgsQueue is first called in order to return a collection of all the Response Group queues found on ApplicationServer:atl-cs-001.litwareinc.com. This collection is then piped to the Where-Object cmdlet, which selects only those queues where the OverflowCandidate property is equal to "NewestCall". The filtered collection is then piped to Remove-CsRgsQueue, which deletes each queue in the collection.

Parameters

-Confirm

Prompts you for confirmation before executing the command.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Lync Server 2010, Lync Server 2013, Skype for Business Server 2015, Skype for Business Server 2019

-Force

Forces the deletion of a Response Group queue. If this parameter is present, the queue will be deleted without warning, even if the queue is assigned to an active workflow. If this parameter is not present then you will be asked to confirm the deletion of any queue currently in use by an active workflow.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Lync Server 2010, Lync Server 2013, Skype for Business Server 2015, Skype for Business Server 2019

-Instance

Object reference pointing to the queue to be removed. When piping workflow objects to Remove-CsRgsQueue you can leave off the Instance parameter.

To use the Instance parameter use commands similar to this:

$x = Get-CsRgsQueue -Identity ApplicationServer:atl-cs-001.litwareinc.com /1987d3c2-4544-489d-bbe3-59f79f530a83

Remove-CsRgsQueue -Instance $x

Note that you can only remove a single queue at a time when using the Instance parameter. That means that your object reference ($x) cannot contain multiple queue objects.

Type:Queue
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False
Applies to:Lync Server 2010, Lync Server 2013, Skype for Business Server 2015, Skype for Business Server 2019

-WhatIf

Describes what would happen if you executed the command without actually executing the command.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Lync Server 2010, Lync Server 2013, Skype for Business Server 2015, Skype for Business Server 2019

Inputs

Microsoft.Rtc.Rgs.Management.WritableSettings.Queue object. Remove-CsRgsQueue accepts pipelined instances of the Response Group queue object.

Outputs

Remove-CsRgsQueue deletes existing instances of the Microsoft.Rtc.Rgs.Management.WritableSettings.Queue object.