Saatke e-kiri Perli abil

Saatke E Kiri Perli Abil



Perlis on palju mooduleid Ubuntu operatsioonisüsteemi e-kirjade saatmiseks. Moodul 'Net::SMTP::SSL' on üks neist. Selle Perli mooduli abil meili saatmiseks on vaja mis tahes kehtivat SMTP-serverit, millel on õige kasutajanimi ja parool. Selles õpetuses kasutatakse Ubuntu operatsioonisüsteemi Perli skripti kasutades meili saatmiseks Gmaili konto SMTP-serverit ning kehtivat kasutajanime ja parooli. Kuid Gmaili konto nõuab meili saatmiseks Gmaili SMTP-serveri kaudu teatud seadistusi. Gmaili SMTP-serveri kaudu meilide saatmise lubamiseks on vajalik mis tahes Gmaili konto valik „vähem turvaline rakendus”. Kuid see Gmaili konto valik on aastast 2022 eemaldatud. Nüüd tuleb meilide saatmiseks määrata Gmaili konto rakenduse parool. Enne selle õpetuse näidete harjutamist peate määrama selle parooli Gmaili konto jaoks, mida kasutatakse meilide saatmiseks.

Erinevad näited meili saatmisest

Selles õpetuse osas kuvatakse Gmaili SMTP-serveri ja Gmaili konto abil meili saatmise meetodid.

Näide 1: Lihtsa tekstmeili saatmine

Looge järgmise skriptiga Perli fail, mis saadab Gmaili SMTP-serveri abil lihtsa tekstimeili. Peate määrama kehtiva e-posti aadressi ja rakenduse parooli jaoks määratud parooli muutujatesse $username ja $password. Skriptis määratakse näiv kasutajanimi ja parool. Meili ei saadeta, kui rakenduse parool pole õigesti konfigureeritud. Järgmiseks määrake kehtivaks saaja ja saatja meiliaadressiks muutujad $to ja $from, et kontrollida, kas meil on õigesti saadetud. Skripti teine ​​osa jääb muutumatuks. Kui SMTP-server on ühendatud ja kasutaja teave on edukalt autentitud, saadetakse saaja e-posti aadressile lihtne tekstsõnum.







#!/usr/bin/perl

#Importige vajalikud moodulid
kasutage ranget ;
kasutage Net::SMTP::SSL-i ;

#Deklareeri alamprogramm meili saatmiseks Gmaili serveri kaudu
sub sendEmail
{

#Autentimiseks kasutajanimi ja parool
minu $kasutajanimi = 'kasutajanimi@gmail.com' ;
minu $parool = 'rakenduse parool' ;

#Initsialiseerige muutujad meili saatmiseks
minu $to = 'receiver@gmail.com' ;
minu $ alates = 'Meher Nigar ' ;
minu $teema = 'See on testimismeil' ;
minu $sõnum = 'Tere, meili saatmine Perli abil.' ;

#Deklareerige muutuja smtp
minu $smtpServer ;

#Looge ühendus Gmaili smtp-serveriga
kui ( mitte $smtpServer = Net::SMTP::SSL- > uus ( 'smtp.gmail.com' , Port => 465 , Silumine => 1 ) )
{
a 'SMTP-serveriga ei saa ühendust luua. \n ' ;
}

#Kontrollige kasutajanime ja parooli kehtivust
$smtpServer- > aut ( $kasutajanimi , $parool ) || a 'Autentimise viga. \n ' ;

$smtpServer- > mail ( $ alates. ' \n ' ) ;
$smtpServer- > juurde ( $kuni. ' \n ' ) ;
$smtpServer- > andmeid ( ) ;
$smtpServer- > andmete saatmine ( 'Alates: ' . $ alates . ' \n ' ) ;
$smtpServer- > andmete saatmine ( 'Sellele:' . $kuni . ' \n ' ) ;
$smtpServer- > andmete saatmine ( 'Teema: ' . $teema . ' \n ' ) ;
$smtpServer- > andmete saatmine ( ' \n ' ) ;

}

