New-SCSMSubscription
Crea una nuova sottoscrizione in Service Manager.
Sintassi
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>]
Descrizione
Il cmdlet New-SCSMSubscription crea una sottoscrizione in Service Manager.
Esempio
Esempio 1: Creare una sottoscrizione
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
Il primo comando ottiene una classe denominata Microsoft.AD.Printer usando il cmdlet Get-SCSMClass e quindi la archivia nella variabile $PrinterClass.
Il secondo comando crea un messaggio per il messaggio di posta elettronica e lo archivia nella variabile $Message. In questo esempio viene utilizzata la stessa stringa dell'oggetto e del corpo del messaggio di posta elettronica.
Il terzo comando ottiene un Management Pack in cui salvare questo modello usando il cmdlet Get-SCSMManagementPack e quindi lo archivia nella variabile $ManagementPack.
Il quarto e il quinto comando archivia i valori per la lingua e la codifica nelle variabili $Language e $Encoding.
Il sesto comando crea un modello di posta elettronica che si applica quando si verifica una modifica a una stampante. Il comando usa i valori creati nei primi cinque comandi.
Il settimo comando ottiene il modello di posta elettronica denominato Printer Email Template usando il cmdlet Get-SCSMEmailTemplate e quindi lo archivia nella variabile $PrinterTemplate.
L'ottavo comando ottiene la classe denominata Microsoft.AD.User usando Get-SCSMClass e quindi la archivia nella variabile $UserClass.
Il nono comando ottiene un'istanza della classe in $UserClass con un nome corrispondente a un filtro specificato usando il cmdlet Get-SCSMClassInstance. Il comando archivia tale istanza nella variabile $Recipient.
Il comando finale crea una sottoscrizione che usa il modello di posta elettronica creato in precedenza nell'esempio, che invia un messaggio di posta elettronica all'amministratore ogni volta che viene aggiornata una stampante.
Esempio 2: Creare una sottoscrizione di notifica tramite posta elettronica
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"
Il primo comando crea un criterio per la sottoscrizione e lo archivia nella variabile $Criteria.
Il secondo comando ottiene un'istanza di classe per la classe denominata System.User con un nome corrispondente a un filtro specificato usando il cmdlet Get-SCSMClassInstance. Il comando archivia tale istanza nella variabile $Recipient.
Il terzo comando ottiene la classe denominata Microsoft.AD.Printer usando Get-SCSMClass e quindi la archivia nella variabile $Class.
Il quarto comando ottiene il modello di posta elettronica denominato StandardEmailTemplate usando Get-SCSMEmailTemplate e quindi lo archivia nella variabile $Template.
Il comando finale crea una sottoscrizione di notifica tramite posta elettronica configurata per l'invio di posta elettronica agli amministratori di dominio. La sottoscrizione è basata sulle modifiche apportate alla classe Printer, in cui il percorso è stato modificato.
Parametri
-Class
Specifica il nome della classe che rappresenta la destinazione della sottoscrizione. Il nome specificato deve fare riferimento alla stessa classe a cui fa riferimento il modello di posta elettronica specificato.
Type: | Microsoft.EnterpriseManagement.Configuration.ManagementPackClass |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ComputerName
Specifica il nome del computer in cui è in esecuzione il servizio di accesso ai dati di System Center. L'account utente specificato nel parametro Credential deve disporre dei diritti di accesso per il computer specificato.
Type: | System.String[] |
Position: | Named |
Default value: | Localhost |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Condition
Specifica la condizione in cui viene eseguita la sottoscrizione. I valori validi sono:
- Data di creazione
- Aggiornato
- Eliminata
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
Richiede la conferma dell'utente prima di eseguire il cmdlet.
Type: | System.Management.Automation.SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Specifica le credenziali usate da questo cmdlet per connettersi al server in cui viene eseguito il servizio Di accesso ai dati di System Center. L'account utente specificato deve disporre di diritti di accesso per tale server.
Type: | System.Management.Automation.PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Criteria
Specifica i criteri XML utilizzati dalla sottoscrizione. Se vengono specificati sia il parametro Filter che il parametro Criteria , questo cmdlet usa solo Criteri.
Type: | System.String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Description
Descrive la sottoscrizione.
Type: | System.String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DisplayName
Specifica il nome visualizzato della sottoscrizione.
Type: | System.String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Enable
Indica se questo cmdlet abilita la sottoscrizione.
Type: | System.Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-GroupQueue
Specifica un gruppo o una coda per impostare un limite per il numero di oggetti di cui la sottoscrizione tiene traccia.
Type: | System.String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ManagementPack
Specifica il nome del Management Pack in cui questo cmdlet archivia la sottoscrizione.
Type: | Microsoft.EnterpriseManagement.Configuration.ManagementPack |
Position: | Named |
Default value: | The default management pack |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PassThru
Indica che questo cmdlet restituisce la sottoscrizione creata. È possibile passare questo oggetto ad altri cmdlet.
Type: | System.Management.Automation.SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Recipient
Specifica l'elenco di utenti a cui la sottoscrizione invia un messaggio di posta elettronica.
Type: | Microsoft.EnterpriseManagement.Common.EnterpriseManagementObject[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SCSession
Specifica un oggetto che rappresenta la sessione per un server di gestione di Service Manager.
Type: | Microsoft.SystemCenter.Core.Connection.Connection[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Template
Specifica il nome di un modello di posta elettronica.
Type: | Microsoft.EnterpriseManagement.ServiceManager.Sdk.Notifications.EmailTemplate |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Mostra l'esito in caso di esecuzione del cmdlet. Il cmdlet non viene eseguito.
Type: | System.Management.Automation.SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Input
None.
Non è possibile inviare input tramite pipe a questo cmdlet.
Output
None.
Questo cmdlet non genera alcun output.