Créer une file d’attente d’appels via des applets de commande

Hypothèses

  1. PowerShell est installé sur votre ordinateur

    • Configurer votre ordinateur pour Windows PowerShell

    • Module MSTeams installé

      Install-Module -Name MicrosoftTeams -Force -AllowClobber
      
    • Module Microsoft Graph installé

      Install-Module -Name Microsoft.Graph -Force -AllowClobber
      
  2. Vous disposez de droits d’administration de locataire

  3. Vous avez acheté Téléphonie Microsoft Teams

  4. Les agents, les listes de distribution et les canaux Teams mentionnés ci-dessous ont déjà été créés

Remarque : L’applet de commande de canal Teams utilisée ci-dessous fait partie de la préversion publique du module PowerShell Teams. Pour plus d’informations, consultez Installer la préversion publique de Teams PowerShell et les Notes de publication de Microsoft Teams PowerShell.

Les utilisateurs qui ont déjà installé le module MicrosoftTeams doivent Update-Module MicrosoftTeams s’assurer que la version la plus récente est installée.

Scénario

Les trois files d’attente d’appels suivantes seront créées :

Informations sur la file d’attente des appels commerciaux :

  • Fronted by Auto Standard : Oui
  • Appel direct à partir de PSTN : Non
  • Langue : Anglais ÉTATS-UNIS
  • Message d’accueil : Aucun
  • Musique en attente : lire un fichier audio
    • Nom de fichier : sales-hold-in-queue-music.wav
  • Réponses aux appels : utilisateurs
    • Bill@contoso.com
    • Mary@contoso.com
  • Mode conférence : Activé
  • Méthode de routage : Attendant
  • Routage basé sur la présence : désactivé
  • Les agents d’appel peuvent refuser de passer des appels : Oui
  • Heure d’alerte de l’agent d’appel : 15
  • Gestion du dépassement de capacité d’appel : 200
    • Redirigez vers : Adele@contoso.com
  • Gestion du délai d’expiration des appels : 120 secondes
    • Redirigez vers : Adele@contoso.com

Informations sur la file d’attente des appels de support :

  • Fronted by Auto Standard : Oui
  • Appel direct à partir de PSTN : Non
  • Langue : Anglais Royaume-Uni
  • Message d’accueil : lire un fichier audio
    • Nom de fichier : support-greeting.wav
  • Musique en attente : lire un fichier audio
    • Nom de fichier : support-hold-in-queue-music.wav
  • Réponse aux appels : Liste de distribution du support
    • Support@contoso.com
  • Mode conférence : Activé
  • Méthode de routage : Inactif le plus long
  • Routage basé sur la présence : N/A : activé par défaut en raison de la durée d’inactivité la plus longue
  • Les agents d’appel peuvent refuser de passer des appels : Non
  • Heure d’alerte de l’agent d’appel : 15
  • Gestion du dépassement de capacité d’appel : 200
    • Redirection : Prise en charge de la messagerie vocale partagée
      • Lire un fichier audio (support-shared-voicemail-greeting.wav)
      • Transcription activée
  • Gestion du délai d’expiration des appels : 45 minutes
    • Redirection : Prise en charge de la messagerie vocale partagée
      • TTS : « Nous sommes désolés de vous avoir gardé en attente et nous transférons maintenant votre appel à la messagerie vocale. »
      • Transcription activée

Informations sur la file d’attente des appels collaboratifs Facilities :

  • Fronted by Auto Standard : Non
  • Appel direct à partir de PSTN : Non (appel interne uniquement)
  • Langue : Français FR
  • Message d’accueil : Aucun
  • Musique en attente : par défaut
  • Répondre aux appels : Équipe : Installations
  • Canal de réponse aux appels : support technique
    • Propriétaire du canal : Fred@contoso.com
  • Mode conférence : Activé
  • Méthode de routage : tourniquet (round robin)
  • Routage basé sur la présence : Activé
  • Les agents d’appel peuvent refuser de passer des appels : Non
  • Heure d’alerte de l’agent d’appel : 15
  • Gestion du dépassement de capacité d’appel : 200
    • Déconnexion
  • Gestion du délai d’expiration des appels : 45 minutes
    • Déconnexion

Connexion

Vous serez invité à entrer vos informations d’identification d’administrateur Teams.

$credential = Get-Credential
Connect-MicrosoftTeams -Credential $credential
Connect-MgGraph -Credential $credential

File d’attente des ventes

Créer des fichiers audio

Remplacez « d :\ » par le chemin d’accès à l’emplacement où les fichiers wav sont stockés sur votre ordinateur.

