Set-CsRgsWorkflow
Tópico modificado em: 2012-03-23
Modifica o fluxo de trabalho de um Grupo de Resposta existente. Os fluxos de trabalho determinam as ações que serão executadas quando o Aplicativo Grupo de Resposta receber uma chamada telefônica.
Sintaxe
Set-CsRgsWorkflow -Instance <Workflow> [-Confirm [<SwitchParameter>]] [-Force <SwitchParameter>] [-WhatIf [<SwitchParameter>]]
Descrição Detalhada
Os fluxos de trabalho são, talvez, o principal elemento no Aplicativo Grupo de Resposta. Cada fluxo de trabalho é associado de forma exclusiva a um número de telefone; quando alguém chama este número, o fluxo de trabalho determina como a chamada será tratada. Por exemplo: a chamada pode ser roteada para uma série de perguntas de resposta interativa de voz (IVR), que solicitam a inserção, pelo chamador, de informações adicionais (por exemplo: "Pressione 1 para suporte de hardware. Pressione 2 para suporte de software.") Como alternativa, a chamada pode ser colocada em uma fila de espera e o chamador, em espera, até que um operador esteja disponível para atender à chamada. A disponibilidade dos operadores para atender chamadas também é determinada pelo fluxo de trabalho: os fluxos de trabalho são usados para configurar o horário comercial (os dias da semana e os horários do dia em que os operadores estão disponíveis para atender às chamadas) e feriados (dias em que não há operadores disponíveis para atender às chamadas).
O cmdlet Set-CsRgsWorkflow permite modificar as propriedades de um fluxo de trabalho existente. Por exemplo: é possível alterar o número de telefone de um fluxo de trabalho, os grupos de operadores associados a um fluxo de trabalho ou a ação padrão a ser executada a qualquer momento em que o fluxo de trabalho for acionado (ou seja, a qualquer momento em que alguém chamar o número de telefone associado ao fluxo de trabalho).
Set-CsRgsWorkflow não modifica diretamente um fluxo de trabalho propriamente dito. Em vez disso, se você precisar fazer alterações a um fluxo de trabalho, deve primeiro usar Get-CsRgsWorkflow, para criar uma referência de objeto para este fluxo de trabalho; isso significa simplesmente que você recupera o fluxo de trabalho de interesse e então armazena o objeto retornado em uma variável. Depois que a referência de objeto tiver sido criada, modifique as propriedades do objeto na memória e utilize Set-CsRgsWorkflow para gravar essas alterações de volta no fluxo de trabalho do Aplicativo Grupo de Resposta real. Se você não chamar Set-CsRgsWorkflow, as alterações existirão somente na memória e desaparecerão assim que você fechar o Windows PowerShell ou excluir a variável de referência de objeto.
Quem pode executar esse cmdlet: Por padrão, membros dos seguintes grupos estão autorizados a executar o cmdlet Set-CsRgsWorkflow localmente: RTCUniversalServerAdmins. Para retornar uma lista de todas as funções de controle de acesso baseado em função (RBAC) às quais este cmdlet tiver sido atribuído (inclusive qualquer função RBAC personalizada que tiver sido criada por você), execute o seguinte comando no prompt do Windows PowerShell:
Get-CsAdminRole | Where-Object {$_.Cmdlets –match "Set-CsRgsWorkflow"}
Parâmetros
Parâmetro | Obrigatório | Digite | Descrição |
---|---|---|---|
Instance |
Obrigatório |
objeto Fluxo de trabalho |
Referência de objeto ao fluxo de trabalho do Aplicativo Grupo de Resposta a ser modificado. Normalmente, recupera-se uma referência de objeto pelo uso do cmdlet Get-CsRgsWorkflow e pela atribuição do valor retornado a uma variável. Por exemplo: esse comando retorna uma referência de objeto ao fluxo de trabalho da Assistência Técnica e armazena esta referência de objeto em uma variável denominada $x: $x = Get-CsRgsWorkflow service:ApplicationServer:atl-cs-001.litwareinc.com -Name "Assistência Técnica" O parâmetro Instance é um parâmetro posicional: ele poderá ser omitido, contanto que a referência de objeto ao fluxo de trabalho seja o primeiro valor de parâmetro usado no comando. Isso significa que os dois comandos seguintes são funcionalmente idênticos: Set-CsRgsWorkflow –Instance $x Set-CsRgsWorkflow $x |
Force |
Opcional |
Parâmetro de opção |
Suprime a exibição de qualquer mensagem de erro não-fatal que possa ocorrer durante a execução do comando. |
WhatIf |
Opcional |
Parâmetro de opção |
Descreve o que aconteceria se o comando fosse executado sem ser executado de fato. |
Confirm |
Opcional |
Parâmetro de opção |
Solicita confirmação antes da execução do comando. |
Tipos de Entrada
Objeto Microsoft.Rtc.Rgs.Management.WritableSettings.Workflow. Set-CsRgsWorkflow aceita instâncias canalizadas do objeto de fluxo de trabalho do Grupo de Resposta.
Tipos de Retorno
Set-CsRgsWorkflow não retorna qualquer objeto ou valor. Em vez disso, o cmdlet modifica instâncias existentes do objeto Microsoft.Rtc.Rgs.Management.WritableSettings.Workflow.
Exemplo
-------------------------- Exemplo 1 ------------------------
$businessHours = Get-CsRgsHoursOfBusiness service:ApplicationServer:atl-cs-001.litwareinc.com -Name "US Business Hours"
$y = Get-CsRgsWorkflow Service:ApplicationServer:atl-cs-001.litwareinc.com -Name "Help Desk"
$y.BusinessHoursId = $businessHours.Identity
Set-CsRgsWorkflow -Instance $y
O comando mostrado no Exemplo 1 recupera um conjunto existente de horários comerciais e, em seguida, atribui esses horários a um fluxo de trabalho denominado Assistência Técnica. Para fazer isso, o primeiro comando no exemplo usa Get-CsRgsHoursOfBusiness, para recuperar o conjunto de horários comerciais denominado U.S. Business Hours do serviço ApplicationServer:atl-cs-001.litwareinc.com. Esse horário comercial é armazenado em uma variável denominada $businessHours.
Depois que o horário comercial tiver sido recuperado, o cmdlet Get-CsRgsWorkflow será usado para recuperar o fluxo de trabalho de Assistência Técnica de ApplicationServer:atl-cs-001.litwareinc.com. Esse objeto é armazenado em uma variável denominada $y.
No terceiro comando do exemplo, a propriedade BusinessHoursId do fluxo de trabalho Assistência Técnica é definida como sendo o conjunto recuperado de horários comerciais; isso é feito ao se definir BusinessHoursId como sendo a Identidade do conjunto recuperado ($businessHours.Identity). No comando final, Set-CsRgsWorkflow é usado para gravar o novo horário comercial no fluxo de trabalho real Assistência Técnica em ApplicationServer:atl-cs-001.litwareinc.com. Essa última etapa é importante porque, até esse momento, todas as alterações aconteceram somente na memória. Para realmente salvar essas alterações no fluxo de trabalho da Assistência Técnica, é necessário chamar Set-CsRgsWorkflow, passando ao cmdlet a referência de objeto ($y), que contém a cópia virtual do fluxo de trabalho.
-------------------------- Exemplo 2 ------------------------
$x = Get-CsRgsWorkflow service:ApplicationServer:atl-cs-001.litwareinc.com -Name "Help Desk"
$x.Description = "Workflow for the Redmond Help Desk"
Set-CsRgsWorkflow -Instance $x
O exemplo anterior atribui uma nova descrição ao fluxo de trabalho Assistência Técnica localizado no serviço ApplicationServer:atl-cs-001.litwareinc.com. Para isso, o primeiro comando no exemplo recupera o fluxo de trabalho especificado (-Name "Help Desk") e armazena o objeto recuperado em uma variável denominada $x. No comando 2, adiciona-se uma nova descrição ("Workflow for the Redmond Help Desk") à cópia virtual do fluxo de trabalho Assistência Técnica. Após a alteração da descrição, o comando 3 usa o Set-CsRgsWorkflow para gravar essas alterações de volta ao fluxo de trabalho real Assistência Técnica, localizado em ApplicationServer:atl-cs-001.litwareinc.com.
-------------------------- Exemplo 3 ------------------------
$musicFile = Get-Content -ReadCount 0 -Encoding Byte C:\MediaFiles\Hold.wav | Import-CsRgsAudioFile -Identity Service:ApplicationServer:atl-cs-001.litwareinc.com -FileName "HelpDeskHoldMusic.wav"
$y = Get-CsRgsWorkflow -Identity Service:ApplicationServer:atl-cs-001.litwareinc.com -Name "Help Desk"
$y.CustomMusicOnHoldFile = $musicFile
Set-CsRgsWorkflow -Instance $y
O comando mostrado no Exemplo 3 importa um novo arquivo de áudio do Grupo de Resposta e, em seguida, atribui esse arquivo de áudio a um fluxo de trabalho existente. Para fazer isso, o primeiro comando no exemplo importa o novo arquivo de áudio. Isso é feito chamando-se o cmdlet Get-Content, para ler o arquivo de áudio (C:\MediaFiles\Hold.wav) byte por byte; para garantir que o arquivo de áudio seja lido corretamente, inclua o parâmetro ReadCount (definido como 0) e o parâmetro Encoding (definido como Byte). Após a leitura do arquivo de áudio, os dados serão canalizados para New-CsRgsAudioFile, que criará um novo arquivo em ApplicationServer:atl-cs-001.litwareinc.com. Armazena-se uma referência de objeto a esse arquivo, que é denominada HelpDeskHoldMusic.wav, em uma variável denominada $musicFile.
Após a criação do arquivo de áudio, o comando 2 recupera o fluxo de trabalho Assistência Técnica de ApplicationServer:atl-cs-001.litwareinc.com, armazenando o objeto retornado em uma variável denominada $y. No comando 3, atribui-se o valor $musicFile à propriedade CustomMusicOnHoldFile desse fluxo de trabalho, que é a variável contendo o arquivo de áudio recém-criado.
Após a atribuição de $musicFile a CustomMusicOnHoldFile, o comando final usa o cmdlet Set-CsRgsWorkflow, para gravar essas alterações de volta no fluxo de trabalho Assistência Técnica.