F_MAIL_GMAIL()

Siuntimas elektroniniu paštu tiesiogiai per pašto serverį, jungiantis per GMAIL (Google API).

(nuo 124 RIV_GAMA versijos)

Ši funkcija leidžia siųsti laiškus jungiantis prie GMAIL naudojant oAuth2 (prisijungimo tipai: Authorization Code Grant, Service Account) siuntimui naudojamos Google API užklausos.

Naudojimo reikalavimai :

  • Chilkat programinė biblioteka turi būti registruojama kiekvienoje darbo vietoje – registruojama automatiškai pirmą kartą paleidus funkciją, naudojančią Chilkat biblioteką. Minimali Chilkat versija: 10.1.3
  • Rivile GAMA sistemos INIT'e reikia aprašyti prisijungimo prie serverio nustatymus - funkcija gmail_init().

Sintaksė

F_MAIL_GMAIL(tcTo, tcSubject, tcBodyPlain, [tcFiles], [tcBodyHTML], [tcCC], [tcBCC], [tcFrom], [tcModul])

Grąžina

.T. - jei išsiųsta be klaidų, priešingu atveju - klaidos pranešimą

Parametrai

Parametras Aprašymas Formatas
tcTo el. pašto adresas - gavėjas C
tcSubject laiško pavadinimas C
tcBodyPlain laiško turinys paprastu tekstu C
tcFiles prisegami failai išvardinti per kabliataškį C
tcBodyHTML laiško turinys HTML formatu (formatizuotas tekstas) C
tcCC laiško kopijos gavėjas C
tcBCC laiško kopijos nematomas gavėjas C
tcFrom nuo adresato (pagal nutylėjimą account vartotojo vardas) C
tcModul modulis pagal kurį imami prisijungimo duomenys iš parametrų sąrašo C

Norint pamatyti klaidą, reikia vartotojui uždėti SISTEMOS INIT‘ą, kuris techniškai parodo visą pilną klaidos pranešimą.

titi_pagr.smtp_server="EXECSCRIPT("
titi_pagr.smtp_server=titi_pagr.smtp_server+'[LPARAMETERS _adresas,_antraste,_tekstas,_failas]+CHR(13)+CHR(10)+'
titi_pagr.smtp_server=titi_pagr.smtp_server+'[_klaida=""]+CHR(13)+CHR(10)+'

titi_pagr.smtp_server=titi_pagr.smtp_server+'[lRet=f_mail_gmail(_adresas,_antraste,_tekstas,_failas)]+' && Ideti savo siuntimo funkcija

titi_pagr.smtp_server=titi_pagr.smtp_server+'CHR(13)+CHR(10)+'
titi_pagr.smtp_server=titi_pagr.smtp_server+'[=IIF(!EMPTY(_klaida),f_info(_klaida,.T.),"")]+CHR(13)+CHR(10)+'
titi_pagr.smtp_server=titi_pagr.smtp_server+'[return lRet]+CHR(13)+CHR(10)+'
titi_pagr.smtp_server=titi_pagr.smtp_server+"[],_adresas,_antraste,_tekstas,_failas)"

Pavyzdžiai

f_mail_gmail("info@testas.lt","Antraštė","Laiško tekstas","c:\test.txt")'

Pastaba 1

Sistemos INIT-e nurodomas prisijungimo prie serverio metodas bei prisijungimo duomenys:

GMAIL_INIT(tcClient_id, tcLogin_type, [tlcTokenStorage], [tcClient_secret], [tcService_email], [tcCert_thumbprint], [tcCert_file], [tcCert_passw])
Parametras Aprašymas Formatas
tcClient_id Client ID C
tcLogin_type prisijungimo tipas: Auth_Code, Serv_Acc C
tlcTokenStorage ar išsaugoti prisijungimo duomenis duomenų bazėje? (galioja tik Auth_Code) L
tcClient_secret Secret raktas C
tcService_email Aptarnavimo el. pašto adresas (galioja tik Serv_Acc) C
tcCert_thumbprint Sertifikato atspaudo ID (galioja tik Serv_Acc) C
tcCert_file Sertifikato failas su takeliu (galioja tik Serv_Acc) C
tcCert_passw Sertifikato failo slaptažodis C

Kokius prisijungimo metodus galima naudoti:

  • Auth_Code - naudojamas siunčiant laiškus paties vartotojo vardu. Pats vartotojas suteikia teises sistemai siųsti laiškus. Suteiktos teisės galioja iki 60 dienų.
  • Serv_Acc - naudojamas siunčiant laiškus kaip servisas. Nurodyto sertifikato teisės galioja iki 10 metų.

Rekomendacijos:

  • Auth_Code - naudoti kai pats vartotojas siunčia laiškus. Pavyzdžiui: gmail_init("862743378055-m43gs119vjt92qj7cl4sgnsab0cb55p4.apps.googleusercontent.com","Auth_Code",.T.,"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")
  • Serv_Acc - naudoti kartu su parametru tcCert_thumbprint kai naudojama siunčiant laiškus automatizuotai arba kai siunčia visa įmonė vienu vardu. Pavyzdžiui: gmail_init("862743378055-m43gs119vjt92qj7cl4sgnsab0cb55p4.apps.googleusercontent.com","Serv_Acc",.F.,"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","rivile-gama-sercie@copper-tracker-456308-k0.iam.gserviceaccount.com","aaa473c941acac7ec815dd2b572ef56eb6795506")

Pastaba 2

Naudojant GMAIL kaip pagrindinį laiškų siuntimo metodą, sistemos INIT-e turi būti užprogramuota:

titi_pagr.smtp_server='f_mail_gmail(_adresas,_antraste,_tekstas,_failas)'

Pastaba 3

Naudojant GMAIL kaip pagrindinį laiškų siuntimo metodą, norint naudoti šabloną su stiliumi, sistemos INIT-e galima užprogramuoti:

titi_pagr.smtp_server='f_mail_gmail(_adresas,_antraste,"",_failas,STRTRAN(F_FILETOSTR("email_sign.html"),"[[BODY]]",STRTRAN(xml_encode(_tekstas),"&#10;","<br>")))'

Pastaba 4

Siunčiant laiškus funkcijos f_mail_gmail() pagalba, yra galimybė nurodyti laiško kopijos gavėjų adresus.
Jie aprašomi parametre SS_SMTP_KOP.