Freigeben über


Set-CsRgsWorkflow

 

Letztes Änderungsdatum des Themas: 2012-03-23

Ändert einen vorhandenen Workflow für die Reaktionsgruppe. Workflows legen die Aktionen fest, die bei Eingang eines Telefonanrufs bei der Reaktionsgruppenanwendung durchgeführt werden.

Syntax

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

Detaillierte Beschreibung

Workflows sind wahrscheinlich das wichtigste Element der Reaktionsgruppenanwendung. Jeder Workflow ist eindeutig einer Telefonnummer zugeordnet; wenn jemand diese Nummer anruft, legt der Workflow fest, wie der Anruf verarbeitet wird. Beispielsweise kann der Anruf zur Beantwortung einer Reihe von Fragen an das interaktive Sprachantwortsystem weitergeleitet werden, sodass der Anrufer zur Eingabe weiterer Informationen aufgefordert wird (Beispiel: "Drücken Sie 1 für Hardwaresupport. Drücken Sie 2 für Softwaresupport."). Alternativ dazu kann der Anruf in eine Warteschleife gestellt und gehalten werden, bis ein Agent zum Entgegennehmen des Anrufs verfügbar ist. Auch die Verfügbarkeit von Agenten zur Anrufannahme wird vom Workflow vorgegeben: Mithilfe von Workflows werden sowohl Geschäftszeiten (die Wochentage und Tageszeiten, zu denen Agenten für die Annahme von Anrufen verfügbar sind) als auch Feiertage (Tage, an denen keine Agenten zur Anrufannahme bereitstehen) konfiguriert.

Mit dem Cmdlet Set-CsRgsWorkflow können Sie die Eigenschaften eines vorhandenen Workflows ändern. Beispielsweise können Sie die Telefonnummer für einen Workflow, die einem Workflow zugeordneten Agentengruppen oder die Standardaktion ändern, die bei Auslösung des Workflows ausgeführt wird (also dann, wenn jemand die dem Workflow zugeordnete Nummer anruft).

Mit dem Cmdlet Set-CsRgsWorkflow kann keine direkte Änderung eines Workflows durchgeführt werden. Stattdessen müssen Sie zur Änderung eines Workflows zunächst das Cmdlet Get-CsRgsWorkflow aufrufen, um einen Objektverweis auf diesen Workflow zu erstellen. Dies bedeutet, dass Sie den gewünschten Workflow abrufen und das zurückgegebene Objekt in einer Variablen speichern. Nachdem der Objektverweis erstellt wurde, ändern Sie die Eigenschaften des Objekts im Arbeitsspeicher. Anschließend verwenden Sie das Cmdlet Set-CsRgsWorkflow, um diese Änderungen in den tatsächlichen Workflow der Reaktionsgruppenanwendung zurückzuschreiben. Wenn Sie Set-CsRgsWorkflow nicht aufrufen, sind die Änderungen nur im Arbeitsspeicher vorhanden und gehen verloren, sobald Sie Windows PowerShell beenden oder die Objektverweisvariable löschen.

Dieses Cmdlet kann von folgenden Benutzern ausgeführt werden: Standardmäßig dürfen Mitglieder der folgenden Gruppen das Cmdlet Set-CsRgsWorkflow lokal ausführen: RTCUniversalServerAdmins. Geben Sie den folgenden Befehl an der Windows PowerShell-Eingabeaufforderung ein, um eine Liste aller rollenbasierten Zugriffssteuerungsrollen zurückzugeben, die diesem Cmdlet zugewiesen wurden (einschließlich der benutzerdefinierten rollenbasierten Zugriffssteuerungsrollen, die Sie selbst erstellt haben):

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

Parameter

Parameter Erforderlich Typ Beschreibung

Instance

Erforderlich

Workflow-Objekt

Objektverweis auf den zu ändernden Reaktionsgruppenanwendung-Workflow. Ein Objektverweis wird normalerweise mithilfe des Cmdlets Get-CsRgsWorkflow und durch Zuweisen des zurückgegebenen Werts zu einer Variablen abgerufen. Mit diesem Befehl wird beispielsweise ein Objektverweis auf den Workflow "Help Desk" zurückgegeben und dieser Objektverweis in der Variablen "$x" gespeichert:

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

Der Parameter "Instance" ist ein Positionsparameter, der weggelassen werden kann, solange der Objektverweis auf den Workflow der erste im Befehl verwendete Parameterwert ist. Dies bedeutet, dass die beiden folgenden Befehl funktional identisch sind:

Set-CsRgsWorkflow –Instance $x

Set-CsRgsWorkflow $x

Force

Optional

Switch-Parameter

Unterdrückt die Anzeige von Meldungen bei nicht schwerwiegenden Fehlern, die beim Ausführen des Befehls auftreten können.

WhatIf

Optional

Switch-Parameter

Beschreibt die Auswirkungen einer Ausführung des Befehls, ohne den Befehl tatsächlich auszuführen.

Confirm

Optional

Switch-Parameter

Fordert Sie vor der Ausführung des Befehls zum Bestätigen auf.

