Compartir a través de


Set-CsRgsWorkflow

 

Última modificación del tema: 2012-03-23

Modifica un flujo de trabajo de Grupo de respuesta existente. Los flujos de trabajo determinan las acciones que se llevan a cabo cuando la Aplicación de grupo de respuesta recibe una llamada telefónica.

Sintaxis

Set-CsRgsWorkflow -Instance <Workflow> [-Confirm [<SwitchParameter>]] [-Force <SwitchParameter>] [-WhatIf [<SwitchParameter>]]

Descripción detallada

Los flujos de trabajo son un elemento clave de la Aplicación de grupo de respuesta. Cada flujo de trabajo está asociado con un único número de teléfono; cuando alguien llama a dicho número, el flujo de trabajo determina cómo se administrará la llamada. Por ejemplo, la llamada puede enrutarse a través de una serie de preguntas de respuesta de voz interactiva (IVR) que indican al autor de la llamada que debe especificar información adicional (como "Pulse 1 si necesita asistencia para hardware. Pulse 2 si necesita asistencia para software"). También se puede colocar la llamada en una cola y poner al autor de la llamada en espera hasta que haya un agente disponible para atender la llamada. La disponibilidad de los agentes para responder a llamadas también está determinada por el flujo de trabajo: los flujos de trabajo se usan para configurar el horario laboral (días de la semana y horas del día en que los agentes están disponibles para responder a llamadas) y los festivos (días en los que no hay agentes disponibles para responder a llamadas).

El cmdlet Set-CsRgsWorkflow permite modificar las propiedades de un flujo de trabajo existente; por ejemplo, puede cambiar el número de teléfono de un flujo de trabajo, los grupos de agentes asociados con un flujo de trabajo o la acción predeterminada que se llevará a cabo al activar el flujo de trabajo, es decir, cuando alguien llame al número de teléfono asociado con el flujo de trabajo.

Set-CsRgsWorkflow no modifica directamente el flujo de trabajo en sí. Si necesita realizar cambios en un flujo de trabajo, primero debe usar Get-CsRgsWorkflow para crear una referencia a objeto al flujo de trabajo; de este modo, se recupera el flujo de trabajo correspondiente y se almacena el objeto devuelto en una variable. Una vez creada la referencia a objeto, se modifican las propiedades del objeto en la memoria y, a continuación, se usa Set-CsRgsWorkflow para escribir los cambios en el flujo de trabajo real de la Aplicación de grupo de respuesta. Si no llama a Set-CsRgsWorkflow, los cambios solo se aplicarán en la memoria, y desaparecerán al cerrar Windows PowerShell o eliminar la variable de referencia a objeto.

Quién puede ejecutar este cmdlet: De forma predeterminada, los miembros de los siguientes grupos están autorizados a ejecutar el cmdlet Set-CsRgsWorkflow de forma local: RTCUniversalServerAdmins. Para devolver una lista de todos los roles de control de acceso basado en roles (RBAC) a los que se ha asignado este cmdlet (incluido cualquier otro rol RBAC personalizado que usted mismo haya creado), ejecute el siguiente comando desde Windows PowerShell:

Get-CsAdminRole | Where-Object {$_.Cmdlets –match "Set-CsRgsWorkflow"}

Parámetros

Parámetro Requerido Tipo Descripción

Instance

Requerido

Objeto del flujo de trabajo

Referencia a objeto al flujo de trabajo de la Aplicación de grupo de respuesta que se modificará. Para recuperar una referencia a objeto se usa el cmdlet Get-CsRgsWorkflow y se asigna el valor devuelto a una variable; por ejemplo, este comando devuelve una referencia a objeto al flujo de trabajo Help Desk y almacena la referencia a objeto en una variable llamada $x:

$x = Get-CsRgsWorkflow service:ApplicationServer:atl-cs-001.litwareinc.com -Name "Help Desk"

El parámetro Instance es un parámetro de posición: se puede omitir si la referencia a objeto al flujo de trabajo es el primer valor de parámetro usado en el comando. Esto significa que los dos comandos siguientes son idénticos en cuanto a su funcionalidad:

Set-CsRgsWorkflow –Instance $x

Set-CsRgsWorkflow $x

Force

Opcional

Parámetro modificador

Suprime la visualización de los mensajes de error que no sean graves que se produzcan al ejecutar el comando.

WhatIf

Opcional

Parámetro modificador

