Sync from remote server: 2025-10-12 18:56:41
This commit is contained in:
155
ATD/sendReportmail.m
Executable file
155
ATD/sendReportmail.m
Executable file
@@ -0,0 +1,155 @@
|
||||
function sendReportmail(NomeSito,Coordinate,meseadesso,NomeReport,NomeReport_ENG,...
|
||||
Users_Report,recipients_ASE,Mail,Mail_ASE,activeEN,rU,cU,FileName)
|
||||
|
||||
text = 'sendReportmail function started';
|
||||
fileID = fopen(FileName,'a');
|
||||
fmt = '%s \r';
|
||||
fprintf(fileID,fmt,text);
|
||||
|
||||
%% Email
|
||||
setpref('Internet','E_mail','aseparma@gmail.com');
|
||||
setpref('Internet','SMTP_Server','smtp.gmail.com');
|
||||
setpref('Internet','SMTP_Username','aseparma@gmail.com');
|
||||
setpref('Internet','SMTP_Password','Mums@2016');
|
||||
props=java.lang.System.getProperties;
|
||||
pp=props.setProperty('mail.smtp.auth','true'); %#ok
|
||||
pp=props.setProperty('mail.smtp.socketFactory.class','javax.net.ssl.SSLSocketFactory'); %#ok
|
||||
pp=props.setProperty('mail.smtp.socketFactory.port','465'); %#ok
|
||||
|
||||
recipients_ITA = cell(1);
|
||||
recipients_ENG = cell(1);
|
||||
|
||||
% A chi mando la mail
|
||||
nI = 1;
|
||||
nE = 1;
|
||||
if cU >1 % sono presenti utenti a cui inviare la mail
|
||||
for i = 1:rU
|
||||
if Users_Report{i,4} == 2
|
||||
recipients_ITA{nI,1} = Users_Report(i,3);
|
||||
nI = nI+1;
|
||||
else
|
||||
recipients_ENG{nE,1} = Users_Report(i,3);
|
||||
nE = nE+1;
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
% report si riferisce al mese prima di quello attuale
|
||||
if meseadesso == 1
|
||||
mesemail = 'Dicembre';
|
||||
mesemailENG = 'December';
|
||||
elseif meseadesso == 2
|
||||
mesemail = 'Gennaio';
|
||||
mesemailENG = 'January';
|
||||
elseif meseadesso == 3
|
||||
mesemail = 'Febbraio';
|
||||
mesemailENG = 'February';
|
||||
elseif meseadesso == 4
|
||||
mesemail = 'Marzo';
|
||||
mesemailENG = 'March';
|
||||
elseif meseadesso == 5
|
||||
mesemail = 'Aprile';
|
||||
mesemailENG = 'April';
|
||||
elseif meseadesso == 6
|
||||
mesemail = 'Maggio';
|
||||
mesemailENG = 'May';
|
||||
elseif meseadesso == 7
|
||||
mesemail = 'Giugno';
|
||||
mesemailENG = 'June';
|
||||
elseif meseadesso == 8
|
||||
mesemail = 'Luglio';
|
||||
mesemailENG = 'July';
|
||||
elseif meseadesso == 9
|
||||
mesemail = 'Agosto';
|
||||
mesemailENG = 'August';
|
||||
elseif meseadesso == 10
|
||||
mesemail = 'Settembre';
|
||||
mesemailENG = 'September';
|
||||
elseif meseadesso == 11
|
||||
mesemail = 'Ottobre';
|
||||
mesemailENG = 'October';
|
||||
elseif meseadesso == 12
|
||||
mesemail = 'Novembre';
|
||||
mesemailENG = 'November';
|
||||
end
|
||||
|
||||
if meseadesso == 1 % gennaio
|
||||
annomail = datestr(today-32,'yyyy'); % anno precedente
|
||||
else % altri mesi
|
||||
annomail = datestr(today,'yyyy');
|
||||
end
|
||||
|
||||
latNS = 'N';
|
||||
lonEO = 'E';
|
||||
lonEO_ENG = 'E';
|
||||
if Coordinate(1) < 0
|
||||
latNS = 'S';
|
||||
end
|
||||
if Coordinate(2) < 0
|
||||
lonEO = 'O';
|
||||
lonEO_ENG = 'W';
|
||||
end
|
||||
|
||||
allegatoPDF = [NomeReport '.pdf'];
|
||||
allegatoPDF_ENG = [NomeReport_ENG '.pdf'];
|
||||
|
||||
%% ita
|
||||
subject_ITA = (['Report Automatico ASE - ' mesemail ' ' annomail ' ' NomeSito '']);
|
||||
testo = cellstr('Gentile utente,');
|
||||
testobis = cellstr('');
|
||||
testo2 = cellstr(['in allegato alla presente mail trover' char(224) ' il Report di monitoraggio '...
|
||||
'relativo al sito ' NomeSito ', con coordinate geografiche ' num2str(abs(Coordinate(1))) ' ' latNS ', '...
|
||||
num2str(abs(Coordinate(2,:))) ' ' lonEO '. Il presente documento viene generato automaticamente dal '...
|
||||
'software proprietario sviluppato da ASE S.r.l. con cadenza mensile e '...
|
||||
'riporta i dati di maggior interesse registrati dalla strumentazione installata '...
|
||||
'in sito durante il periodo temporale di riferimento, che a meno di interruzioni '...
|
||||
'prolungate di trasmissione del dato coincide con l''ultimo mese di monitoraggio. '...
|
||||
'In particolare, il Report allegato a questa mail presenta i dati raccolti nel mese di ' mesemail ' ' annomail '.']);
|
||||
testo3 = cellstr(['Si vuole sottolineare che questo documento ' char(232) ' generato completamente in automatico '...
|
||||
'e non contiene pertanto alcuna valutazione o validazione di carattere tecnico '...
|
||||
'relativamente ai risultati ottenuti dalla strumentazione installata. '...
|
||||
'Si ricorda inoltre che quanto riportato nel report ' char(232) ' inteso come un riassunto dei risultati '...
|
||||
'dell''attivit' char(224) ' di monitoraggio. Per la consultazione completa di tutti i dati '...
|
||||
'relativi al sito in esame, si rimanda alla piattaforma interattiva di ASE, accessibile al seguente link: ']);
|
||||
Link = cellstr('https://www2.aseltd.eu');
|
||||
testo4 = cellstr('Eventuali segnalazioni relative al report automatico possono essere inoltrate al seguente indirizzo email: alessandro.valletta@aseltd.eu');
|
||||
message_ITA = [testo; testobis; testo2; testo3; Link; testobis; testo4; testobis];
|
||||
message = cellstr('Cordiali saluti, ');
|
||||
message2 = cellstr('Il team di ASE S.r.l.');
|
||||
message_ITA = [message_ITA; message; message2];
|
||||
|
||||
%% eng
|
||||
subject_ENG = (['ASE Automatic Report - ' mesemailENG ', ' annomail]);
|
||||
testoENG = ('Dear user, ');
|
||||
testo2ENG = (['please find attached to this email a Report of the monitoring activity performed on site: ' NomeSito ', coordinates '...
|
||||
num2str(abs(Coordinate(1))) ' ' latNS ', ' num2str(abs(Coordinate(2,:))) ' ' lonEO_ENG '. '...
|
||||
'This document is generated monthly by the automatic software developed by ASE, '...
|
||||
'and it reports the main data recorded by the monitoring instrumentation installed '...
|
||||
'on-site in the last month. In particular, the automatic Report attached to this email '...
|
||||
'refers to monitoring data sampled during ' mesemailENG ', ' annomail '.']);
|
||||
testo3ENG = (['We would like to remind you that the main objective of this document is to summarize only the key information provided by each sensor; '...
|
||||
'please refer to the web-based interactive platform available at the following link in order to browse all available monitoring data.']);
|
||||
testo4ENG = ('For any comment regarding the automatic Report, please send a message to the following email address: alessandro.valletta@aseltd.eu');
|
||||
message_ENG = [testoENG; testobis; testo2ENG; testo3ENG; Link; testobis; testo4ENG; testobis];
|
||||
messageENG = cellstr('Best regards, ');
|
||||
message2ENG = cellstr('The ASE S.r.l. Team');
|
||||
message_ENG = [message_ENG; messageENG; message2ENG];
|
||||
|
||||
if Mail == 1 || Mail_ASE == 1
|
||||
if Mail == 1 && cU >1
|
||||
recipients_ITA = [recipients_ITA; recipients_ASE];
|
||||
else
|
||||
recipients_ITA = recipients_ASE;
|
||||
end
|
||||
sendmail(recipients_ITA, subject_ITA, message_ITA, allegatoPDF)
|
||||
if activeEN == 1
|
||||
sendmail(recipients_ENG, subject_ENG, message_ENG, allegatoPDF_ENG)
|
||||
end
|
||||
end
|
||||
|
||||
%scrivo invio nel logfile
|
||||
text = (['Automatic Report of ' mesemailENG ' sent! sendReportmail function closed']);
|
||||
fprintf(fileID,fmt,text);
|
||||
fclose(fileID);
|
||||
|
||||
end
|
||||
Reference in New Issue
Block a user