Mercator 6.1 omvat een SMTP-client. Hierdoor kan men rechtstreeks e-mails versturen vanuit Mercator zonder te moeten overschakelen naar een ander berichtenprogramma (bv. Outlook).
Om deze tool te kunnen gebruiken, moet men de 3 SMTP-parameters vermeld in "Tools / Opties / Overige" invullen:
- server: naam of IP-adres van de SMTP-server, in uw lokaal netwerk of bij uw provider (bv. relay.skynet.be, smtp.easynet.be, …)
- poort: doorgaans 25
- adres van de verzender: het e-mailadres dat standaard zal worden gebruikt als "from"- en "reply"-adres
- naam van de verzender: naam van de standaardverzender.
De SMTP-client kan makkelijk worden gebruikt in elke module. Gebruik daartoe het commando
sendmail_smtp() met de volgende parameters:
- To: adres(sen) van bestemming, eventueel van elkaar gescheiden door een ,
- CC: CC-adres(sen), eventueel van elkaar gescheiden door een ,
- BCC: BCC-adres(sen), eventueel van elkaar gescheiden door een ,
- Subject: onderwerp van de e-mail
- Message: het eigenlijke bericht, als tekst zonder opmaak of in HTML (moet beginnen met de tag 'HTML' tussen '<' en '>')
- Filenames: volledige path(s) en naam (namen) van de bijgevoegde bestanden, eventueel van elkaar gescheiden door een ,
- prioriteit (optionele parameter): cijfer van 1 tot 5 (standaard 3)
- confEnvoi (optionele parameter): waarde .T. / .F. om een verzendbevestiging te vragen (standaard .F.)
- confLecture (optionele parameter): waarde .T. / .F. om een leesbevestiging te vragen (standaard .F.)
- extraHeaders (optionele parameter): bijkomende SMTP-headers, allemaal van elkaar gescheiden en afgesloten met een carriage return en ligne feed (standaard leeg) Voorbeeld: 'X-Actual-From: MDaemon@ineo.be'+CHR(13)+CHR(10)+'X-MDSend-Notifications-To: [trash]'+CHR(13)+CHR(10)
- forceHtml (optionele parameter): waarde .T. / .F. om het bericht steeds op te maken in HTML (standaard .F.)
Deze functie genereert
- een lege string als het bericht correct verzonden is
- een foutmelding in de vorm van een tekenreeks als dat niet zo is.
Bijvoorbeeld:
SMTP_FROM='postmaster@mercator.eu'
SMTP_FROMN='Postmaster Mercator'
local ret
ret=sendmail_smtp('guy.colsoul@mercator.eu','','','Sujet de test','Contenu de test','')
if empty(m.ret)
=stop('Bericht correct verzonden!')
else
=stop(m.ret)
endif
Via het menu "Tools / SMTP testen" kan een testmail worden verzonden naar eender welk testmailadres. Op die manier kan men de geldigheid van de SMTP-parameters en de communicatie met de berichtenserver testen (dit menu verschijnt enkel als de SMTP-opties in "Tools / Opties / Overige" werden ingevuld).
SMTP-authenticatie
Sinds de versie 7.0.20 is het in Mercator mogelijk om een e-mail te versturen via een SMTP-server die authenticatie vereist. Daartoe moeten in Mercator twee globale variabelen SMTP_LOGIN en SMTP_PASSW worden toegevoegd die respectievelijk de SMTP-inlogcode en het SMTP-wachtwoord zullen bevatten. Deze 2 variabelen kunnen gecreëerd worden in een autoexec.prg-bestand, in een login.prg-bestand (als deze authenticatie verschilt naargelang van de gebruiker) of rechtstreeks in het mailverzendscript van de actie "SMTP-mail verzenden" (voor het commando sendmail_smtp).
Voorbeeld van een script voor de creatie van deze variabelen:
public SMTP_LOGIN
SMTP_LOGIN="myLogin"
public SMTP_PASSW
SMTP_PASSW="myPassword"
Belangrijke opmerking: INEO biedt geen garantie wat betreft de compatibiliteit tussen de SMTP-client van Mercator en uw SMTP-server. De SMTP-client van Mercator steunt op de System.Net.Mail-tools in het .net-FrameWork. Met andere woorden: enkel authenticatiemethodes die rechtstreeks ondersteund worden door System.Net.Mail, zijn beschikbaar. Men dient INEO dan ook niet te vragen om wijzigingen of aanpassingen uit te voeren aan deze authenticatie.