V desktopové aplikaci je možné nastavit SMTP server v menu Nástroje -> Nastavení SMTP serveru. Pro zpřístupnění této funkce musí uživatel mít roli ADMIN s právy serveru - Přistupovat do všech firem.
Toto nastavení je možné provést i pomocí REST API. Pomocí API je možné nastavit SMTP server na adrese: /c/{firma}/nastaveni/smtp
, kde {firma} je databázový identifikátor firmy.
Nastavení lze uložit HTTP metodou POST
nebo PUT
, která bude mít v těle požadavku následující parametry:
host - adresa Vašeho nebo externí adresa SMTP serveru.
port - Port SMTP serveru (465, 587, ...)
username - Emailová adresa uživatele. (pokud SMTP server vyžaduje autentizaci)
password - Heslo k emailové adrese uživatele. (pokud SMTP server vyžaduje autentizaci)
defaultFrom - výchozí odesílatel, po vzoru výše je možné doplnit jméno odesílatele, případně je možné ponechat pouze emailovou adresu.
encryptionMode - Režim zabezpečení SMTP komunikace (SSL, TLS, ...)
Příklady použití
1. Uložení nastavení SMTP do ABRA Flexi:
POST https://demo.flexibee.eu/c/demo/nastaveni/smtp.xml
Tělo požadavku v XML:
<nastaveni-smtp>
<!-- Adresa serveru -->
<host>vzor.seznam.cz</host>
<!-- Port serveru -->
<port>465</port>
<!-- Uživatel -->
<username>vzor@seznam.cz</username>
<!-- Heslo -->
<password>tajnehelso</password>
<!-- Výchozí odesílatel -->
<defaultFrom>Jméno Odesílatele <vzor@seznam.cz>
</defaultFrom>
<!-- Zabezpečení spojení --> <
<encryptionMode>SSL</encryptionMode>
</nastaveni-smtp>
Odpověď ABRA Flexi je pak aktualizace záznamu:
<?xml version="1.0" encoding="utf-8"?>
<winstrom version="1.0">
<success>true</success>
<stats>
<created>0</created>
<updated>1</updated>
<deleted>0</deleted>
<skipped>0</skipped>
<failed>0</failed>
</stats>
<results></results>
</winstrom>
2. Čtení uloženého nastavení provedeme HTTP metodou GET:
GET https://demo.flexibee.eu/c/demo/nastaveni/smtp.xml
Odpověď ABRA Flexi je pak přehled nastavení SMTP:
<?xml version="1.0" ?>
<nastaveni-smtp>
<defaultFrom>vzor@seznam.cz</defaultFrom>
<encryptionMode>SSL</encryptionMode>
<host>smtp.seznam.cz</host>
<password filled="true"></password>
<port>465</port>
<username>vzor@seznam.cz</username>
</nastaveni-smtp>
Při čtení uloženého nastavení pomocí metody GET
získáte namísto hesla pouze příznak o tom, zda je vyplněno filled=true.
3. Otestování nastavení pomocí testovacího emailu, použijeme HTTP metodu GET
s parametrem testMail
.:
GET https://demo.flexibee.eu/c/demo/nastaveni/smtp.xml?testMail=adresat@testu.cz
V emailové schránce adresat@testu.cz se objeví email:
Předmět: Testovací email
Testovací email ze systému ABRA Flexi.
Neúspěšné requesty
1. Špatně zadaný port
V případě, že zadáte nevalidní port je odpověď API:
<message>java.lang.IllegalArgumentException: port out of range:4651111</message>
2. Defaultní odesílatel ve špatném tvaru
V případě, že je zadáno bez validního emailu, email je nutné zadat se znaky < a >
<message>Výchozí odesílatel musí obsahovat jednu adresu ve tvaru 'Jméno Příjmení <uzivatel@domena.cz>' nebo 'uzivatel@domena.cz'.</message>
3. Špatně nastavení SMTP, nelze zaslat testovací email
V případě, že nedojde k odeslání testovacího emailu je odpověď API:
<message>com.sun.mail.util.MailConnectException: Couldn't connect to host, port: vzor.seznam.cz, 465; timeout 30000; nested exception is:
java.net.UnknownHostException: vzor.seznam.cz
Couldn't connect to host, port: vzor.seznam.cz, 465; timeout 30000
vzor.seznam.cz</message>
FAQ
Potřebujete poradit?
V případě dotazů k aplikaci nás kontaktujte na podporaflexi@abra.eu případně prostřednictvím chat okna v pravém dolním rohu.