FB_SmtpFull

FB_SmtpFull 1:

Der Funktionsbaustein FB_SmtpFull kommuniziert über ADS mit dem TwinCAT SMTP Server. Er bietet sehr umfangreiche E-Mail-Funktionalitäten, wie zum Beispiel die Priorisierung von E-Mails aus der SPS heraus. Im Detail werden die einzelnen Parameter in dieser Dokumentation erläutert.

FB_SmtpFull 2: Eingänge

VAR_INPUT
    sNetId         : T_AmsNetID;    (* AmsNetID *)
    sSmtpServer    : T_MaxString;   (* Smtp Server addres ( IP or Name) *)
    sUsername      : T_MaxString;   (* Smtp Username *)
    sPassword      : T_MaxString;   (* Smtp Password *)
    nAuth          : UDINT;         (* Smtp Auth Type*)
    sFrom          : T_MaxString;   (* Sender stzring *)
    sTo            : T_MaxString;   (* To recipient string *)
    sCc            : T_MaxString;   (* Cc recipient string *)
    sBcc           : T_MaxString;   (* Bcc recipient string *)
    sDispositionNotification : T_MaxString;  (* Disposition notification recipent string *)
    sReturnReceipt : T_MaxString;   (* Return recipent string *)
    nPriority      : UDINT;         (* Priority value *)
    nSensitivity   : UDINT;         (* Sensitivity value *)
    nPort          : UDINT;         (* Communication port *)
    nContentType   : UDINT;         (* Content type *)
    sSubject       : T_MaxString;   (* Subject string *)
    pMessage       : DWORD;         (* Pointer to the message *)
    cbMessage      : UDINT;         (* Messagelenght in byte to send *)
    sAttachments   : ARRAY [0..32] OF STRING; (* Different attachments *)
    bExecute       : BOOL;          (* Trigger flag *)
    tTimeout       : TIME := T#20s; (* Communication timeout *)END_VAR

Name

Typ

Beschreibung

sNetId

T_AmsNetID

AmsNetID, auf dem der TwinCAT SMTP Server läuft.

sSmtpServer

T_MaxString

Name oder IP des SMTP-Servers

sUsername

T_MaxString

Benutzername des SMTP Servers

sPassword

T_MaxString

Passwort für den SMTP Server

nAuth

UDINT

Smtp Auth Type:
0 = AUTH NONE
1 = RESERVED
2 = AUTH LOGIN
3 = AUTH NTLM
4 = AUTH PLAIN

sFrom

T_MaxString

Ein String, der die E-Mail-Adresse des Absenders enthält. Der Absender muss festgelegt werden. Der String ist auf 255 Zeichen limitiert.

sTo

T_MaxString

Ein String, der die E-Mail-Adresse des Empfängers enthält. Mindestens ein Empfänger muss eingetragen werden. Es ist auch möglich mehrere Adressen einzutragen. Diese müssen per Semikolon getrennt werden. Der String ist auf 255 Zeichen limitiert.

sCc

T_MaxString

Ein String, der die E-Mail-Adresse von weiteren Empfängern enthält (cc=carbon copy). Es ist möglich, mehrere Adressen von Empfängern einzutragen. Diese müssen dann durch ein Semikolon getrennt werden. Der String kann auch leer bleiben. Dem/den Empfänger(n) wird eine Kopie der E-Mail-Adresse zugeschickt. Die E-Mail-Adresse des Empfängers ist für andere Empfänger sichtbar. Der String ist auf 255 Zeichen limitiert.

sBcc

T_MaxString

Ein String, der die E-Mail-Adressen von weiteren Empfängern enthält (Bcc = blind carbon copy). Es ist möglich, mehrere Adressen von Empfängern einzutragen. Diese müssen dann durch ein Semikolon getrennt werden. Der String kann auch leer bleiben. Dem/den Empfänger(n) wird eine Kopie der E-Mail zugeschickt. Die E-Mail-Adresse der Empfänger ist für andere Empfänger nicht sichtbar. Der String ist auf 255 Zeichen limitiert.

sDispositionNotification

T_MaxString

Die hier angegebene E-Mail-Adresse, erhält eine Lesebestätigung der Empfänger von sTo und sCc. Voraussetzung dafür ist jedoch, dass diese auch von den Empfängern gesendet wird.

sReturnReceipt

T_MaxString

An die hier angegebene E-Mail-Adresse wird eine Übertragungsbestätigung der gesendeten Mail geschickt.

nPriority

UDINT

Mit diesem Parameter können Sie die Priorität der E-Mail einstellen:
1 = Highest
2 = not used
3 = Normal
4 = not used
5 = Lowest

nSensitivity

UDINT

Mit diesem Parameter können Sie die Vertraulichkeit der Nachricht einstellen:
0 = Private
1 = Personal
2 = Normal
3 = Confidential

nPort

UDINT

Hier können Sie den Kommunikations-Port auswählen. Sollten Sie keinen eigenen Port eintragen, so wird auf den Default-Port 25 zurückgegriffen.

nContentType

UDINT

Durch diesen Parameter ist es möglich beispielsweise HTML-Code, welcher per Pointer (pMessage) und Größe (cbMessage) einer Stringvariablen dem Baustein übergeben wird, in der E-Mail lesbar zu machen.

sSubject

T_MaxString

Dieser String enthält den Betreff der E-Mail. Falls die E-Mail ohne Betreff gesendet wird, wird automatisch der Computername des Absenders in die Betreffzeile geschrieben (z. B. "E-Mail gesendet von: CX_00762C"). Der String der Betreffzeile ist auf 255 Zeichen limitiert.

pMessage

DWORD

Dieser Parameter gibt die Adresse des Strings, welcher den Nachrichtentext enthält, an. Falls die E-Mail ohne Text gesendet wird, wird automatisch das Datum und die Uhrzeit eingesetzt (z. B. "Mail send at Thu, 23 Mar 2006 02:31:44 -0800"). Die Adresse des Strings kann mit dem ADR Operator ermittelt werden.

cbMessage

UDINT

Länge des E-Mail-Textes. Die Länge kann durch den LEN Operator festgelegt werden.

bExecute

ARRAY [0..32] OF STRING

Der Funktionsbaustein wird durch eine steigende Flanke an dieser Eingangsvariablen aktiviert.

sAttachments

BOOL

Auflistung von Dateinamen

tTimeout

TIME

Die erlaubte maximale Zeit, um einen Befehl auszuführen.

FB_SmtpFull 3: Ausgänge

VAR_OUTPUT
    bBusy  : BOOL;
    bError : BOOL;
    nErrId : UDINT;
END_VAR

Name

Typ

Beschreibung

bBusy

BOOL

Der Output bleibt TRUE, bis der Block einen Befehl ausgeführt hat, allerdings nur bis zum Ablauf von tTimeOut.

bError

BOOL

Der Output wird auf TRUE umgeschaltet, sobald ein Fehler bei der Ausführung des Befehls auftaucht. Der befehlsspezifische Fehler ist in iErrorId enthalten.

nErrId

UDINT

Beinhaltet den befehlsspezifischen Fehlercode des zuletzt ausgeführten Befehls (siehe Tabelle).

FB_SmtpFull 4:

Stellen Sie sicher, dass Sie \o nicht innerhalb der Byte-Anordnung verwenden, ansonsten wird die Nachricht gestoppt.

Die maximale Anzahl von Zeichen in einer Nachricht beträgt 510.725 - insgesamt haben Sie 1275 Zeichen für From, To, Cc, Bcc und Subject.

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS-Bibliotheken

TwinCAT v3.0.0

PC or CX (x86)

Tc2_Smtp