필터 지우기
필터 지우기

System throws an error when attempting to send email from Matlab

조회 수: 3 (최근 30일)
Sudharsan K.R
Sudharsan K.R 2019년 3월 27일
답변: Ishu 2024년 5월 6일
Below is the code I have used to send email from matlab and also the error message that i am seeing when i run the code.
Could someone please help me out
function send_mail_message(id,subject,message,attachment)
mail = 'email@gmail.com';
password = '******'
if nargin == 1
message = subject;
subject = '';
elseif nargin == 2
message = '';
attachment = '';
elseif nargin == 3
attachment = '';
end
% Send Mail ID
emailto = strcat('email2','@gmail.com');
subject='test';
message='This is a test mail from matlab';
attachment='F:\plot.txt'
%% Set up Gmail SMTP service.
% Then this code will set up the preferences properly:
setpref('Internet','E_mail',mail);
setpref('Internet','SMTP_Server','smtp.gmail.com');
setpref('Internet','SMTP_Username',mail);
setpref('Internet','SMTP_Password',password);
% Gmail server.
props = java.lang.System.getProperties;
props.setProperty('mail.smtp.auth','true');
props.setProperty('mail.smtp.socketFactory.class', 'javax.net.ssl.SSLSocketFactory');
props.setProperty( 'mail.smtp.starttls.enable', 'true' );
props.setProperty('mail.smtp.socketFactory.port','465');
%% Send the email
if strcmp(mail,'email2@gmail.com')
disp('Please provide your own gmail.')
disp('You can do that by modifying the first two lines of the code')
disp('after the comments.')
end
sendmail(emailto,subject,message,attachment)
send_mail_message('email.id','subject1','This is a test message','F:\plot.txt')
Error using sendmail
Could not connect to SMTP host: smtp.gmail.com, port: 25;
Connection refused: connect

답변 (1개)

Ishu
Ishu 2024년 5월 6일
Hi Sudharsan
I understand from your message that the connection to the SMTP host was refused, likely because the "sendmail" function is using port 25. Modern SMTP servers use port 587, as this port is more reliable and avoids the limitations associated with the lower-level port 25.
You can also refer to the following documentation for SMTP settings: https://developers.google.com/gmail/imap/imap-smtp.
I tried running the code with port 587, and it worked fine.
props.setProperty('mail.smtp.port', '587');
Hope it helps!

카테고리

Help CenterFile Exchange에서 Web Services에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by