#Helista alamprogrammile

&saada email ( ) ;

Väljund:



Kui meilisõnumi saatmine õnnestus, kuvatakse pärast skripti käivitamist väljundi alguses järgmine sarnane teave:







Kui avate saaja meiliaadressi, saate postkasti järgmise e-kirja:

Näide 2: HTML-vormingus meili saatmine

Looge järgmise skriptiga Perli fail, mis saadab Gmaili SMTP-serveri abil HTML-vormingus meili. Peate määrama kehtiva e-posti aadressi ja parooli nagu eelmises näites. Järgmisena määrake kehtiv saaja ja saatja e-posti aadress. HTML-kood lisatakse skripti meilisõnumina. Meili sisutüübiks määratakse HTML-vormingus meili saatmiseks tekst/html. Skripti teine ​​osa on sama, mis eelmises näites. Kui SMTP-server on ühendatud ja kasutaja teave on edukalt autentitud, saadetakse saaja meiliaadressile HTML-vormingus meil.

#!/usr/bin/perl

#Importige vajalikud moodulid
kasutage ranget ;
kasutage Net::SMTP::SSL-i ;

#Deklareeri alamprogramm meili saatmiseks Gmaili serveri kaudu
sub sendEmail
{
#Autentimiseks kasutajanimi ja parool
minu $kasutajanimi = 'kasutajanimi@gmail.com' ;
minu $parool = 'rakenduse parool' ;

#Initsialiseerige muutujad meili saatmiseks
minu $to = 'receiver@gmail.com' ;
minu $ alates = 'Meher Nigar ' ;
minu $teema = 'Registreerimine lõpetatud' ;
minu $sõnum =

Tere tulemast meie saidile

;

#Deklareerige muutuja smtp
minu $smtpServer ;

#Looge ühendus Gmaili smtp-serveriga
kui ( mitte $smtpServer = Net::SMTP::SSL- > uus ( 'smtp.gmail.com' , Port => 465 , Silumine => 1 ) )
{
a 'SMTP-serveriga ei saa ühendust luua. \n ' ;
}

#Kontrollige kasutajanime ja parooli kehtivust
$smtpServer- > aut ( $kasutajanimi , $parool ) || a 'Autentimise viga. \n ' ;

$smtpServer- > mail ( $ alates. ' \n ' ) ;
$smtpServer- > juurde ( $kuni. ' \n ' ) ;
$smtpServer- > andmeid ( ) ;
$smtpServer- > andmete saatmine ( 'Alates: ' . $ alates . ' \n ' ) ;
$smtpServer- > andmete saatmine ( 'Sellele:' . $kuni . ' \n ' ) ;
$smtpServer- > andmete saatmine ( 'Teema: ' . $teema . ' \n ' ) ;

#Html-vormingus meilisõnumite saatmiseks määrake meili sisutüübiks HTML
$smtpServer- > andmete saatmine ( 'Sisutüüp: text/html; charset=utf-8 \n \n ' ) ;
$smtpServer- > andmete saatmine ( $sõnum. ' \n ' ) ;
$smtpServer- > andmete lõpp ( ) ;
$smtpServer- > lõpeta ;

}

#Helista alamprogrammile

&saada email ( ) ;

Väljund:



Kui meilisõnumi saatmine õnnestus, kuvatakse pärast skripti käivitamist väljundi alguses järgmine sarnane teave:







Kui avate saaja meiliaadressi, saate postkasti järgmise e-kirja:





Järeldus

Gmaili SMTP-serveri kaudu Perli abil meili saatmise meetodid pole pärast Gmaili konto „vähem turvalise rakenduse” keelamist nii lihtsad kui varem. Kuid saate saata meili, määrates kohe rakenduse parooli.