Macro sc_send_mail_api

Pessoal, boa tarde!

Gostaria de saber se alguém conhece uma forma de confirmar se o e-mail foi enviado ou não? Por ex.: se eu tentar enviar um e-mail com dados de smtp incorretos, ele vai me trazer uma mensagem do tipo:

Error
stream_socket_client(): unable to connect to mail.seudominio.com.br:0 (Connection timed out)

Queria tratar esse tipo de erro, ou seja, colocar em um alert ou coisas do tipo bem como, informar o usuário que o e-mail foi enviado.

Grato!!

Acho que vai ter que colocar um “try” https://www.php.net/manual/pt_BR/language.exceptions.php e fazer um tratamento pegando a resposta que vem do sc_error_message({sc_mail_erro}).

Boa noite!! Testei isso mas dá mensagem que a variável {sc_mail_erro} não existe.

“mail.seudominio.com.br:0” este zero, parece que não definiu a porta de conexão, tenta colocar 587, ou verifique qual a porta que seu provedor de email disponibiliza

@jair , o problema não é esse. Eu só quero tratar o erro. O motivo para o erro foi só um exemplo

Bom dia, dando continuidade a este mesmo tópico, eu quero deixar aqui outro problema que me houve mas quando subi o sistema para produção.

O erro que me dá é o seguinte: stream_socket_client(): unable to connect to tcp://smtp.gmail.com:587 (Connection timed out)

Eu tenho uma revenda na Uolhost.

Alguma ideia do que possa ser?

Pessoal, bom dia!
Estou reabrindo este tópico pelo simples motivo de que ainda não consegui fazer o tratamento quando o e-mail é enviado com sucesso e quando ocorre algum erro.

Particularmente, na documentação, eu acho que está muito, mas MUITO incompleto mesmo. Não tem muita explicação. Poderiam dar mais detalhes sobre essa macro?

Eu consegui implementa-la. Mas não dá pra apresentar erros de qualquer jeito para o cliente. Se alguém já conseguiu fazer tal tratamento, poderia me dar uma luz de como fazer?

Desde já, agradeço a atenção de todos!

Olá,

cheguei a pesquisar, até anotei aqui para estudar como funciona, mas ainda não tive tempo

bem segue o caminho e o que achei, pode dar uma luz, ou desiste da _api como eu fiz

dentro do _lib/lib/php/nm_api.php a function sc_send_mail_api($arr_settings)
porem não vi retorno de erro

pesquisando dentro de projetos feitos encontrei {sc_mail_erro} dentro da segurança
app_form_add_users_apl.php
le tem:
$this->sc_mail_count = 0;
$this->sc_mail_erro = “”;
$this->sc_mail_ok = true;

e no codigo fazem verificações e vão setando o erro ou ok

$Err_mail = array();
$this->sc_mail_count = $Send_Mail->send($Mens_Mail->setFrom($Arr_addr[0], $Arr_addr[1]), $Err_mail);
if (!empty($Err_mail))
{
$this->sc_mail_erro = $Err_mail;
$this->sc_mail_ok = false;
}

pensei no samples que deveria ter alguma coisa, pesquisando por sc_mail_erro, só encontrei uma ocorrencia mcr15 mas ela faz uso do sc_mail_send e não a api

unica ocorrencia para sc_send_mail_api esta em control_email_export, mas não ajudou nada

resultado…
estou usando o phpmailer até descobrir como tratar melhor ou ver como mudar a api, o envios em lote vão por cronjob com phpmailer não uso SC, os envios individuais dentro da aplicação usei o a sc_mail_send

Grande Jair, obrigado!!!