$content = [System.IO.File]::ReadAllBytes('d:\sales-hold-in-queue-music.wav')
$audioFileSalesHoldInQueueMusicID = (Import-CsOnlineAudioFile -ApplicationID HuntGroup -FileName "sales-hold-in-queue-music.wav" -Content $content).ID

Obtenir l’ID des utilisateurs

$userAdeleID = (Get-CsOnlineUser -Identity "sip:adele@contoso.com").Identity
$userSalesBillID = (Get-CsOnlineUser -Identity "sip:bill@contoso.com").Identity
$userSalesMaryID = (Get-CsOnlineUser -Identity "sip:mary@contoso.com").Identity

Obtenir la liste des langues prises en charge

Get-CsAutoAttendantSupportedLanguage

Créer une file d’attente d’appels

New-CsCallQueue -Name "Sales" -AgentAlertTime 15 -AllowOptOut $true -MusicOnHoldAudioFileID $audioFileSalesHoldInQueueMusicID -OverflowAction Forward -OverflowActionTarget $userAdeleID -OverflowThreshold 200 -TimeoutAction Forward -TimeoutActionTarget $userAdeleID -TimeoutThreshold 120 -RoutingMethod Attendant -ConferenceMode $true -User @($userSalesBillID, $userSalesMaryID) -LanguageID "en-US"

Obtenir les types de licences

Get-MgSubscribedSku

Créer et attribuer un compte de ressource

Remarque : Le numéro de téléphone n’est pas requis ici, car la file d’attente des appels est terminée par un standard automatique

  • Id d’application
    • Standard automatique : ce933385-9390-45d1-9512-c8d228074e07
    • File d’attente des appels : 11cd3e2e-fccb-42ad-ad00-878b93575e07

Remarque : Le type de licence indiqué ci-dessous (PHONESYSTEM_VIRTUALUSER) doit être répertorié par l’applet de Get-MgSubscribedSku commande ci-dessus.

New-CsOnlineApplicationInstance -UserPrincipalName Sales-RA@contoso.com -DisplayName "Sales" -ApplicationID "11cd3e2e-fccb-42ad-ad00-878b93575e07"

Update-MgUser -UserId "Sales-RA@contoso.com" -UsageLocation US

Set-MgUserLicense -UserId "Sales-RA@contoso.com" -AddLicenses @(contoso:PHONESYSTEM_VIRTUALUSER) -RemoveLicenses @()

$applicationInstanceID = (Get-CsOnlineUser -Identity "Sales-RA@contoso.com").Identity
$callQueueID = (Get-CsCallQueue -NameFilter "Sales").Identity

New-CsOnlineApplicationInstanceAssociation -Identities @($applicationInstanceID) -ConfigurationID $callQueueID -ConfigurationType CallQueue

File d’attente de support

Créer des fichiers audio

Remplacez « d :\ » par le chemin d’accès à l’emplacement où les fichiers wav sont stockés sur votre ordinateur.

$content1 = [System.IO.File]::ReadAllBytes('d:\support-greeting.wav')
$audioFileSupportGreetingID = (Import-CsOnlineAudioFile -ApplicationID HuntGroup -FileName "support-greeting.wav" -Content $content1).ID

$content2 = [System.IO.File]::ReadAllBytes('d:\support-hold-in-queue-music.wav')
$audioFileSupportHoldInQueueMusicID = (Import-CsOnlineAudioFile -ApplicationID HuntGroup -FileName "support-hold-in-queue-music.wav" -Content $content2).ID

$content3 = [System.IO.File]::ReadAllBytes('d:\support-shared-voicemail-greeting.wav')
$audioFileSupportSharedVoicemailGreetingID = (Import-CsOnlineAudioFile -ApplicationID HuntGroup -FileName "support-shared-voicemail-greeting.wav" -Content $content3).ID

Obtenir l’ID de groupe de l’équipe de support technique

$teamSupportID = (Get-Team -DisplayName "Support").GroupID

Obtenir la liste des langues prises en charge

Get-CsAutoAttendantSupportedLanguage

Créer une file d’attente d’appels

New-CsCallQueue -Name "Support" -AgentAlertTime 15 -AllowOptOut $false -DistributionLists $teamSupportID -WelcomeMusicAudioFileID $audioFileSupportGreetingID -MusicOnHoldAudioFileID $audioFileSupportHoldInQueueMusicID -OverflowAction SharedVoicemail -OverflowActionTarget $teamSupportID -OverflowThreshold 200 -OverflowSharedVoicemailAudioFilePrompt $audioFileSupportSharedVoicemailGreetingID -EnableOverflowSharedVoicemailTranscription $true -TimeoutAction SharedVoicemail -TimeoutActionTarget $teamSupportID -TimeoutThreshold 2700 -TimeoutSharedVoicemailTextToSpeechPrompt "We're sorry to have kept you waiting and are now transferring your call to voicemail." -EnableTimeoutSharedVoicemailTranscription $true -RoutingMethod LongestIdle -ConferenceMode $true -LanguageID "en-US"

