Foros del Web » Administración de Sistemas » Unix / Linux »

Correo desde consola

Estas en el tema de Correo desde consola en el foro de Unix / Linux en Foros del Web. Buenas! Veréis, estoy en un proyecto web, y necesito enviar una serie de correos electrónicos a mis usuarios para ir informándoles de ciertas cosas. Para ...
  #1 (permalink)  
Antiguo 15/08/2012, 01:29
 
Fecha de Ingreso: abril-2012
Ubicación: 41°37′00″N, 00°37′00″E
Mensajes: 462
Antigüedad: 12 años, 1 mes
Puntos: 33
Correo desde consola

Buenas!

Veréis, estoy en un proyecto web, y necesito enviar una serie de correos electrónicos a mis usuarios para ir informándoles de ciertas cosas.

Para ello he creado un jar que crea el contenido de los emails. Lo que quería saber es, a partir de ese punto (es decir, el mail está preparado), qué debería hacer para mandar los correos.

Sé que está el sendmail, pero he probado de usarlo desde una conexión remota (con putty) y no consigo que ande...

La cosa está en que desde java puedo hacer algo así como:

Código:
Process miProceso = Runtime.getRuntime().exec("sendmail...");
Pero no sé muy bien qué se tiene que poner en cada parámetro (he encontrado algo que decía, más o menos:

Código:
sendmail -f FROM -t TO -s SERVER -u SUBJECT -m MESSAGE
Pero no me funciona...

Además, por otra parte, me gustaría ejecutar periódicamente este jar, pero tampoco se muy bien cómo hacerlo (no controlo mucho linux...)

Gracias!
  #2 (permalink)  
Antiguo 15/08/2012, 07:17
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Correo desde consola

¿está configurado sendmail? ¿qué error ves?
¿Qué tal si creas los archivos y luego usas un script para enviar los correos?
  #3 (permalink)  
Antiguo 15/08/2012, 08:42
 
Fecha de Ingreso: abril-2012
Ubicación: 41°37′00″N, 00°37′00″E
Mensajes: 462
Antigüedad: 12 años, 1 mes
Puntos: 33
Respuesta: Correo desde consola

Diría que sendmail está configurado. Digo "diría" porque desde php uso la función mail (que tengo entendido que usa sendmail) y ahí si que me funciona.

El error que obtengo es que si uso un comando como "sendmail -f FROM -t TO -s SERVER -u SUBJECT -m MESSAGE", tras darle intro se queda ahí quieto... como colgado.

La opción de crear el archivo me parece oportuna, lo pensé al principio. Lo que me hizo dudar fue la cantidad de espacio que pueda ocupar (no se cuánto ocuparía) y el formato que deberían tener los archivos.

De todas maneras, enviar mediante archivo (supongo) que requiere las direcciones a las que enviar no? o se indica en alguna cabecera del archivo y ya?

Gracias por contestar
  #4 (permalink)  
Antiguo 15/08/2012, 12:39
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Correo desde consola

yo diría que si se "queda quieto" lo que sucede es que le falta algún parámetro, y por tanto se queda esperando tu entrada. Para comprobarlo: ejecuta el comando, ingresa algún texto (no importa qué), y luego en una línea en blanco presiona Control-D. Otra forma equivalente de probarlo es ejecutarlo como
Código:
echo "algun texto cualquiera" | sendmail ....
Si termina correctamente, es porque necesita tu entrada.

Con respecto a las direcciones, no conozco la sintaxis de sendmail (he usado mail y mailx), pero creo que -t DIRECCION debería funcionar.
Si estás en Solaris, la opción -t de mailx te permite indicarle al programa que debe tomar los datos de las cabeceras desde la entrada estándar, por lo que podés generar un correo usando una entrada como
Código:
From: tu@direccion
To: Destinatario
Subject: Asunto

Cuerpo del mensaje
¿No habrá una biblioteca de Java que puedas usar sin necesidad de crear el mensaje o llamar directamente a sendmail? Investiga tus opciones, seguro que es más fácil que esto.


Saludos.
  #5 (permalink)  
Antiguo 16/08/2012, 00:50
 
Fecha de Ingreso: abril-2012
Ubicación: 41°37′00″N, 00°37′00″E
Mensajes: 462
Antigüedad: 12 años, 1 mes
Puntos: 33
Respuesta: Correo desde consola

Sí que las hay, pero como entraba en juego tener que incluir bibliotecas externas lo dejé como una opción secundaria.

De todas maneras probaré con la biblioteca externa y te comento que tal me funciona.

Como comentaba en el primer post, ¿para hacer que el jar se ejecute de manera periódica como lo podría hacer?

Gracias por tu tiempo
  #6 (permalink)  
Antiguo 16/08/2012, 07:09
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Correo desde consola

Sería tan simple como colocar

java -jar TuJar.jar

en tu crontab. Si necesitas ayuda con eso, especifica cada cuánto tiempo debe correr, y te escribiré la línea completa para colocar en el crontab.


Saludos :)
  #7 (permalink)  
Antiguo 16/08/2012, 07:26
 
Fecha de Ingreso: abril-2012
Ubicación: 41°37′00″N, 00°37′00″E
Mensajes: 462
Antigüedad: 12 años, 1 mes
Puntos: 33
Respuesta: Correo desde consola

Gracias!

He estado mirando sobre crontab, y he hecho lo siguiente:

Código:
crontab -e

(se ha abierto vi)

*/10 * * * * java -jar miJar.jar

:wq (guardar y salir)
La idea es que se ejecute cada 10 minutos (y suerte que aún recuerdo algo de comandos de linux de mis estudios ).
  #8 (permalink)  
Antiguo 16/08/2012, 07:56
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Correo desde consola

eso debería funcionar perfectamente

Etiquetas: consola, correo, ip, linux
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:43.