Tenho um sistema de cobrança em SC 8que envia SMS para posicionar sobre a situação da divida e com isso eu também faço a venda de pacotes de SMS para o meu cliente.
Mudei a forma de negociar esses pacotes e coloquei agora na web a compra desses pacotes pro meu cliente que recebe um email da ferramenta assim que confirma a compra com os dados da mesma.
Porém eu não consigo fazer funcionar na web esse envio de emails. Aqui no ambiente de produção e na ferramenta local funciona muito bem e quando Publico somente dá erros.
Eu estou lutando com isso a 3 semanas e não consigo resolver… ja tirei as variaveis que o sc_lookup() busca substituindo por valores diretos, usei a porta 465 a 587 ja usei smtp.gmail.com e ja substitui pelo IP dando ping nessa porta… Enfim EU NÃO SEI MAIS O QUE FAZER !!!
obs.: estou postando o exemplo abaixo que é o mesmo caso porem é do cadastro de usuário que tem o código mais simples e esta no projeto de implantação de segurança padrão do ScriptCase esta na função PHP send_mail_message() posicionada no onAfterInsert do formulário app_seg_form_edit_user. Após o cadastro envia pro usuário uma mensagem com o link do sistema juntamnte com o seu login e senha.
No momento desse erro estou usando o seguinte:
$var_smtp = ‘smtp.gmail.com’;
$var_usuario = ‘usuario@gmail.com’;
$var_usuario_senha = ‘senha_do_usuario’;
$var_tpmensagem = ‘H’;
$var_porta = ‘465’;
$var_TP_Copias = ‘BCC’;
$var_tp_conexao = ‘S’;
$var_ssl = ‘allow_self_signed=false;verify_peer=false’;
erro:
Fatal error: Uncaught exception ‘Swift_TransportException’ with message ‘Connection could not be established with host smtp.gmail.com [ #0]’ in /home/sys1a1/www/pazbarueri/producao/prod/third/swift/classes/Swift/Transport/StreamBuffer.php:269 Stack trace: #0 /home/sys1a1/www/pazbarueri/producao/prod/third/swift/classes/Swift/Transport/StreamBuffer.php(62): Swift_Transport_StreamBuffer->_establishSocketConnection() #1 /home/sys1a1/www/pazbarueri/producao/prod/third/swift/classes/Swift/Transport/AbstractSmtpTransport.php(113): Swift_Transport_StreamBuffer->initialize(Array) #2 /home/sys1a1/www/pazbarueri/producao/prod/third/swift/classes/Swift/Mailer.php(79): Swift_Transport_AbstractSmtpTransport->start() #3 /home/sys1a1/www/pazbarueri/app_seg_form_edit_users/app_seg_form_edit_users_apl.php(4320): Swift_Mailer->send(Object(Swift_Message), Array) #4 /home/sys1a1/www/pazbarueri/app_seg_form_edit_users/app_seg_form_edit_users_apl.php(3718): app_seg_form_edit_users_apl->send_mail_message() #5 /home/sys1a1/www/pazbarueri/app_seg in /home/sys1a1/www/pazbarueri/producao/prod/third/swift/classes/Swift/Transport/StreamBuffer.php on line 269
meu código função PHP send_mail_message():
// busca os dados de configuração em tbl_configura
sc_lookup(dadosconfig,‘SELECT csi_linksys,csi_email_smtp,csi_email_usuario,csi_email_pswd,
csi_email_tpmsg,csi_email_porta,csi_email_tpcopy,csi_email_tpconexao,csi_email_ssl FROM tbl_configura’);
$var_link = {dadosconfig[0][0]};
$var_smtp = {dadosconfig[0][1]};
$var_usuario = {dadosconfig[0][2]};
$var_usuario_senha = {dadosconfig[0][3]};
$var_tpmensagem = {dadosconfig[0][4]};
$var_porta = {dadosconfig[0][5]};
$var_TP_Copias = {dadosconfig[0][6]};
$var_tp_conexao = {dadosconfig[0][7]};
$var_ssl = {dadosconfig[0][8]};
// traz dados do formulario
$var_senha_temp = [senha_usuario];
$var_login = {login};
// Configuração do texto da mensagem
$mail_msg = 'Olá ' .{name}.'. Seja bem vindo(a) ao Sistema. <br>';
$mail_msg .= '<br>';
$mail_msg .= 'Seu Login: ' .$var_login.'<br>';
$mail_msg .= 'Sua Senha: ' .$var_senha_temp.'<br>';
$mail_msg .= '<br>';
$mail_msg .= 'Para acessar o Sistema abra esse link: ' .$var_link.' e depois de acessar preencha com o seu logim e sua senha. <br>';
$mail_msg .= '<br>';
$mail_msg .= 'Como essa é uma senha provisória ao acessar o sistema pela primeira vez, você sera direcionado(a) a cadastrar sua Nova Senha Definitiva. <br>';
$mail_msg .= '<br>';
$mail_msg .= 'Caso queira que esta senha seja a permanente basta confirmá-la novamente. <br>';
$mail_msg .= '<br>';
$mail_msg .= '<br>';
$mail_msg .= 'Não Responda esse E-mail. <br>';
$mail_msg .= 'Todos Direitos reservados a: CSi Sistemas de Informática e Web Ltda® <br>';
// parametros
$SMTP = $var_smtp;
$Usr = $var_usuario;
$Pswd = $var_usuario_senha;
$De = $var_usuario;
$Para = 'suporte@csisistemas.com.br';
$Para = {email};
$Assunto = 'Senha para Novo Usuario';
$Mensagem = $mail_msg;
$Tipo_Mens = $var_tpmensagem;
$CCopias = '';
$TP_Copias = $var_TP_Copias;
$Porta = $var_porta;
$Tp_Conexao = $var_tp_conexao;
$Anexo = '';
$SSL = $var_ssl;
sc_mail_send($SMTP, $Usr, $Pswd, $De, $Para, $Assunto, $Mensagem, $Tipo_Mens, $CCopias, $TP_Copias, $Porta, $Tp_Conexao, $Anexo, $SSL);
// mensagem de confirmação
if ({sc_mail_ok})
{
//echo "Enviados {sc_mail_count} e-mail com sucesso !!";
$msg = "Foram Enviado(s) {sc_mail_count} e-mail com sucesso !!";
sc_alert($msg);
}
else
{
sc_error_message({sc_mail_erro});
}
meu ambiente de produção:
meu ambiente no servidor de hospedagem KingHost: obs.: mudei o PHP no servidor para 5.6 e minhas funções Ajax pararam de funcionar e então voltei para o 5.5.
minhas permissões na conta Gmail:
Bem eu tentei aqui tudo o que pude imaginar e estou travado nisso. Se alguem puder me ajudar desde de já sou muito grato.