Obtenir les types de licences

Get-MgSubscribedSku

Créer et attribuer un compte de ressource

Remarque : Le numéro de téléphone n’est pas requis ici, car la file d’attente d’appels est terminée en front-end par un standard automatique

  • Id d’application
    • Standard automatique : ce933385-9390-45d1-9512-c8d228074e07
    • File d’attente des appels : 11cd3e2e-fccb-42ad-ad00-878b93575e07

Remarque : Le type de licence indiqué ci-dessous (PHONESYSTEM_VIRTUALUSER) doit être répertorié par l’applet de Get-MgSubscribedSku commande ci-dessus.

New-CsOnlineApplicationInstance -UserPrincipalName Support-RA@contoso.com -DisplayName "Support" -ApplicationID "11cd3e2e-fccb-42ad-ad00-878b93575e07"

Update-MgUser -UserId "Support-RA@contoso.com" -UsageLocation US

Set-MgUserLicense -UserId "Support-RA@contoso.com" -AddLicenses @(contoso:PHONESYSTEM_VIRTUALUSER) -RemoveLicenses @()

$applicationInstanceID = (Get-CsOnlineUser -Identity "Support-RA@contoso.com").Identity
$callQueueID = (Get-CsCallQueue -NameFilter "Support").Identity

New-CsOnlineApplicationInstanceAssociation -Identities @($applicationInstanceID) -ConfigurationID $callQueueID -ConfigurationType CallQueue

File d’attente d’appels collaboratifs Facilities

Obtenir l’ID du groupe d’équipe Facilities

$teamFacilitiesGroupID = (Get-Team -DisplayName "Facilities").GroupID

Obtenir l’ID de canal de l’équipe Facilities Help Desk

Get-TeamChannel -GroupId $teamFacilitiesGroupID
$teamFacilitiesHelpDeskChannelID = "{assign ID from output of above command}"

Obtenir l’ID utilisateur du propriétaire du canal d’assistance Facilities

$teamFacilitiesHelpDeskChannelUserID = (Get-TeamChannelUser -GroupId $teamFacilitiesGroupID -DisplayName "Help Desk" -Role Owner).UserId

Obtenir au nom de l’ID de compte de ressource appelant

$oboResourceAccountID = (Get-CsOnlineUser -Identity "MainAA-RA@contoso.com").Identity

Obtenir la liste des langues prises en charge

Get-CsAutoAttendantSupportedLanguage

Créer une file d’attente d’appels

New-CsCallQueue -Name "Facilities" -AgentAlertTime 15 -AllowOptOut $false -ChannelId $teamFacilitiesHelpDeskChannelID -ChannelUserObjectId $teamFacilitiesHelpDeskChannelUserID  -ConferenceMode $true -DistributionList $teamFacilitiesGroupID -LanguageID "fr-FR" -OboResourceAccountIds $oboResourceAccountID -OverflowAction DisconnectWithBusy -OverflowThreshold 200 -RoutingMethod RoundRobin -TimeoutAction Disconnect -TimeoutThreshold 2700 -UseDefaultMusicOnHold $true 

Obtenir les types de licences

Get-MgSubscribedSku

Créer et attribuer un compte de ressource

Remarque : Le numéro de téléphone n’est pas requis ici, car la file d’attente d’appels est terminée en front-end par un standard automatique

  • Id d’application
    • Standard automatique : ce933385-9390-45d1-9512-c8d228074e07
    • File d’attente des appels : 11cd3e2e-fccb-42ad-ad00-878b93575e07

Remarque : Le type de licence indiqué ci-dessous (PHONESYSTEM_VIRTUALUSER) doit être répertorié par l’applet de Get-MgSubscribedSku commande ci-dessus.

New-CsOnlineApplicationInstance -UserPrincipalName Facilities-RA@contoso.com -DisplayName "Facilities" -ApplicationID "11cd3e2e-fccb-42ad-ad00-878b93575e07"

Update-MgUser -UserId "Facilities-RA@contoso.com" -UsageLocation US

Set-MgUserLicense -UserId "Facilities-RA@contoso.com" -AddLicenses @(contoso:PHONESYSTEM_VIRTUALUSER) -RemoveLicenses @()

$applicationInstanceID = (Get-CsOnlineUser -Identity "Facilities-RA@contoso.com").Identity
$callQueueID = (Get-CsCallQueue -NameFilter "Facilities").Identity

New-CsOnlineApplicationInstanceAssociation -Identities @($applicationInstanceID) -ConfigurationID $callQueueID -ConfigurationType CallQueue