F_MAIL_MS365()

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

Siuntimo per MS365 administravimas.

(nuo 124 RIVILE 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

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.