docs/about_TeamsCallQueue.help.txt
TOPIC
about_teamscallqueue SHORT DESCRIPTION Administering Call Queues with friendlier names. LONG DESCRIPTION Call Queues with friendly inputs! Use the DisplayName to find and address changes to Call Queues. Instead of having to manually input the File and provide an ID to the CallQueue CmdLet, this now also uses Friendly Filenames and performs the import for you. Call Targets ( `CallableEntities` verified, Users are - if licensed - enabled for EnterpriseVoice too. All requirements and dependencies are processed with visual feedback. Microsoft is continuing to improve these scripts, so I hope these can stand the test of time and make managing Call Queues easier. > [!NOTE] Microsoft has selected a GUID as the Identity the `CsCallQueue` scripts are a bit cumbersome for the average admin. Though the Searchstring parameter is available, enabling me to utilise it as a basic input method for `TeamsCallQueue` CmdLets. They query by DisplayName , which comes with a drawback for the `Set`-command: It requires a unique result. CmdLets | Function | Underlying Function | Description | | -----------------------------------------------------------: | ------------------- | ------------------------------------------------------------------ | | `Get-TeamsCallQueue` and output | | `New-TeamsCallQueue` | | `Set-TeamsCallQueue` | | `Remove-TeamsCallQueue` | Remove-CsCallQueue | Removes a Call Queue from the Tenant | EXAMPLES EXAMPLE 1 - QUERY Get-TeamsCallQueue [-Name] "Test" # Queries all Call Queues with the Name 'Test' (full name) Get-TeamsCallQueue -SearchString "Test" # Queries all Call Queues with the String 'Test' in the name (search) Where `-Name` targets the exact Name and can use the pipeline, `-SearchString` gives you an opportunity to find the Call Queues with similar names. EXAMPLE 2 - CREATING A NEW CALL QUEUE WITH DEFAULTS New-TeamsCallQueue [-Name] "My Queue" # Creates a Call Queue with improved defaults # Thresholds: Overflow 10, Timeout 30s # Improved defaults also cover the default MusicOnHold New-TeamsCallQueue [-Name] "My Queue" -UseMicrosoftDefaults # Creates a Call Queue with Microsoft defaults (thresholds) # Thresholds: Overflow 50, Timeout 1200s For more detailed examples, please see the Docs for the individual CmdLets EXAMPLE 3 - SETTING WITH THE PIPELINE Get-TeamsCallQueue -Name "My Queue" | Set-TeamsCallQueue -OverflowThreshold 120 # Queries all Call Queues with the Name 'My Queue' (full name) and changes the OverflowThreshold. # Good for changing one or more Queues to the same setting, though handle with care! Please note that the Name is not a unique criteria, you may have multiple that are called the same. Following Example #1, this can also be used to change multiple Call Queues at the same time with `-SearchString` EXAMPLE 4 - REMOVING WITH THE PIPELINE Get-TeamsCallQueue -SearchString "Test" | Remove-TeamsCallQueue -Confirm # Queries all Call Queues with the String 'Test' in the name and removes them. Prompts for confirmation for each. # Handle with care! NOTE Pipelines are available, as they are bound to the Name, this name must be unique (unless queried with Get first and the result being piped, where I bind to the individual ID instead). Bulk updating is available - see example above, but handle with care. Best to capture the Queues to be changed in a variable and double-checking you got the correct ones (and only those) before running. Additionally, `-Confirm` can help. Development Status Developing and testing these is very time consuming. I learned a lot while doing them, but as hard as I try, they probably still contain a few bugs. TROUBLESHOOTING NOTE Thoroughly tested, but Unit-tests for these CmdLets are not yet available. They are quite mature already, but if you do encounter issues, please capture verbose and debug output as they help me immensely when troubleshooting. SEE ALSO about_TeamsAutoAttendant about_TeamsResourceAccount about_TeamsCallableEntity KEYWORDS - Creation - Configuration - Management - AzureAdUser - AzureAdGroup - CsOnlineUser - CsOnlineApplicationInstance - TeamsResourceAccount |