New-SCSMSubscription
Tworzy nową subskrypcję w programie Service Manager.
Składnia
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>]
Opis
Polecenie cmdlet New-SCSMSubscription tworzy subskrypcję w programie Service Manager.
Przykłady
Przykład 1. Tworzenie subskrypcji
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
Pierwsze polecenie pobiera klasę o nazwie Microsoft.AD.Printer przy użyciu polecenia cmdlet Get-SCSMClass, a następnie zapisuje ją w zmiennej $PrinterClass.
Drugie polecenie tworzy wiadomość dla wiadomości e-mail i zapisuje ją w zmiennej $Message. W tym przykładzie użyto tego samego ciągu co temat i treść wiadomości e-mail.
Trzecie polecenie pobiera pakiet administracyjny, w którym można zapisać ten szablon przy użyciu polecenia cmdlet Get-SCSMManagementPack, a następnie zapisuje go w zmiennej $ManagementPack.
Czwarte i piąte polecenia przechowują wartości języka i kodowania w zmiennych $Language i $Encoding.
Szóste polecenie tworzy szablon wiadomości e-mail, który ma zastosowanie w przypadku zmiany drukarki. Polecenie używa wartości utworzonych w pierwszych pięciu poleceniach.
Siódme polecenie pobiera szablon wiadomości e-mail o nazwie Szablon wiadomości e-mail drukarki przy użyciu polecenia cmdlet Get-SCSMEmailTemplate, a następnie zapisuje go w zmiennej $PrinterTemplate.
Ósme polecenie pobiera klasę o nazwie Microsoft.AD.User przy użyciu Get-SCSMClass, a następnie zapisuje ją w zmiennej $UserClass.
Dziewiąte polecenie pobiera wystąpienie klasy w $UserClass, które ma nazwę zgodną z określonym filtrem przy użyciu polecenia cmdlet Get-SCSMClassInstance. Polecenie przechowuje to wystąpienie w zmiennej $Recipient.
Ostatnie polecenie tworzy subskrypcję, która korzysta z szablonu wiadomości e-mail utworzonej wcześniej w przykładzie, która wysyła wiadomość e-mail do administratora za każdym razem, gdy drukarka zostanie zaktualizowana.
Przykład 2. Tworzenie subskrypcji powiadomień e-mail
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"
Pierwsze polecenie tworzy kryteria subskrypcji i przechowuje je w zmiennej $Criteria.
Drugie polecenie pobiera wystąpienie klasy dla klasy o nazwie System.User, która ma nazwę zgodną z określonym filtrem przy użyciu polecenia cmdlet Get-SCSMClassInstance. Polecenie przechowuje to wystąpienie w zmiennej $Recipient.
Trzecie polecenie pobiera klasę o nazwie Microsoft.AD.Printer przy użyciu Get-SCSMClass, a następnie zapisuje ją w zmiennej $Class.
Czwarte polecenie pobiera szablon wiadomości e-mail o nazwie StandardEmailTemplate przy użyciu Get-SCSMEmailTemplate, a następnie zapisuje go w zmiennej $Template.
Końcowe polecenie tworzy subskrypcję powiadomień e-mail skonfigurowaną do wysyłania wiadomości e-mail do administratorów domeny.
Subskrypcja jest oparta na zmianach w klasie drukarki
Parametry
-Class
Określa nazwę klasy docelowej subskrypcji. Określona nazwa musi odwoływać się do tej samej klasy, do którego odwołuje się określony szablon wiadomości e-mail.
Typ: | Microsoft.EnterpriseManagement.Configuration.ManagementPackClass |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-ComputerName
Określa nazwę komputera, na którym działa usługa System Center Data Access. Konto użytkownika określone w parametrze Credential musi mieć prawa dostępu do określonego komputera.
Typ: | System.String[] |
Position: | Named |
Domyślna wartość: | Localhost |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Condition
Określa warunek, w którym jest uruchamiana subskrypcja. Prawidłowe wartości to:
- Utworzono
- Aktualizowano
- Usunięte
Typ: | Microsoft.EnterpriseManagement.ServiceManager.Sdk.Notifications.Condition |
Dopuszczalne wartości: | Created, Updated |
Position: | Named |
Domyślna wartość: | Updated |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Confirm
Monituje o potwierdzenie przed uruchomieniem polecenia cmdlet.
Typ: | System.Management.Automation.SwitchParameter |
Aliasy: | cf |
Position: | Named |
Domyślna wartość: | False |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Credential
Określa poświadczenia używane przez to polecenie cmdlet do nawiązywania połączenia z serwerem, na którym działa usługa System Center Data Access. Określone konto użytkownika musi mieć prawa dostępu do tego serwera.
Typ: | System.Management.Automation.PSCredential |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Criteria
Określa kryteria XML, których używa subskrypcja.
Jeśli określono zarówno parametr filtru
Typ: | System.String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Description
Opisuje subskrypcję.
Typ: | System.String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-DisplayName
Określa nazwę wyświetlaną subskrypcji.
Typ: | System.String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Enable
Wskazuje, czy to polecenie cmdlet włącza subskrypcję.
Typ: | System.Boolean |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-GroupQueue
Określa grupę lub kolejkę, aby ustawić limit liczby obiektów, które śledzi subskrypcja.
Typ: | System.String[] |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-ManagementPack
Określa nazwę pakietu administracyjnego, w którym to polecenie cmdlet przechowuje subskrypcję.
Typ: | Microsoft.EnterpriseManagement.Configuration.ManagementPack |
Position: | Named |
Domyślna wartość: | The default management pack |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-PassThru
Wskazuje, że to polecenie cmdlet zwraca utworzoną subskrypcję. Ten obiekt można przekazać do innych poleceń cmdlet.
Typ: | System.Management.Automation.SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Recipient
Określa listę użytkowników, do których ta subskrypcja wysyła wiadomość e-mail.
Typ: | Microsoft.EnterpriseManagement.Common.EnterpriseManagementObject[] |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-SCSession
Określa obiekt reprezentujący sesję na serwerze zarządzania programu Service Manager.
Typ: | Microsoft.SystemCenter.Core.Connection.Connection[] |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Template
Określa nazwę szablonu wiadomości e-mail.
Typ: | Microsoft.EnterpriseManagement.ServiceManager.Sdk.Notifications.EmailTemplate |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-WhatIf
Pokazuje, co się stanie, jeśli polecenie cmdlet zostanie uruchomione. Polecenie cmdlet nie jest uruchamiane.
Typ: | System.Management.Automation.SwitchParameter |
Aliasy: | wi |
Position: | Named |
Domyślna wartość: | False |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
Dane wejściowe
None.
Nie można przekazać danych wejściowych potoku do tego polecenia cmdlet.
Dane wyjściowe
None.
To polecenie cmdlet nie generuje żadnych danych wyjściowych.