Miten unix/linux ympäristössä pystyy lähettämään sähköpostiviestit omasta ohjelmasta?
Joku esimerkkikoodi olisi kiva :)
Joku esimerkkikoodi olisi kiva :)
Turvaa tilisi vahvistamalla puhelinnumerosi. Voit silloin palauttaa unohtuneen salasanan tekstiviestillä.
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 3
Vanhimmat
Tosimieshän puhuu SMTP:tä suoraan SMTP-palvelimelle ;-)
Mutta sitten asiaan, eli paras tapa lähettää omasta koodista mailia on suorittaa shellikomento (man exec(2), mail(1)):
mail -s subject [email protected] < mycontent.txt
Eli ei ruveta virittelemään mitään kummallisia sokettikoodeja vaan käyttää exec:iä ja pistää käyttis suorittamaan tommonen komento. Huomaa, että kun filedescriptoreita voi uudelleenohjata, sun mailin sisältö on suht helppoa saada ilmestymään vastaanottajalle myös :)
Siis käytetään jo valmista sendmailia tms. MTA:ta ja kirjoitetaan oma koodi käyttämään valmista MUA:ta (mail).
sendmail, mutta jos on joku toinen postipalvelin, esim postfix, niin tuo ei enää toimi, koska "mail"-ohjelma tulee sendmailin mukana.
$ mail
-bash: mail: command not found
Muuten mail-ohjelma ei todellakaan tule sendmailin mukana vaan on täysin eri juttu.
Jos nyt sun linukassa ei ton maili-paketin mukana tullutkaan /usr/bin/mail-nimistä ohjelmaa on se distron tekijöiden syytä.
/usr/bin/mail ei siis ole MTA vaan MUA. Ja esim:
% which mail
/usr/bin/mail
Toimii kyllä kaikissa UNIXeissa, joita itse olen käyttänyt.