Skip to content

Latest commit

 

History

History
668 lines (544 loc) · 15.7 KB

Set-TeamsCallQueue.md

File metadata and controls

668 lines (544 loc) · 15.7 KB
external help file Module Name online version schema
TeamsFunctions-help.xml
TeamsFunctions
2.0.0

Set-TeamsCallQueue

SYNOPSIS

Set-CsCallQueue with UPNs instead of IDs

SYNTAX

Set-TeamsCallQueue [-Name] <String> [-DisplayName <String>] [-AgentAlertTime <Int16>] [-AllowOptOut <Boolean>]
 [-OverflowAction <String>] [-OverflowActionTarget <String>]
 [-OverflowSharedVoicemailTextToSpeechPrompt <String>] [-OverflowSharedVoicemailAudioFile <String>]
 [-EnableOverflowSharedVoicemailTranscription <Boolean>] [-OverflowThreshold <Int16>] [-TimeoutAction <String>]
 [-TimeoutActionTarget <String>] [-TimeoutSharedVoicemailTextToSpeechPrompt <String>]
 [-TimeoutSharedVoicemailAudioFile <String>] [-EnableTimeoutSharedVoicemailTranscription <Boolean>]
 [-TimeoutThreshold <Int16>] [-RoutingMethod <String>] [-PresenceBasedRouting <Boolean>]
 [-UseDefaultMusicOnHold <Boolean>] [-ConferenceMode <Boolean>] [-Greeting <String>]
 [-MusicOnHoldAudioFile <String>] [-DistributionLists <String[]>] [-Users <String[]>]
 [-ResourceAccountsForCallerId <String[]>] [-ChannelOwner <String>] [-TeamAndChannel <String>]
 [-LanguageId <String>] [-AuthorizedUsers <String[]>] [-PassThru] [-WhatIf] [-Confirm] [<CommonParameters>]

DESCRIPTION

Does all the same things that Set-CsCallQueue does, but differs in a few significant respects: UserPrincipalNames can be provided instead of IDs, FileNames (FullName) can be provided instead of IDs File Import is handled by this Script Set-CsCallQueue is used to apply parameters dependent on specification. Partial implementation is possible, output will show differences.

EXAMPLES

EXAMPLE 1

Set-TeamsCallQueue -Name "My Queue" -DisplayName "My new Queue Name"

Changes the DisplayName of Call Queue "My Queue" to "My new Queue Name"

EXAMPLE 2

Set-TeamsCallQueue -Name "My Queue" -UseMicrosoftDefaults

Changes the Call Queue "My Queue" to use Microsoft Default Values

EXAMPLE 3

Set-TeamsCallQueue -Name "My Queue" -OverflowThreshold 5 -TimeoutThreshold 90

Changes the Call Queue "My Queue" to overflow with more than 5 Callers waiting and a timeout window of 90s

EXAMPLE 4

Set-TeamsCallQueue -Name "My Queue" -MusicOnHoldAudioFile C:\Temp\Moh.wav -Greeting C:\Temp\WelcomeMessage.wmv

Changes the Call Queue "My Queue" with custom Audio Files

EXAMPLE 5

Set-TeamsCallQueue -Name "My Queue" -AgentAlertTime 15 -RoutingMethod Serial -AllowOptOut:$false -DistributionLists @(List1@domain.com,List2@domain.com)

Changes the Call Queue "My Queue" alerting every Agent nested in Azure AD Groups List1@domain.com and List2@domain.com in sequence for 15s.

EXAMPLE 6

Set-TeamsCallQueue -Name "My Queue" -OverflowAction Forward -OverflowActionTarget SIP@domain.com -TimeoutAction Voicemail

Changes the Call Queue "My Queue" forwarding to SIP@domain.com for Overflow and to Voicemail when it times out.

PARAMETERS

-Name

Required. Friendly Name of the Call Queue. Used to Identify the Object

Type: String
Parameter Sets: (All)
Aliases:

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

-DisplayName

Optional. Updates the Name of the Call Queue. Name will be normalised (unsuitable characters are filtered)

Type: String
Parameter Sets: (All)
Aliases:

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

-AgentAlertTime

Optional. Time in Seconds to alert each agent. Works depending on Routing method Size AgentAlertTime and TimeoutThreshold depending on Routing method and # of Agents available.

Type: Int16
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False

