Protocolo de entregas SMTP

Actualizado: 14 de abril de 2006

El protocolo de entrega SMTP (protocolo simple de transferencia de correo) crea y enruta mensajes de notificación para su entrega por un servicio SMTP como el que proporcionan Microsoft Exchange o los Servicios de Internet Information Server. Si desea utilizar el protocolo de entrega SMTP para entregar notificaciones de una clase de notificación determinada, debe definir el protocolo de entrega SMTP como parte de la clase de notificación de la definición de la aplicación.

ms172485.note(es-es,SQL.90).gifImportante:
El servicio SMTP es necesario para utilizar el protocolo de entrega SMTP, aunque no se instala con Windows Vista. Para utilizar el protocolo de entrega SMTP en Windows Vista, debe instalar un servicio SMTP independiente.

Definir un protocolo de entrega SMTP

La definición de un protocolo se compone de un nombre y de los valores de los campos personalizados. El protocolo de entrega SMTP emplea los siguientes valores y campos:

  • El valor de ProtocolName (requerido) debe ser SMTP.
  • Defina los siguientes campos, en el orden que se indica, para el protocolo de entrega:
    • Asunto (requerido) especifica la expresión que representa a la línea de asunto para mostrarla en el mensaje de correo electrónico.
    • De (requerido) especifica la dirección del correo electrónico remitente para mostrarla en el correo electrónico.
    • Para (requerido) debe especificar la dirección del dispositivo de destino. Este campo debe estar vacío para una clase de notificación que proporciona notificaciones de multidifusión.
    • Prioridad (opcional) especifica la prioridad del mensaje de correo electrónico. Para Microsoft Exchange, los valores disponibles son Baja, Normal o Alta. Si no se especifica ningún otro valor, la prioridad de notificación predeterminada es Normal.
    • Formato del cuerpo (opcional) toma como valor "texto" o "html", en función del formato pensado para los datos de notificación que proporciona el formateador de contenido. Si no se especifica ningún valor, el formato de notificación predeterminado es texto.

En la sintaxis de Transact-SQL, las constantes de cadena deben ir entre comillas. Por tanto, si utiliza una cadena en un campo de protocolo de entrega, debe escribirla entre comillas simples, como 'myString'. Si la cadena es Unicode, también debe iniciar la misma con una N; por ejemplo, N'myString'.

Ejemplo de definición de protocolo de entrega SMTP

En el siguiente ejemplo se muestra cómo definir un protocolo de entrega SMTP para una clase de notificación:

<Protocols>
    <Protocol>
        <ProtocolName>SMTP</ProtocolName>
        <Fields>
            <Field>
                <FieldName>Subject</FieldName>
                <SqlExpression>
                'The price of ' + StockSymbol
                + ' is now ' + StockPrice
                </SqlExpression>
            </Field>
            <Field>
                <FieldName>From</FieldName>
                <SqlExpression>
                N'stockquotes@microsoft.com'
                </SqlExpression>
            </Field>
            <Field>
                <FieldName>To</FieldName>
                <SqlExpression>DeviceAddress</SqlExpression>
            </Field>
            <Field>
                <FieldName>Priority</FieldName>
                <SqlExpression>N'Normal'</SqlExpression>
            </Field>
            <Field>
                <FieldName>BodyFormat</FieldName>
                <SqlExpression>N'html'</SqlExpression>
            </Field>
            <Field>
        </Fields>
        <ProtocolExecutionSettings>
            ...
        </ProtocolExecutionSettings>
    </Protocol>
</Protocols>

Todos los campos de este ejemplo utilizan expresiones de Transact-SQL para obtener sus valores:

  • El campo Asunto utiliza una combinación de cadenas y referencias de campo de notificación (StockSymbol y StockPrice) para personalizar la línea de asunto de cada notificación.
  • El campo Para obtiene su valor del campo DeviceAddress del dispositivo de suscriptor. Para obtener una lista de las funciones disponibles, vea SqlExpression Element for Protocol/Fields/Field (ADF).
  • Los campos De, Prioridad y Formato del cuerpo son cadenas idénticas para todas las notificaciones enviadas mediante el protocolo de entrega.

Los campos también pueden obtener sus valores directamente de los campos de notificación. Para obtener más información, vea FieldReference Element (ADF).

Definir un canal de entrega para el protocolo de entrega SMTP

Para utilizar el protocolo de entrega SMTP a fin de distribuir notificaciones, también debe definir un canal de entrega que use el protocolo de entrega SMTP. Varias clases de notificación de distintas aplicaciones pueden utilizar el mismo canal de entrega SMTP.

ms172485.note(es-es,SQL.90).gifImportante:
A causa de la implementación de SMTP que se utiliza en Microsoft .NET Framework, sólo se puede definir un canal de entrega por cada instancia mediante el protocolo de entrega SMTP. Si define dos canales de entrega SMTP, las notificaciones podrían acabar en servidores SMTP erróneos.

Para obtener más información, vea Definir un canal de entrega SMTP.

Vea también

Conceptos

Protocolo de entrega File
Desarrollar un protocolo de entrega personalizado

Otros recursos

Configurar protocolos de entrega
Definir clases de notificación
Protocol Element (ADF)

Ayuda e información

Obtener ayuda sobre SQL Server 2005

Historial de cambios

Versión Historial

14 de abril de 2006

Contenido nuevo:
  • Se agregó una nota que indica que el servicio SMTP no se instala con Windows Vista.
  • Se agregó una descripción de un código de ejemplo.