New-SCSMSubscription

Crea una nueva suscripción en 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

El cmdlet New-SCSMSubscription crea una suscripción en Service Manager.

Ejemplos

Ejemplo 1: Creación de una suscripción

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

El primer comando obtiene una clase denominada Microsoft.AD.Printer mediante el cmdlet Get-SCSMClass y, a continuación, la almacena en la variable $PrinterClass.

El segundo comando crea un mensaje para el correo electrónico y lo almacena en la variable $Message. En este ejemplo se usa la misma cadena que el asunto y el cuerpo del correo electrónico.

El tercer comando obtiene un módulo de administración en el que guardar esta plantilla mediante el cmdlet Get-SCSMManagementPack y, a continuación, lo almacena en la variable $ManagementPack.

Los comandos cuarto y quinto almacenan valores para el lenguaje y la codificación en las variables $Language y $Encoding.

El sexto comando crea una plantilla de correo electrónico que se aplica cuando se produce un cambio en una impresora. El comando usa valores creados en los cinco primeros comandos.

El séptimo comando obtiene la plantilla de correo electrónico denominada Printer Email Template mediante el cmdlet Get-SCSMEmailTemplate y, a continuación, la almacena en la variable $PrinterTemplate.

El octavo comando obtiene la clase denominada Microsoft.AD.User mediante Get-SCSMClass y, a continuación, la almacena en la variable $UserClass.

El noveno comando obtiene una instancia de la clase en $UserClass que tiene un nombre que coincide con un filtro especificado mediante el cmdlet Get-SCSMClassInstance. El comando almacena esa instancia en la variable $Recipient.

El comando final crea una suscripción que usa la plantilla de correo electrónico, creada anteriormente en el ejemplo, que envía un correo electrónico al administrador cada vez que se actualiza una impresora.

Ejemplo 2: Creación de una suscripción de notificación por correo electrónico

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"

El primer comando crea un criterio para la suscripción y lo almacena en la variable $Criteria.

El segundo comando obtiene una instancia de clase para la clase denominada System.User que tiene un nombre que coincide con un filtro especificado mediante el cmdlet Get-SCSMClassInstance. El comando almacena esa instancia en la variable $Recipient.

El tercer comando obtiene la clase denominada Microsoft.AD.Printer mediante Get-SCSMClass y, a continuación, la almacena en la variable $Class.

El cuarto comando obtiene la plantilla de correo electrónico denominada StandardEmailTemplate mediante Get-SCSMEmailTemplate y, a continuación, la almacena en la variable $Template.

El comando final crea una suscripción de notificación por correo electrónico configurada para enviar correo electrónico a los administradores del dominio. La suscripción se basa en los cambios en la clase Printer , donde la ubicación ha cambiado.

Parámetros

-Class

Especifica el nombre de la clase a la que se dirige la suscripción. El nombre especificado debe hacer referencia a la misma clase a la que hace referencia la plantilla de correo electrónico especificada.

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

-ComputerName

Especifica el nombre del equipo donde se ejecuta el servicio de acceso a datos de System Center. La cuenta de usuario especificada en el parámetro Credential debe tener derechos de acceso al equipo especificado.

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

-Condition

Especifica la condición en la que se ejecuta la suscripción. Los valores válidos son:

  • Creado
  • Actualizado
  • Deleted
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

Le solicita su confirmación antes de ejecutar el cmdlet.

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

-Credential

Especifica las credenciales que usa este cmdlet para conectarse al servidor en el que se ejecuta el servicio de acceso a datos de System Center. La cuenta de usuario especificada debe tener derechos de acceso a ese servidor.

Type:System.Management.Automation.PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Criteria

Especifica los criterios XML que usa la suscripción. Si se especifican tanto el parámetro Filter como el parámetro Criteria , este cmdlet solo usa Criteria.

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

-Description

Describe la suscripción.

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

-DisplayName

Especifica el nombre para mostrar de la suscripción.

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

-Enable

Indica si este cmdlet habilita la suscripción.

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

-GroupQueue

Especifica un grupo o una cola para establecer un límite en el número de objetos que monitorar la suscripción.

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

-ManagementPack

Especifica el nombre del módulo de administración en el que este cmdlet almacena la suscripción.

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 que este cmdlet devuelve la suscripción que crea. Puede pasar este objeto a otros cmdlets.

Type:System.Management.Automation.SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Recipient

Especifica la lista de usuarios a los que esta suscripción envía correo electrónico.

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

-SCSession

Especifica un objeto que representa la sesión en un servidor de administración de Service Manager.

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

-Template

Especifica el nombre de una plantilla de correo electrónico.

Type:Microsoft.EnterpriseManagement.ServiceManager.Sdk.Notifications.EmailTemplate
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Muestra lo que sucedería si se ejecutara el cmdlet. El cmdlet no se ejecuta.

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

Entradas

None.

No se puede canalizar la entrada a este cmdlet.

Salidas

None.

Este cmdlet no genera ningún resultado.