New-SCSMSubscription

Erstellt ein Abonnement in Service Manager.

Syntax

New-SCSMSubscription
   -Class <ManagementPackClass>
   [-Condition <Condition>]
   [-Description <String>]
   [-Criteria <String>]
   [-GroupQueue <String[]>]
   [-ManagementPack <ManagementPack>]
   -DisplayName <String>
   -Recipient <EnterpriseManagementObject[]>
   -Template <EmailTemplate>
   [-PassThru]
   [-Enable <Boolean>]
   [-SCSession <Connection[]>]
   [-ComputerName <String[]>]
   [-Credential <PSCredential>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Beschreibung

Das Cmdlet New-SCSMSubscription erstellt ein Abonnement in Service Manager.

Beispiele

Beispiel 1: Erstellen eines Abonnements

PS C:\>$PrinterClass = Get-SCSMClass -Name "Microsoft.AD.Printer"
PS C:\> $Message = 'Printer $Context/Property[''Type=Windows!Microsoft.AD.Printer'']/PrinterName$ has been updated'
PS C:\> $ManagementPack = Get-SCSMManagementPack -Name "ServiceManager.ConfigurationManagement.Configuration"
PS C:\> $Language = [System.Globalization.CultureInfo]"EN"
PS C:\> $Encoding = [System.Text.Encoding]::ASCII
PS C:\> New-SCSMEmailTemplate -Class $PrinterClass -DisplayName "Printer Email Template" -Body $Message -Description "A template for printer notifications" -Encoding $Encoding -Language $Language -ManagementPack $ManagementPack -Subject $Message
PS C:\> $PrinterTemplate = Get-SCSMEmailTemplate -DisplayName "Printer Email Template"
PS C:\> $UserClass = Get-SCSMClass -Name "Microsoft.AD.User"
PS C:\> $Recipient = Get-SCSMClassInstance -Class $UserClass -Filter 'UserName -like "%Administrator"'
PS C:\> New-SCSMSubscription -Class $PrinterClass -DisplayName "Printer update subscription" -Recipient $Recipient -Template $PrinterTemplate -Condition Updated

Der erste Befehl ruft eine Klasse namens Microsoft.AD.Printer mithilfe des Cmdlets Get-SCSMClass ab und speichert sie dann in der $PrinterClass Variablen.

Der zweite Befehl erstellt eine Nachricht für die E-Mail und speichert sie in der $Message Variablen. In diesem Beispiel wird die gleiche Zeichenfolge wie der Betreff und der Textkörper der E-Mail verwendet.

Der dritte Befehl ruft ein Management Pack ab, in dem diese Vorlage mithilfe des Cmdlets Get-SCSMManagementPack gespeichert werden soll, und speichert sie dann in der $ManagementPack Variablen.

Die vierten und fünften Befehle speichern Werte für Sprache und Codierung in den $Language und $Encoding Variablen.

Der sechste Befehl erstellt eine E-Mail-Vorlage, die angewendet wird, wenn eine Änderung auf einen Drucker auftritt. Der Befehl verwendet Werte, die in den ersten fünf Befehlen erstellt wurden.

Der siebte Befehl ruft die E-Mail-Vorlage "Drucker Email Vorlage" mithilfe des Cmdlets Get-SCSMEmailTemplate ab und speichert sie dann in der $PrinterTemplate Variablen.

Der achte Befehl ruft die Klasse mit dem Namen Microsoft.AD.User mithilfe von Get-SCSMClass ab und speichert sie dann in der $UserClass Variablen.

Der neunte Befehl ruft eine Instanz der Klasse in $UserClass ab, die einen Namen enthält, der einem angegebenen Filter entspricht, indem sie das Cmdlet Get-SCSMClassInstance verwenden. Der Befehl speichert diese Instanz in der $Recipient Variablen.

Der letzte Befehl erstellt ein Abonnement, das die E-Mail-Vorlage verwendet, die zuvor im Beispiel erstellt wurde, die eine E-Mail an den Administrator sendet, wenn ein Drucker aktualisiert wird.

Beispiel 2: Erstellen eines E-Mail-Benachrichtigungsabonnements

PS C:\>$Criteria = @'
>>  <Criteria>
>>  <Expression>
>>  <SimpleExpression>
>>  <ValueExpression>
>>  <Property State="Pre">$Context/Property[Type='Windows!Microsoft.AD.Printer']/Location$</Property>
>>     </ValueExpression>
>>    <Operator>NotEqual</Operator>
>>    <ValueExpression>
>>      <Property State="Post">$Context/Property[Type='Windows!Microsoft.AD.Printer']/Location$</Property>
>>     </ValueExpression>
>>    </SimpleExpression>
>>   </Expression>
>>  </Criteria>
>>  @'
PS C:\> $Recipient = Get-SCSMClassInstance -DisplayName "System.User" -Filter "Name -like 'domain admins'"
PS C:\> $Class = Get-SCSMClass -Displayname "Microsoft.AD.Printer"
PS C:\> $Template = Get-SCSMEmailTemplate -Displayname "StandardEmailTemplate"
PS C:\> New-SCSMSubscription -Class <ManagementPackClass> -DisplayName "A printer subscription" -Recipient $Recipient -Template $Template -Condition Updated -Criteria $Criteria -Description "Changes in the printer location will cause email to be sent"

Der erste Befehl erstellt ein Kriterien für das Abonnement und speichert ihn in der $Criteria Variablen.

Der zweite Befehl ruft eine Klasseninstanz für die Klasse mit dem Namen "System.User " ab, die einen angegebenen Filter mit dem Cmdlet Get-SCSMClassInstance entspricht. Der Befehl speichert diese Instanz in der $Recipient Variablen.

Der dritte Befehl ruft die Klasse mit dem Namen Microsoft.AD.Printer mithilfe von Get-SCSMClass ab und speichert sie dann in der $Class-Variable.

Der vierte Befehl ruft die E-Mail-Vorlage mit dem Namen StandardEmailTemplate mithilfe von Get-SCSMEmailTemplate ab und speichert sie dann in der $Template Variablen.

Der letzte Befehl erstellt ein E-Mail-Benachrichtigungsabonnement, das zum Senden von E-Mails an die Domänenadministratoren konfiguriert ist. Das Abonnement basiert auf Änderungen in der Druckerklasse , wo sich der Speicherort geändert hat.

Parameter

-Class

Gibt den Namen der Klasse an, die das Abonnement angibt. Der angegebene Name muss auf dieselbe Klasse verweisen, auf die die angegebene E-Mail-Vorlage verwiesen wird.

Type:ManagementPackClass
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ComputerName

Gibt den Namen des Computers an, auf dem der System Center Data Access-Dienst ausgeführt wird. Das Benutzerkonto, das im Parameter "Anmeldeinformationen " angegeben ist, muss Über Zugriffsrechte für den angegebenen Computer verfügen.

Type:String[]
Position:Named
Default value:Localhost
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Condition

Gibt die Bedingung an, unter der das Abonnement ausgeführt wird. Gültige Werte sind:

  • Erstellt
  • Aktualisiert
  • Deleted
Type:Condition
Accepted values:Created, Updated
Position:Named
Default value:Updated
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Gibt die Anmeldeinformationen an, die dieses Cmdlet zum Herstellen einer Verbindung mit dem Server verwendet, auf dem der System Center Data Access-Dienst ausgeführt wird. Das angegebene Benutzerkonto muss Über Zugriffsrechte für diesen Server verfügen.

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Criteria

Gibt die XML-Kriterien an, die das Abonnement verwendet. Wenn sowohl der Parameter Filter als auch der Parameter "Kriterien" angegeben sind, verwendet dieses Cmdlet nur Kriterien.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Description

Beschreibt das Abonnement.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DisplayName

Gibt den Anzeigenamen des Abonnements an.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Enable

Gibt an, ob dieses Cmdlet das Abonnement aktiviert.

Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-GroupQueue

Gibt eine Gruppe oder eine Warteschlange an, um einen Grenzwert für die Anzahl der Objekte festzulegen, die das Abonnement verfolgt.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ManagementPack

Gibt den Namen des Management Packs an, in dem dieses Cmdlet das Abonnement speichert.

Type:ManagementPack
Position:Named
Default value:The default management pack
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PassThru

Gibt an, dass dieses Cmdlet das Abonnement zurückgibt, das erstellt wird. Sie können dieses Objekt an andere Cmdlets übergeben.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Recipient

Gibt die Liste der Benutzer an, an die dieses Abonnement E-Mails sendet.

Type:EnterpriseManagementObject[]
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-SCSession

Gibt ein Objekt an, das die Sitzung auf einen Service Manager Verwaltungsserver darstellt.

Type:Connection[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Template

Gibt den Namen einer E-Mail-Vorlage an.

Type:EmailTemplate
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Eingaben

None.

Eingaben können nicht an dieses Cmdlet weitergereicht werden.

Ausgaben

None.

Dieses Cmdlet generiert keine Ausgabe.