Eingabetypen

Microsoft.Rtc.Rgs.Management.WritableSettings.Workflow-Objekt. Set-CsRgsWorkflow akzeptiert weitergeleitete Objektinstanzen des Reaktionsgruppenworkflows.

Rückgabetypen

Set-CsRgsWorkflow gibt keine Objekte oder Werte zurück. Stattdessen werden mit dem Cmdlet vorhandene Instanzen des Objekts "Microsoft.Rtc.Rgs.Management.WritableSettings.Workflow" geändert.

Beispiel

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

Die in Beispiel 1 gezeigten Befehle rufen einen vorhandenen Geschäftszeitensatz ab und weisen diese Geschäftszeiten einem Workflow namens "Help Desk" zu. Hierzu verwendet der erste Befehl im Beispiel das Cmdlet Get-CsRgsHoursOfBusiness, um die Geschäftszeitenauflistung "US Business Hours" aus dem Dienst "ApplicationServer:atl-cs-001.litwareinc.com" abzurufen. Diese Geschäftszeiten werden anschließend in der Variablen "$businessHours" gespeichert.

Nachdem die Geschäftszeiten abgerufen wurden, wird das Cmdlet Get-CsRgsWorkflow verwendet, um den Workflow "Help Desk" aus "ApplicationServer:atl-cs-001.litwareinc.com" abzurufen. Dieses Objekt wird in der Variablen "$y" gespeichert.

Der dritte Befehl im Beispiel legt die Eigenschaft "BusinessHoursId" für den Workflow "Help Desk" auf die abgerufene Geschäftszeitenauflistung fest. Dies wird erreicht, indem "BusinessHoursId" auf den Identitätswert der abgerufenen Auflistung festgelegt wird ($businessHours.Identity). Im letzten Befehl wird das Cmdlet Set-CsRgsWorkflowverwendet, um die neuen Geschäftszeiten in den tatsächlichen Workflow "Help Desk" auf "ApplicationServer:atl-cs-001.litwareinc.com" zu schreiben. Der letzte Schritt ist wichtig, da bisher sämtliche Änderungen nur im Arbeitsspeicher durchgeführt wurden. Um die Änderungen tatsächlich im Workflow "Help Desk" zu speichern, müssen Sie das Cmdlet Set-CsRgsWorkflow aufrufen und an ihn den Objektverweis ($y) übergeben, der die virtuelle Kopie des Workflows enthält.

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

In diesem Beispiel wird dem Workflow "Help Desk" des Diensts "ApplicationServer:atl-cs-001.litwareinc.com" eine neue Beschreibung zugewiesen. Hierzu ruft der erste Befehl im Beispiel den angegebenen Workflow (-Name "Help Desk") ab und speichert das abgerufene Objekt in der Variablen "$x". In Befehl 2 wird der virtuellen Kopie des Workflows "Help Desk" eine neue Beschreibung ("Workflow for the Redmond Help Desk") hinzugefügt. Nachdem die Beschreibung geändert wurde, verwendet Befehl 3 das Cmdlet Set-CsRgsWorkflow, um diese Änderungen in den tatsächlichen Workflow "Help Desk" auf "ApplicationServer:atl-cs-001.litwareinc.com" zurückzuschreiben.

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

Die in Beispiel 3 gezeigten Befehle importieren eine neue Audiodatei für die Reaktionsgruppe und weisen diese Audiodatei einem vorhandenen Workflow zu. Hierzu wird mit dem ersten Befehl im Beispiel die neue Audiodatei importiert. Dies wird erreicht, indem zunächst mit dem Cmdlet Get-Content die Audiodatei (C:\MediaFiles\Hold.wav) byteweise eingelesen wird. Um sicherzustellen, dass der Lesevorgang erfolgreich war, werden hierbei die Parameter "ReadCount" (mit dem Wert 0) und "Encoding" (mit dem Wert "Byte") eingeschlossen. Nach dem Einlesen der Audiodatei werden die Daten an das Cmdlet New-CsRgsAudioFile weitergeleitet, das eine neue Datei auf "ApplicationServer:atl-cs-001.litwareinc.com" erstellt. Anschließend wird ein Objektverweis auf diese Datei mit dem Namen "HelpDeskHoldMusic.wav" in der Variablen "$musicFile" gespeichert.

Nachdem die Audiodatei erstellt wurde, ruft Befehl 2 den Workflow "Help Desk" aus "ApplicationServer:atl-cs-001.litwareinc.com" ab und speichert das zurückgegebene Objekt in der Variablen "$y" gespeichert. In Befehl 3 wird der Eigenschaft "CustomMusicOnHoldFile" für diesen Workflow der Wert "$musicFile" zugewiesen (die Variable, die die neu erstellte Audiodatei enthält).

Nachdem "$musicFile" der Eigenschaft "CustomMusicOnHoldFile" zugewiesen wurde, wird im abschließenden Befehl das Cmdlet Set-CsRgsWorkflow verwendet, um diese Änderungen in den Workflow "Help Desk" zurückzuschreiben.