SMTP – Blok pro odesílání e-mailových oznámení přes SMTP

Symbol blokuPotřebná licence: ADVANCED
Qt SVG Document Exported by REXYGEN Studio subj body TRG BUSY DONE ERROR errId SMTP

Popis funkce
Blok SMTP odešle e-mailovou zprávu pomocí standardního protokolu SMTP. Blok funguje jako jednoduchý e-mailový klient. Neimplementuje mailový server.

Obsah zprávy je definován vstupy subj a body. Parametry from a to specifikují odesílatele a příjemce zprávy. Zpráva je odeslána, při detekci náběžné hrany (off on) na vstupu TRG. Poté je výstup BUSY nastaven na on, dokud není požadavek dokončen, což je signalizováno výstupem DONE. V případě chyby je nastaven výstup ERROR. Výstup errId nese poslední chybu identifikovanou systémovým kódem chyby REXYGEN. Parametr domain musí být vždy nastaven pro identifikaci cílového zařízení. Výchozí hodnota by měla fungovat ve většině případů. Může být více příjemců zprávy. V takovém případě musí být jednotlivé e-mailové adresy odděleny čárkou a nesmí být přítomen žádný mezerový znak.

Blok může být spuštěn v neblokovacím nebo blokovacím režimu, což je specifikováno parametrem BLOCKING:

  • V blokovacím režimu je vykonání úlohy pozastaveno, dokud není odesílání e-mailu dokončeno. Tento režim je obvykle používán v úlohách s dlouhou dobou vykonání, TS 10s. Pokud e-mail není úspěšně odeslán do doby, než vyprší timeout, je indikována chyba a vykonání úlohy je obnoveno.
  • V neblokovacím režimu blok SMTP vykoná pouze jednu operaci v každém vykonání bloku a vykonání úlohy není pozastaveno. Tento režim je obvykle používán v úlohách s krátkou dobou vykonání, TS 0.1s. V tomto režimu by měl být parametr timeout nastaven na alespoň 50 TS, kde TS je doba vykonání v sekundách.

Je doporučeno spouštět blok SMTP v neblokovacím režimu. Je však nutné zmínit, že na různých operačních systémech některé operace nemusí být v neblokovacím režimu podporovány, takže buďte opatrní a nepoužívejte tento blok v rychlých úlohách (viz QTASK) nebo v úlohách s extrémně krátkou dobou vykonání (několik milisekund). Nejlepší podpora neblokovacího provozu je na operačním systému GNU/Linux.

Blok podporuje ověření uživatele pomocí standardní metody ověřování SMTP. Uživatelské jméno a heslo lze specifikovat parametry user a password. Blok také podporuje zabezpečené spojení. Metoda šifrování je vybrána parametrem tls. Je také možné nechat blok ověřit certifikát serveru nastavením parametru VERIFY. SSL certifikát serveru nebo důvěryhodný certifikační orgán serveru musí být uložen v parametru certificate ve formátu PEM. Blok nepodporuje žádné uložení certifikátů.

Délka celé zprávy (předmět, tělo a hlavičky) je omezena na maximálně 1024 znaků.

Tento blok nepropaguje kvalitu signálu. Více informací je uvedeno v sekci 1.4.

Vstup

subj

Předmět e-mailu

String

body

Tělo e-mailu

String

TRG

Spuštění zvolené akce

Bool

Parametr

server

Adresa SMTP serveru

String

to

E-mail příjemce

String

from

E-mail odesílatele

String

tls

Metoda šifrování  1

Long (I32)

1 ....

None

2 ....

StartTLS

3 ....

TLS

user

Uživatelské jméno

String

password

Heslo

String

domain

domain

String

auth

Metoda autentizace  1

Long (I32)

1 ....

Login

2 ....

Plain

certificate

Certifikát pro autentizaci

String

VERIFY

Povolení verifikace serveru (platnost certifikátu)

Bool

timeout

Povolená doba pro dokončení operace

Double (F64)

BLOCKING

Čekání na dokončení operace

Bool

Výstup

BUSY

Odesílání e-mailu

Bool

DONE

E-mail byl odeslán

Bool

ERROR

Příznak chyby

Bool

errId

Kód chyby

Error

2024 © REX Controls s.r.o., www.rexygen.com