Condividi tramite


Creare una coda di chiamata tramite cmdlet

Prerequisiti

  1. Installare PowerShell nel computer.

    • Configurare il computer per Windows PowerShell

    • Modulo MSTeams installato

      Install-Module -Name MicrosoftTeams -Force -AllowClobber
      
    • Modulo di Microsoft Graph installato

      Install-Module -Name Microsoft.Graph -Force -AllowClobber
      
  2. Assicurarsi di avere i diritti di amministrazione tenant.

  3. Acquista Telefono di Microsoft Teams.

  4. Gli agenti, le liste di distribuzione e i canali di Teams citati in questo articolo sono già stati creati.

Nota

Il cmdlet Canale teams usato in questo scenario fa parte della versione di anteprima pubblica del modulo PowerShell di Teams. Per altre informazioni, vedere Installare l'anteprima pubblica di PowerShell di Teams e vedere anche Note sulla versione di Microsoft Teams PowerShell.

Gli utenti che hanno già installato il modulo MicrosoftTeams devono Update-Module MicrosoftTeams assicurarsi che sia installata la versione più aggiornata.

Scenario

In questo scenario, è possibile creare le seguenti tre code di chiamata:

  • Coda di chiamata di vendita
  • Coda di chiamata di supporto
  • Coda di chiamate collaborativa strutture

Informazioni sulla coda di chiamata di vendita:

  • Annidata dietro l'operatore automatico: Sì
  • Chiamate dirette da PSTN: No
  • Lingua: inglese (Stati Uniti)
  • Messaggio di saluto: Nessuno
  • Musica in attesa: riprodurre un file audio
    • Nome file: sales-hold-in-queue-music.wav
  • Risposta alle chiamate: utenti
    • Bill@contoso.com
    • Mary@contoso.com
  • Modalità conferenza: attivata
  • Metodo di routing: Attendant
  • Routing basato sulla presenza: disattivato
  • Gli agenti di chiamata possono rifiutare esplicitamente di effettuare chiamate: Sì
  • Ora avviso agente di chiamata: 15
  • Gestione dell'overflow delle chiamate: 200
    • Reindirizza a: Adele@contoso.com
  • Gestione del timeout di chiamata: 120 secondi
    • Reindirizza a: Adele@contoso.com

Informazioni sulla coda di chiamata di supporto:

  • Annidata dietro l'operatore automatico: Sì
  • Chiamate dirette da PSTN: No
  • Lingua: inglese (Regno Unito)
  • Messaggio di saluto: riprodurre un file audio
    • Nome file: support-greeting.wav
  • Musica in attesa: riprodurre un file audio
    • Nome file: support-hold-in-queue-music.wav
  • Risposta alle chiamate: lista di distribuzione del supporto
    • Support@contoso.com
  • Modalità conferenza: attivata
  • Metodo di routing: inattività più lunga
  • Routing basato sulla presenza: N/D – attivato per impostazione predefinita a causa dell'inattività più lunga
  • Gli agenti di chiamata possono rifiutare esplicitamente di effettuare chiamate: No
  • Ora avviso agente di chiamata: 15
  • Gestione dell'overflow delle chiamate: 200
    • Reindirizzamento: supportare la segreteria telefonica condivisa
      • Riprodurre un file audio (support-shared-voicemail-greeting.wav)
      • Trascrizione abilitata
  • Gestione del timeout di chiamata: 45 minuti
    • Reindirizzamento: supportare la segreteria telefonica condivisa
      • Sintesi vocale: "Siamo spiacenti di averti fatto aspettare e stiamo trasferendo la chiamata alla segreteria telefonica".
      • Trascrizione abilitata

Strutture Informazioni sulla coda di chiamata collaborativa:

  • Annidata dietro l'operatore automatico: No
  • Chiamate dirette da PSTN: No (solo chiamate interne)
  • Lingua: francese FR
  • Messaggio di saluto: Nessuno
  • Musica in attesa: impostazione predefinita
  • Risposta alle chiamate: Team: Strutture
  • Canale di risposta alle chiamate: Help Desk
    • Proprietario del canale: Fred@contoso.com
  • Modalità conferenza: attivata
  • Metodo di routing: Round Robin
  • Routing basato sulla presenza: attivato
  • Gli agenti di chiamata possono rifiutare esplicitamente di effettuare chiamate: No
  • Ora avviso agente di chiamata: 15
  • Gestione dell'overflow delle chiamate: 200
    • Disconnetti
  • Gestione del timeout di chiamata: 45 minuti
    • Disconnetti

Accesso

Quando richiesto, immettere le credenziali di amministratore di Teams.

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

Coda di vendita

Creare file audio

Sostituisci d:\\ con il percorso in cui sono archiviati i file wav nel computer.

$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

Ottenere l'ID utente

$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

Ottenere l'elenco delle lingue supportate

Get-CsAutoAttendantSupportedLanguage

Crea coda di chiamata

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"

Ottenere i tipi di licenza

Get-MgSubscribedSku

Creare e assegnare un account delle risorse

Non è necessario un numero di telefono perché la coda di chiamata è annidata dietro un operatore automatico.

  • ID applicazione
    • Operatore automatico: ce933385-9390-45d1-9512-c8d228074e07
    • Coda di chiamata: 11cd3e2e-fccb-42ad-ad00-878b93575e07

Il tipo di licenza visualizzato dopo (PHONESYSTEM_VIRTUALUSER) deve essere quello elencato dal Get-MgSubscribedSku cmdlet.

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

Coda di supporto

Creare file audio

Sostituisci d:\\ con il percorso in cui sono archiviati i file wav nel computer.

$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

Ottenere l'ID del gruppo del team di supporto

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

Ottenere l'elenco delle lingue supportate

Get-CsAutoAttendantSupportedLanguage

Crea coda di chiamata

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"

Ottenere i tipi di licenza

Get-MgSubscribedSku

Creare e assegnare un account di risorsa

Non è necessario un numero di telefono perché la coda di chiamata è annidata dietro un operatore automatico.

  • ID applicazione
    • Operatore automatico: ce933385-9390-45d1-9512-c8d228074e07
    • Coda di chiamata: 11cd3e2e-fccb-42ad-ad00-878b93575e07

Il tipo di licenza visualizzato dopo (PHONESYSTEM_VIRTUALUSER) deve essere quello elencato dal Get-MgSubscribedSku cmdlet.

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

Coda di chiamate collaborativa strutture

Ottieni l'ID del gruppo del team Strutture

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

Ottieni l'ID canale del team Help Desk per le strutture

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

Ottieni l'ID utente del canale Help Desk per le strutture

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

Ottieni per conto di Calling Resource Account ID

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

Ottenere l'elenco delle lingue supportate

Get-CsAutoAttendantSupportedLanguage

Crea coda di chiamata

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 

Ottenere i tipi di licenza

Get-MgSubscribedSku

Creare e assegnare un account di risorsa

Non è necessario un numero di telefono perché la coda di chiamata è annidata dietro un operatore automatico.

  • ID applicazione
    • Operatore automatico: ce933385-9390-45d1-9512-c8d228074e07
    • Coda di chiamata: 11cd3e2e-fccb-42ad-ad00-878b93575e07

Il tipo di licenza visualizzato dopo (PHONESYSTEM_VIRTUALUSER) deve essere quello elencato dal Get-MgSubscribedSku cmdlet.

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

Pianificare gli operatori automatici di Teams e le code di chiamata

Ecco cosa ottieni con Telefono di Microsoft Teams

Creare un operatore automatico tramite cmdlet