Describe lo que ocurriría si se ejecutara el comando sin ejecutarlo realmente.

Confirm

Opcional

Parámetro modificador

Solicita confirmación antes de ejecutar el comando.

Tipos de entrada

Objeto Microsoft.Rtc.Rgs.Management.WritableSettings.Workflow. Set-CsRgsWorkflow acepta instancias transferidas del objeto de flujo de trabajo de Grupo de respuesta.

Tipos de valores devueltos

Set-CsRgsWorkflow no devuelve valores ni objetos. Este cmdlet se usa para modificar instancias del objeto Microsoft.Rtc.Rgs.Management.WritableSettings.Workflow.

Ejemplo

-------------------------- Ejemplo 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

Los comandos del Ejemplo 1 recuperan un conjunto de horarios laborales y, a continuación, asignan esos horarios laborales a un flujo de trabajo llamado Help Desk. Para ello, el primer comando del ejemplo usa Get-CsRgsHoursOfBusiness para recuperar la colección de horarios laborales llamada U.S. Business Hours del servicio ApplicationServer:atl-cs-001.litwareinc.com. Estos horarios laborales se almacenan en una variable llamada $businessHours.

Una vez recuperados los horarios laborales, se usa el cmdlet Get-CsRgsWorkflow para recuperar el flujo de trabajo Help Desk de ApplicationServer:atl-cs-001.litwareinc.com. Este objeto se almacena en una variable llamada $y.

En el tercer comando del ejemplo, se establece la colección de horarios laborales recuperada como valor de la propiedad BusinessHoursId del flujo de trabajo Help Desk; para ello, se define la identidad de la colección recuperada ($businessHours.Identity) como valor de BusinessHoursId. En el último comando, se usa Set-CsRgsWorkflow para escribir el nuevo horario laboral en el flujo de trabajo Help Desk real de ApplicationServer:atl-cs-001.litwareinc.com. Este último paso es importante porque, hasta este punto, todos los cambios se han realizado solo en la memoria. Para guardar realmente estos cambios en el flujo de trabajo Help Desk, es necesario llamar a Set-CsRgsWorkflow y enviar al cmdlet la referencia a objeto ($y) que contiene la copia virtual del flujo de trabajo.

-------------------------- Ejemplo 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

En el ejemplo anterior se agrega una nueva descripción al flujo de trabajo Help Desk del servicio ApplicationServer:atl-cs-001.litwareinc.com. Para ello, el primer comando del ejemplo recupera el flujo de trabajo especificado (-Name "Help Desk") y almacena el objeto recuperado en una variable llamada $x. En el comando 2, se agrega una nueva descripción ("Workflow for the Redmond Help Desk") a la copia virtual del flujo de trabajo Help Desk. Una vez cambiada la descripción, el comando 3 usa Set-CsRgsWorkflow para escribir los cambios en el flujo de trabajo Help Desk real que se encuentra en ApplicationServer:atl-cs-001.litwareinc.com.

-------------------------- Ejemplo 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

Los comandos del Ejemplo 3 importan un nuevo archivo de audio de Grupo de respuesta y lo asignan a un flujo de trabajo existente. Para ello, el primer comando del ejemplo importa el nuevo archivo de audio. Esto se realiza llamando al cmdlet Get-Content para leer el archivo de audio (C:\MediaFiles\Hold.wav) byte por byte; para garantizar la correcta lectura del archivo de audio, incluya el parámetro ReadCount (establecido en 0) y el parámetro Encoding (establecido en Byte). Una vez leído el archivo de audio, se transfieren los datos a New-CsRgsAudioFile, que crea un archivo en ApplicationServer:atl-cs-001.litwareinc.com. Se almacena una referencia a objeto a este archivo (a la que se asigna el nombre HelpDeskHoldMusic.wav), en una variable llamada $musicFile.

Una vez creado el archivo de audio, el comando 2 recupera el flujo de trabajo Help Desk de ApplicationServer:atl-cs-001.litwareinc.com y almacena el objeto devuelto en una variable llamada $y. En el comando 3, se asigna el valor $musicFile (variable que contiene el archivo de audio recién creado) a la propiedad CustomMusicOnHoldFile de este flujo de trabajo.

Una vez asignado el valor $musicFile a CustomMusicOnHoldFile, el comando final usa el cmdlet Set-CsRgsWorkflow para escribir los cambios en el flujo de trabajo Help Desk.