Рустем Анваров
Дата: 06.12.2007 12:21:44
Написал такой код при отправке сообщения с авторизацией(без авторизации работает)
mail_conn := utl_smtp.open_connection(smtpHost, 25);
utl_smtp.helo(mail_conn, smtpHost);
utl_smtp.command(mail_conn, 'AUTH LOGIN');
utl_smtp.command(
mail_conn
, utl_raw.cast_to_varchar2(
utl_encode.base64_encode(utl_raw.cast_to_raw('rustem))
)
);
utl_smtp.command(
mail_conn
, utl_raw.cast_to_varchar2(
utl_encode.base64_encode(utl_raw.cast_to_raw('12345678'))
)
);
и в строке utl_smtp.command(mail_conn, 'AUTH LOGIN');
выходит ошибка send helo first, хотя helo уже был сделан. smtpserver указан правильно. В чем ошибка?
alexhotboy
Дата: 20.12.2007 14:29:24
я например сделал так и все отправляется с лету: -- вместо ECHO вставил EHLO
-- connection
l_mail_conn := UTL_SMTP.OPEN_CONNECTION(l_host_smtp);
UTL_SMTP.EHLO(l_mail_conn, l_host_smtp );
-- autentification
UTL_SMTP.COMMAND(l_mail_conn, 'AUTH LOGIN');
UTL_SMTP.COMMAND(l_mail_conn,
UTL_RAW.CAST_TO_VARCHAR2(utl_encode.base64_encode(utl_raw.cast_to_raw( lower(l_email_smtp) ))));
UTL_SMTP.COMMAND(l_mail_conn,
UTL_RAW.CAST_TO_VARCHAR2(utl_encode.base64_encode(utl_raw.cast_to_raw( lower(l_email_smtp_psw) ))));
---
UTL_SMTP.MAIL(l_mail_conn, '< ' || l_email_smtp || ' >') ;
UTL_SMTP.RCPT(l_mail_conn, l_email_target ) ;
--
UTL_SMTP.OPEN_DATA(l_mail_conn) ;
--
send_header('To', l_email_target );
send_header('Subject', 'тест русского языка' );
utl_smtp.write_data(l_mail_conn, utl_tcp.CRLF);
.....