-AllowOptOut

Optional Switch. Allows Agents to Opt out of receiving calls from the Call Queue

Type: Boolean
Parameter Sets: (All)
Aliases:

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

-OverflowAction

Optional. Action to be taken if the Queue size limit (OverflowThreshold) is reached Forward requires specification of OverflowActionTarget Default: DisconnectWithBusy, Values: DisconnectWithBusy, Forward, VoiceMail, SharedVoiceMail

Type: String
Parameter Sets: (All)
Aliases: OA

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

-OverflowActionTarget

Situational. Required only if OverflowAction is not DisconnectWithBusy UserPrincipalName of the Target

Type: String
Parameter Sets: (All)
Aliases: OAT

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

-OverflowSharedVoicemailTextToSpeechPrompt

Situational. Text to be read for a Shared Voicemail greeting. Requires LanguageId Required if OverflowAction is SharedVoicemail and OverflowSharedVoicemailAudioFile is $null

Type: String
Parameter Sets: (All)
Aliases: OfSVmTTS

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

-OverflowSharedVoicemailAudioFile

Situational. Path to the Audio File for a Shared Voicemail greeting Required if OverflowAction is SharedVoicemail and OverflowSharedVoicemailTextToSpeechPrompt is $null

Type: String
Parameter Sets: (All)
Aliases: OfVMFile

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

-EnableOverflowSharedVoicemailTranscription

Situational. Boolean Switch. Requires specification of LanguageId Enables a transcription of the Voicemail message to be sent to the Group mailbox

Type: Boolean
Parameter Sets: (All)
Aliases: TranscribeOfVm

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

-OverflowThreshold

Optional. Time in Seconds for the OverflowAction to trigger

Type: Int16
Parameter Sets: (All)
Aliases: OfThreshold, OfQueueLength

Required: False
Position: Named
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False

-TimeoutAction

Optional. Action to be taken if the TimeoutThreshold is reached Forward requires specification of TimeoutActionTarget Default: Disconnect, Values: Disconnect, Forward, VoiceMail, SharedVoiceMail

Type: String
Parameter Sets: (All)
Aliases: TA

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

-TimeoutActionTarget

Situational. Required only if TimeoutAction is not Disconnect UserPrincipalName of the Target

Type: String
Parameter Sets: (All)
Aliases: TAT

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

-TimeoutSharedVoicemailTextToSpeechPrompt

Situational. Text to be read for a Shared Voicemail greeting. Requires LanguageId Required if TimeoutAction is SharedVoicemail and TimeoutSharedVoicemailAudioFile is $null

Type: String
Parameter Sets: (All)
Aliases: ToSVmTTS

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

-TimeoutSharedVoicemailAudioFile

Situational. Path to the Audio File for a Shared Voicemail greeting Required if TimeoutAction is SharedVoicemail and TimeoutSharedVoicemailTextToSpeechPrompt is $null

Type: String
Parameter Sets: (All)
Aliases: ToVMFile

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

-EnableTimeoutSharedVoicemailTranscription

Situational. Boolean Switch. Requires specification of LanguageId Enables a transcription of the Voicemail message to be sent to the Group mailbox

Type: Boolean
Parameter Sets: (All)
Aliases: TranscribeToVm

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

-TimeoutThreshold

Optional. Time in Seconds for the TimeoutAction to trigger

Type: Int16
Parameter Sets: (All)
Aliases: ToThreshold

Required: False
Position: Named
Default value: 0
Accept pipeline input: False
Accept wildcard characters: False

-RoutingMethod

Optional. Describes how the Call Queue is hunting for an Agent. Serial will Alert them one by one in order specified (Distribution lists will contact alphabethically) Attendant behaves like Parallel if PresenceBasedRouting is used. Default: Attendant, Values: Attendant, Serial, RoundRobin, LongestIdle

Type: String
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: Attendant
Accept pipeline input: False
Accept wildcard characters: False

-PresenceBasedRouting

Optional. Default: FALSE. If used alerts Agents only when they are available (Teams status).

Type: Boolean
Parameter Sets: (All)
Aliases:

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

-UseDefaultMusicOnHold

Optional Switch. Indicates whether the default Music On Hold should be used.

Type: Boolean
Parameter Sets: (All)
Aliases:

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

-ConferenceMode

