New-SCSMSubscription
Hiermee maakt u een nieuw 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>]
Description
De cmdlet New-SCSMSubscription maakt een abonnement in Service Manager.
Voorbeelden
Voorbeeld 1: Een abonnement maken
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
De eerste opdracht haalt een klasse met de naam Microsoft.AD.Printer op met behulp van de cmdlet Get-SCSMClass en slaat deze vervolgens op in de variabele $PrinterClass.
Met de tweede opdracht wordt een bericht voor het e-mailbericht gemaakt en opgeslagen in de variabele $Message. In dit voorbeeld wordt dezelfde tekenreeks gebruikt als het onderwerp en de hoofdtekst van het e-mailbericht.
Met de derde opdracht wordt een management pack opgeslagen waarin deze sjabloon kan worden opgeslagen met behulp van de cmdlet Get-SCSMManagementPack en wordt deze vervolgens opgeslagen in de variabele $ManagementPack.
Met de vierde en vijfde opdracht worden waarden voor taal en codering opgeslagen in de variabelen $Language en $Encoding.
Met de zesde opdracht maakt u een e-mailsjabloon die van toepassing is wanneer er een wijziging optreedt in een printer. De opdracht maakt gebruik van waarden die zijn gemaakt in de eerste vijf opdrachten.
De zevende opdracht haalt de e-mailsjabloon printer Email sjabloon op met behulp van de cmdlet Get-SCSMEmailTemplate en slaat deze vervolgens op in de variabele $PrinterTemplate.
De achtste opdracht haalt de klasse met de naam Microsoft.AD.User op met behulp van Get-SCSMClass en slaat deze vervolgens op in de variabele $UserClass.
Met de negende opdracht wordt een exemplaar van de klasse in $UserClass die een naam heeft die overeenkomt met een opgegeven filter met behulp van de cmdlet Get-SCSMClassInstance. Met de opdracht wordt dat exemplaar opgeslagen in de variabele $Recipient.
Met de laatste opdracht maakt u een abonnement dat gebruikmaakt van de e-mailsjabloon, die eerder in het voorbeeld is gemaakt, waarmee een e-mail naar de beheerder wordt verzonden wanneer een printer wordt bijgewerkt.
Voorbeeld 2: Een abonnement voor e-mailmeldingen maken
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"
Met de eerste opdracht maakt u een criterium voor het abonnement en slaat u dit op in de $Criteria variabele.
De tweede opdracht haalt een klasse-exemplaar op voor de klasse met de naam System.User die een naam heeft die overeenkomt met een opgegeven filter met behulp van de cmdlet Get-SCSMClassInstance. Met de opdracht wordt dat exemplaar opgeslagen in de variabele $Recipient.
De derde opdracht haalt de klasse met de naam Microsoft.AD.Printer op met behulp van Get-SCSMClass en slaat deze vervolgens op in de variabele $Class.
De vierde opdracht haalt de e-mailsjabloon met de naam StandardEmailTemplate op met behulp van Get-SCSMEmailTemplate en slaat deze vervolgens op in de variabele $Template.
Met de laatste opdracht maakt u een abonnement voor e-mailmeldingen dat is geconfigureerd voor het verzenden van e-mail naar de domeinbeheerders. Het abonnement is gebaseerd op wijzigingen in de klasse Printer , waarbij de locatie is gewijzigd.
Parameters
-Class
Hiermee geeft u de naam van de klasse waarop het abonnement is gericht. De opgegeven naam moet verwijzen naar dezelfde klasse waarnaar wordt verwezen door de opgegeven e-mailsjabloon.
Type: | Microsoft.EnterpriseManagement.Configuration.ManagementPackClass |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ComputerName
Hiermee geeft u de naam van de computer waarop de System Center Data Access-service wordt uitgevoerd. Het gebruikersaccount dat is opgegeven in de referentieparameter moet toegangsrechten hebben voor de opgegeven computer.
Type: | System.String[] |
Position: | Named |
Default value: | Localhost |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Condition
Hiermee geeft u de voorwaarde waaronder het abonnement wordt uitgevoerd. Geldige waarden zijn:
- Gemaakt
- Bijgewerkt
- Verwijderd
Type: | Microsoft.EnterpriseManagement.ServiceManager.Sdk.Notifications.Condition |
Accepted values: | Created, Updated |
Position: | Named |
Default value: | Updated |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Hiermee wordt u gevraagd om bevestiging voordat u de cmdlet uitvoert.
Type: | System.Management.Automation.SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Hiermee geeft u de referenties op die deze cmdlet gebruikt om verbinding te maken met de server waarop de System Center Data Access-service wordt uitgevoerd. Het opgegeven gebruikersaccount moet toegangsrechten voor die server hebben.
Type: | System.Management.Automation.PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Criteria
Hiermee geeft u de XML-criteria op die het abonnement gebruikt. Als zowel de filterparameter als de parameter Criteria zijn opgegeven, gebruikt deze cmdlet alleen Criteria.
Type: | System.String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Description
Beschrijft het abonnement.
Type: | System.String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DisplayName
Hiermee geeft u de weergavenaam van het abonnement.
Type: | System.String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Enable
Geeft aan of deze cmdlet het abonnement inschakelt.
Type: | System.Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-GroupQueue
Hiermee geeft u een groep of een wachtrij op om een limiet in te stellen voor het aantal objecten dat het abonnement bijhoudt.
Type: | System.String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ManagementPack
Hiermee geeft u de naam van het management pack waarin deze cmdlet het abonnement opslaat.
Type: | Microsoft.EnterpriseManagement.Configuration.ManagementPack |
Position: | Named |
Default value: | The default management pack |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PassThru
Geeft aan dat deze cmdlet het abonnement retourneert dat wordt gemaakt. U kunt dit object doorgeven aan andere cmdlets.
Type: | System.Management.Automation.SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Recipient
Hiermee geeft u de lijst met gebruikers aan wie dit abonnement e-mail verzendt.
Type: | Microsoft.EnterpriseManagement.Common.EnterpriseManagementObject[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SCSession
Hiermee geeft u een object op dat de sessie naar een Service Manager-beheerserver vertegenwoordigt.
Type: | Microsoft.SystemCenter.Core.Connection.Connection[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Template
Hiermee geeft u de naam van een e-mailsjabloon.
Type: | Microsoft.EnterpriseManagement.ServiceManager.Sdk.Notifications.EmailTemplate |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Hiermee wordt weergegeven wat er zou gebeuren als u de cmdlet uitvoert. De cmdlet wordt niet uitgevoerd.
Type: | System.Management.Automation.SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Invoerwaarden
None.
U kunt geen invoer doorsnijden naar deze cmdlet.
Uitvoerwaarden
None.
Deze cmdlet genereert geen uitvoer.