SMTP-Übermittlungsprotokoll

Aktualisiert: 14. April 2006

Das SMTP-Übermittlungsprotokoll (Simple Mail Transfer Protocol) erstellt Benachrichtigungsnachrichten für die Übermittlung durch einen SMTP-Dienst, wie z. B. den von Microsoft Exchange oder den Internetinformationsdiensten bereitgestellten, und leitet sie weiter. Falls Sie das SMTP-Übermittlungsprotokoll zum Übermitteln von Nachrichten von einer bestimmten Benachrichtigungsklasse verwenden möchten, können Sie das SMTP-Übermittlungsprotokoll als Teil der Benachrichtigungsklasse in der Anwendungsdefinition definieren.

ms172485.note(de-de,SQL.90).gifWichtig:
Der SMTP-Dienst ist für das Verwenden des SMTP-Übermittlungsprotokolls erforderlich, wird aber nicht mit Windows Vista installiert. Der SMTP-Dienst muss separat installiert werden, damit das SMTP-Übermittlungsprokoll unter Windows Vista verwendet werden kann.

Definieren eines SMTP-Übermittlungsprotokolls

Eine Protokolldefinition besteht aus einem Namen und Werten für alle benutzerdefinierten Felder. Das SMTP-Übermittlungsprotokoll verwendet die folgenden Werte und Felder:

  • Der Wert von ProtocolName (erforderlich) muss SMTP lauten.
  • Definieren Sie für das Übermittlungsprotokoll die folgenden Felder in der folgenden Reihenfolge:
    • Subject (erforderlich) gibt den Ausdruck an, der die in der E-Mail anzuzeigende Betreffzeile darstellt.
    • From (erforderlich) gibt die in der E-Mail anzuzeigende sendende E-Mail-Adresse an.
    • To (erforderlich) muss die Adresse des Zielgeräts angeben. Dieses Feld muss für eine Benachrichtigungsklasse, die Multicastbenachrichtigungen bereitstellt, leer sein.
    • Priority (optional) gibt die Priorität der E-Mail-Nachricht an. Für Microsoft Exchange lauten die verfügbaren Werte Niedrig, Normal oder Hoch. Ist kein anderer Wert angegeben, lautet die Standardeinstellung für die Benachrichtigungspriorität Normal.
    • BodyFormat (optional) nimmt entweder "text" oder "html" als Wert an, je nach dem beabsichtigten Format für die Benachrichtigungsdaten, die vom Inhaltsformatierer bereitgestellt werden. Ist kein Wert angegeben, lautet die Standardeinstellung für das Benachrichtigungsformat text.

In der Transact-SQL-Syntax müssen Zeichenfolgenkonstanten in Anführungszeichen eingeschlossen werden. Wenn Sie eine Zeichenfolge in einem Übermittlungsprotokollfeld verwenden, müssen Sie diese daher in einfache Anführungszeichen einschließen, wie beispielsweise 'myString'. Beginnen Sie außerdem die Zeichenfolge mit einem N, wie beispielsweise N'myString', wenn sie im Unicode-Format vorliegt.

Beispieldefinition des SMTP-Übermittlungsprotokolls

Im folgenden Beispiel wird die Vorgehensweise beim Definieren eines SMTP-Übermittlungsprotokoll für eine Benachrichtigungsklasse dargestellt:

<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>

Alle Felder in diesem Beispiel verwenden Transact-SQL-Ausdrücke, um die Werte zu erhalten:

  • Das Feld Subject verwendet eine Kombination von Zeichenfolgen und Benachrichtigungsfeldverweisen (StockSymbol und StockPrice), um die Betreffzeile für jede Benachrichtigung anzupassen.
  • Das Feld To ruft den Wert aus dem Feld DeviceAddress für das Abonnentengerät ab. Eine Liste der verfügbaren Felder finden Sie unter SqlExpression Element for Protocol/Fields/Field (ADF).
  • Die Felder From, Priority und BodyFormat sind Zeichenfolgen, die für alle Benachrichtigungen identisch sind, die mithilfe des Übermittlungsprotokolls gesendet werden.

Felder können auch die Werte direkt aus den Benachrichtigungsfeldern abrufen. Weitere Informationen finden Sie unter FieldReference Element (ADF).

Definieren eines Übermittlungskanals für das SMTP-Übermittlungsprotokoll

Sie müssen auch einen Übermittlungskanal definieren, der das SMTP-Übermittlungsprotokoll verwendet, um das SMTP-Übermittlungsprotokoll zum Verteilen von Benachrichtigungen verwenden zu können. Mehrere Benachrichtigungsklassen aus mehreren Anwendungen können den gleichen SMTP-Übermittlungskanal verwenden.

ms172485.note(de-de,SQL.90).gifWichtig:
Aufgrund der von Microsoft .NET Framework verwendeten SMTP-Implementierung können Sie nur einen Übermittlungskanal, der das SMTP-Übermittlungsprotokoll verwendet, pro Instanz definieren. Wenn Sie zwei SMTP-Übermittlungskanäle definieren, werden die Benachrichtigungen möglicherweise an die falschen SMTP-Server übermittelt.

Weitere Informationen finden Sie unter Definieren eines SMTP-Übermittlungskanals.

Siehe auch

Konzepte

Dateiübermittlungsprotokoll
Entwickeln eines benutzerdefinierten Übermittlungsprotokolls

Andere Ressourcen

Konfigurieren von Übermittlungsprotokollen
Definieren von Benachrichtigungsklassen
Protocol Element (ADF)

Hilfe und Informationen

Informationsquellen für SQL Server 2005

Änderungsverlauf

Version Verlauf

14. April 2006

Neuer Inhalt:
  • Ein Hinweis, dass der SMTP-Dienst nicht unter Windows Vista installiert ist, wurde hinzugefügt.
  • Eine Beschreibung des Beispielcodes wurde hinzugefügt.