Optional. Will establish a conference instead of a direct call and should help with connection time. Default: TRUE, Microsoft Default: FALSE

Type: Boolean
Parameter Sets: (All)
Aliases:

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

-Greeting

Optional. Text-To-Voice String or Path to Audio File to be used as a Welcome message Accepted Text-To-Voice Strings: Minimum 10, Maximum 1000 characters. Accepted Audio File Formats: MP3, WAV or WMA format, max 5MB

Type: String
Parameter Sets: (All)
Aliases: WelcomeMessage, WelcomeMusicTextToSpeechPrompt, WelcomeMusicAudioFile

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

-MusicOnHoldAudioFile

Optional. Path to Audio File to be used as Music On Hold. Accepted Formats: MP3, WAV or WMA, max 5MB

Type: String
Parameter Sets: (All)
Aliases:

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

-DistributionLists

Optional. Display Names of DistributionLists or Groups. Their members are to become Agents in the Queue. Mutually exclusive with TeamAndChannel. Can be combined with Users. Will be parsed after Users if they are specified as well. To be considered for calls, members of the DistributionsLists must be Enabled for Enterprise Voice.

Type: String[]
Parameter Sets: (All)
Aliases:

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

-Users

Optional. UserPrincipalNames of Users that are to become Agents in the Queue. Mutually exclusive with TeamAndChannel. Can be combined with DistributionLists. Will be parsed first. Order is only important if Serial Routing is desired (See Parameter RoutingMethod) Users are only added if they have a PhoneSystem license and are or can be enabled for Enterprise Voice.

Type: String[]
Parameter Sets: (All)
Aliases:

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

-ResourceAccountsForCallerId

Optional. Resource Account to be used for allowing Agents to use its number as a Caller Id.

Type: String[]
Parameter Sets: (All)
Aliases:

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

-ChannelOwner

Optional. UserPrincipalName of a owner for the Channel. Unknown use-case right now. Feeds Parameter ChannelUserObjectId Users are only added if they have a PhoneSystem license and are or can be enabled for Enterprise Voice.

Type: String
Parameter Sets: (All)
Aliases:

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

-TeamAndChannel

Optional. Uses a Channel to route calls to. Members of the Channel become Agents in the Queue. Mutually exclusive with Users and DistributionLists. Acceptable format for Team and Channel is "TeamIdentifier\ChannelIdentifier". Acceptable Identifier for Teams are GroupId (GUID) or DisplayName. NOTE: DisplayName may not be unique. Acceptable Identifier for Channels are Id (GUID) or DisplayName.

Type: String
Parameter Sets: (All)
Aliases:

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

-LanguageId

Optional Language Identifier indicating the language that is used to play shared voicemail prompts. This parameter becomes a required parameter If either OverflowAction or TimeoutAction is set to SharedVoicemail.

Type: String
Parameter Sets: (All)
Aliases:

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

-AuthorizedUsers

Optional. Users allowed to change certain aspects of the Call Queue (like Greetings or AudioFiles) These settings are governed by the assigned CsTeamsVoiceApplicationsPolicy (assigned to the User)

Type: String[]
Parameter Sets: (All)
Aliases:

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

-PassThru

By default, no output is generated, PassThru will display the Object changed

Type: SwitchParameter
Parameter Sets: (All)
Aliases:

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

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

Type: SwitchParameter
Parameter Sets: (All)
Aliases: wi

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

-Confirm

Prompts you for confirmation before running the cmdlet.

Type: SwitchParameter
Parameter Sets: (All)
Aliases: cf

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

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

System.String

OUTPUTS

System.Object or None

NOTES

Audio Files, if not found will result in errors being generated. This deviates from the behaviour in New-TeamsCallQueue Greeting - Setting not changed. If set before, this will remain. MusicOnHoldAudioFile - Setting not changed. If set before, this will remain. OverflowSharedVoicemailAudioFile - Setting not changed. OverflowAction will not be changed TimeoutSharedVoicemailAudioFile - Setting not changed. TimeoutAction will not be changed

RELATED LINKS

https://github.com/DEberhardt/TeamsFunctions/tree/main/docs/Set-TeamsCallQueue.md

https://github.com/DEberhardt/TeamsFunctions/tree/main/docs/about_TeamsCallQueue.md

https://github.com/DEberhardt/TeamsFunctions/tree/main/docs/