New-SCSMSubscription
Создает новую подписку в Service Manager.
Синтаксис
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>]
Описание
Командлет New-SCSMSubscription создает подписку в Service Manager.
Примеры
Пример 1. Создание подписки
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
Первая команда получает класс с именем Microsoft.AD.Printer с помощью командлета Get-SCSMClass, а затем сохраняет его в переменной $PrinterClass.
Вторая команда создает сообщение для электронной почты и сохраняет его в переменной $Message. В этом примере используется та же строка, что и тема и текст сообщения электронной почты.
Третья команда получает пакет управления, в котором нужно сохранить этот шаблон с помощью командлета Get-SCSMManagementPack, а затем сохраняет его в переменной $ManagementPack.
Четвертые и пятые команды хранят значения для языка и кодирования в переменных $Language и $Encoding.
Шестая команда создает шаблон электронной почты, который применяется при изменении принтера. Команда использует значения, созданные в первых пяти командах.
Седьмая команда получает шаблон электронной почты с именем "Шаблон электронной почты принтера" с помощью командлета Get-SCSMEmailTemplate, а затем сохраняет его в переменной $PrinterTemplate.
Восьмая команда получает класс с именем Microsoft.AD.User с помощью Get-SCSMClass, а затем сохраняет его в переменной $UserClass.
Девятая команда получает экземпляр класса в $UserClass с именем, соответствующим указанному фильтру с помощью командлета Get-SCSMClassInstance. Команда сохраняет этот экземпляр в переменной $Recipient.
Последняя команда создает подписку, использующую шаблон электронной почты, созданную ранее в примере, которая отправляет администратору сообщение электронной почты при обновлении принтера.
Пример 2. Создание подписки на уведомление по электронной почте
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"
Первая команда создает условия для подписки и сохраняет ее в переменной $Criteria.
Вторая команда получает экземпляр класса для класса с именем System.User с именем, соответствующим указанному фильтру, с помощью командлета Get-SCSMClassInstance. Команда сохраняет этот экземпляр в переменной $Recipient.
Третья команда получает класс с именем Microsoft.AD.Printer с помощью Get-SCSMClass, а затем сохраняет его в переменной $Class.
Четвертая команда получает шаблон электронной почты standardEmailTemplate с помощью Get-SCSMEmailTemplate, а затем сохраняет его в переменной $Template.
Последняя команда создает подписку на уведомление электронной почты, настроенную для отправки электронной почты администраторам домена.
Подписка основана на изменениях в классе принтера
Параметры
-Class
Указывает имя класса, предназначенного для подписки. Указанное имя должно ссылаться на тот же класс, на который ссылается указанный шаблон электронной почты.
Тип: | Microsoft.EnterpriseManagement.Configuration.ManagementPackClass |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-ComputerName
Указывает имя компьютера, на котором выполняется служба доступа к данным System Center.
Учетная запись пользователя, указанная в параметре учетных данных
Тип: | System.String[] |
Position: | Named |
Default value: | Localhost |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Condition
Указывает условие, в котором выполняется подписка. Допустимые значения:
- Созданный
- Обновлено
- Уничтоженный
Тип: | Microsoft.EnterpriseManagement.ServiceManager.Sdk.Notifications.Condition |
Допустимые значения: | Created, Updated |
Position: | Named |
Default value: | Updated |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Confirm
Запрашивает подтверждение перед запуском командлета.
Тип: | System.Management.Automation.SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Credential
Указывает учетные данные, которые этот командлет использует для подключения к серверу, на котором выполняется служба доступа к данным System Center. Указанная учетная запись пользователя должна иметь права доступа к серверу.
Тип: | System.Management.Automation.PSCredential |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Criteria
Указывает XML-критерии, которые использует подписка.
Если указан параметр
Тип: | System.String |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Description
Описывает подписку.
Тип: | System.String |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-DisplayName
Указывает отображаемое имя подписки.
Тип: | System.String |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Enable
Указывает, включает ли этот командлет подписку.
Тип: | System.Boolean |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-GroupQueue
Указывает группу или очередь, чтобы задать ограничение на количество объектов, отслеживаемых подпиской.
Тип: | System.String[] |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-ManagementPack
Указывает имя пакета управления, в котором этот командлет хранит подписку.
Тип: | Microsoft.EnterpriseManagement.Configuration.ManagementPack |
Position: | Named |
Default value: | The default management pack |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-PassThru
Указывает, что этот командлет возвращает созданную подписку. Этот объект можно передать другим командлетам.
Тип: | System.Management.Automation.SwitchParameter |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Recipient
Указывает список пользователей, которым эта подписка отправляет электронную почту.
Тип: | Microsoft.EnterpriseManagement.Common.EnterpriseManagementObject[] |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-SCSession
Указывает объект, представляющий сеанс на сервере управления Service Manager.
Тип: | Microsoft.SystemCenter.Core.Connection.Connection[] |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Template
Указывает имя шаблона электронной почты.
Тип: | Microsoft.EnterpriseManagement.ServiceManager.Sdk.Notifications.EmailTemplate |
Position: | Named |
Default value: | None |
Обязательно: | True |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-WhatIf
Показывает, что произойдет, если командлет выполняется. Командлет не выполняется.
Тип: | System.Management.Automation.SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
Входные данные
None.
Входные данные в этот командлет невозможно передать.
Выходные данные
None.
Этот командлет не создает выходные данные.