F_MAIL_MS365()

Siuntimas elektroniniu paštu tiesiogiai per pašto serverį, jungiantis per "Microsoft 365" (Microsoft Graph API).

(nuo 124 RIV_GAMA versijos)

Ši funkcija leidžia siųsti laiškus jungiantis prie "Microsoft 365" naudojant oAuth2 (prisijungimo tipai: Authorization Code Flow, Client Credentials Flow) siuntimui naudojamos Microsoft Graph 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 ms365_init().

Sintaksė

F_MAIL_MS365(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_ms365(_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_ms365("info@testas.lt","Antraštė","Laiško tekstas","c:\test.txt")'

Pastaba 1

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

MS365_INIT(tcClient_id, tcTenant_id, tcLogin_type, [tlcTokenStorage], [tcClient_secret], [tcCert_thumbprint], [tcCert_file], [tcCert_passw])
Parametras Aprašymas Formatas
tcClient_id Client ID C
tcTenant_id Tenant ID C
tcLogin_type prisijungimo tipas: Auth_Code, Cred_Secret, Cred_Cert C
tlcTokenStorage ar išsaugoti prisijungimo duomenis duomenų bazėje? (galioja tik Auth_Code) L
tcClient_secret Secret raktas (galioja tik Cred_Secret) C
tcCert_thumbprint Sertifikato atspaudo ID (galioja tik Cred_Cert) C
tcCert_file Sertifikato failas su takeliu (galioja tik Cred_Cert) 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ų.
  • Cred_Secret - naudojamas siunčiant laiškus kaip servisas. Nurodyto Secret rakto teisės galioja iki 2 metų.
  • Cred_Cert - 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: ms365_init("95bac988-e3bf-4349-9f05-e9cfb573c588","458c5b55-27b4-4b8d-ad7e-55f173620ca8","Auth_Code",.T.)
  • Cred_Cert - naudoti kartu su parametru tcCert_thumbprint kai naudojama siunčiant laiškus automatizuotai arba kai siunčia visa įmonė vienu vardu. Pavyzdžiui: ms365_init("95bac988-e3bf-4349-9f05-e9cfb573c588","458c5b55-27b4-4b8d-ad7e-55f173620ca8","Cred_Cert",,,"3D0DD39100FDA370218440DD5BB7E9B19AE455FE")

Pastaba 2

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

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

Pastaba 3

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

titi_pagr.smtp_server='f_mail_ms365(_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_ms365() pagalba, yra galimybė nurodyti laiško kopijos gavėjų adresus.
Jie aprašomi parametre SS_SMTP_KOP.