Ver Mensaje Individual
  #2 (permalink)  
Antiguo 10/01/2009, 09:31
franco190453
 
Fecha de Ingreso: abril-2006
Mensajes: 1.128
Antigüedad: 18 años
Puntos: 33
Respuesta: ¿Cómo comprobar si se puede enviar un email?

Sumolari:
Considerando que el correo tiene dos etapas esenciales y medulares, tu pregunta se puede contestar en dos puntos basicos.
AREA LOCAL INTERNA:
1.- la funcion mail() o imap_mail() en caso tengas instalada la libreria imap, y si haces un if(mail(............)) {.....}.
Es importante notar que este envio inicial tiene que ver entre tu script o codigo y el servidor de correo o SMTP instalado ya sea en tu computadora o localhost o instalado en un sitio remoto como por ejemplo tu ISP o google.com en caso tengas cuenta con ellos.
Esto es rechazado cuando tu servidor de correo o SMTP determina que, entre otras cosas, el dominio esta mal escrito, (Ejemplo: goggle.xyz) o porque hay error en la escritura del correo de destino (Ejemplo: no contiene @) o porque no hay asunto ni mensaje a enviar o porque tu IP no esta autorizada para utilizar ese servidor, etc
AREA EXTERNA:
2.- Una vez que tu servidor de correo ha aceptado para su envio el correo que tu script o codigo le ha enviado, este servidor debera cumplir con los requisitos impuestos, por lo que podremos razonablemente llamar la industria de los correos electronicos; que dentro de los requisitos estan, entre otros, la utilizacion del puerto 25 para el intercamcio de comunicacion, la necesidad que la IP que utiliza el servidor no este listada en alguna de esas bases de datos de SPAM, la necesidad de que la IP tenga el debido reverso, los records SPF, un dominio que no este blacklisted y que exista y finalmente lo que se llama greylisting que no es mas que el correo contenga su asunto, mensaje y cabeceras adecuadamente configurados y listos para enviar.
El rechazo del servidor de destino es comunicado al servidor que envia y tu script o codigo NO tiene forma directa para saber el status del correo en determinado momento; en este caso me refiero especificamente a cuando fue entregado (Tiempo), si fue retrasada su recepcion para proxima conexion, rechazo total del correo por alguna de las razones expuestas arriba.
FINALMENTE, EL RECHAZO TAMBIEN DEPENDE DE LA FORMA DE CONFIGURAR NO SOLO EL SERVIDOR DE CORREO QUE ENVIA SINO QUE TAMBIEN EL SERVIDOR DE CORREO QUE RECIBE.
3.- Hay formas que un servidor de correo que envia pueda notificarte si un correo falla, pero ya en esos casos entramos en la administracion de un servidor de correo profesional que tenga esta opcion dentro de sus archivos de configuracion.
Saludos
Y espero te ayude
Franco