domingo, 25 de octubre de 2009

Enviar un correo usando Gmail desde Java



correo2.jpg


Preparando el entorno.


Para ello deberemos descargar la librería JavaMail desde http://java.sun.com/products/javamail/. Luego la incluiremos en nuestro proyecto. Si usamos Eclipse, lo haremos así: botón derecho sobre el proyecto, Properties, Java Build Path, Add Externals JARs.




El código


Aquí se muestra el código. Simplemente tendremos que cambiar las propiedades miCorreo y miContraseña por la dirección y contraseña de nuestra cuenta Gmail. En el método main, pondremos la dirección a la que lo queremos mandar, el asunto y el cuerpo respectivamente.




import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;

public class EnviadorMail {
final String miCorreo = "micorreo@gmail.com";
final String miContraseña = "*****";
final String servidorSMTP = "smtp.gmail.com";
final String puertoEnvio = "465";
String mailReceptor = null;
String asunto = null;
String cuerpo = null;

public EnviadorMail(String mailReceptor, String asunto,
String cuerpo) {
this.mailReceptor = mailReceptor;
this.asunto = asunto;
this.cuerpo = cuerpo;

Properties props = new Properties();
props.put("mail.smtp.user", miCorreo);
props.put("mail.smtp.host", servidorSMTP);
props.put("mail.smtp.port", puertoEnvio);
props.put("mail.smtp.starttls.enable", "true");
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.socketFactory.port", puertoEnvio);
props.put("mail.smtp.socketFactory.class",
"javax.net.ssl.SSLSocketFactory");
props.put("mail.smtp.socketFactory.fallback", "false");

SecurityManager security = System.getSecurityManager();

try {
Authenticator auth = new autentificadorSMTP();
Session session = Session.getInstance(props, auth);
// session.setDebug(true);

MimeMessage msg = new MimeMessage(session);
msg.setText(cuerpo);
msg.setSubject(asunto);
msg.setFrom(new InternetAddress(miCorreo));
msg.addRecipient(Message.RecipientType.TO, new InternetAddress(
mailReceptor));
Transport.send(msg);
} catch (Exception mex) {
mex.printStackTrace();
}

}

private class autentificadorSMTP extends javax.mail.Authenticator {
public PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(miCorreo, miContraseña);
}
}

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
EnviadorMail EnviadorMail = new EnviadorMail("dire@dire",
"Este es el asunto de mi correo", "Este es el cuerpo de mi correo");
}

}




Fuentes:


http://puretechie.blogspot.com/2008/09/sending-email-using-gmail-using-java.html




jueves, 1 de octubre de 2009

Convertir un vídeo flv para verlo en Nokia 5800 (Linux)




Si eres de los que se bajan vídeos de youtube (flv) y quieres verlos en un Nokia 5800, este post te ayudará. Veremos que se puede hacer de una forma sencillísima. Luego crearemos un script para que el proceso sea más cómodo.




Convirtiendo el vídeo


Lo que queremos hacer es convertir un video flash en mpeg4, con una resolución de 640x360. Para ello debemos instalar ffmpeg:



sudo aptitude install ffmpeg



Ahora ya podemos hacer la llamada que realizará la conversión:



ffmpeg -pass 1 -passlogfile movieLog.txt -i miVideo.flv -b 750000 -vcodec mpeg4 -s 640x360 -acodec libfaac -ac 2 -ab 96000 miVideo.mp4


Obviamente debemos cambiar miVideo por el nombre de nuestro vídeo.




Crear el script


Para ahorrarnos tener que escribir ese comando tan largo cada vez, podemos hacer un script y pasarle como argumentos el nombre del vídeo de entrada y el nombre del vídeo de salida. Para ello creamos un archivo que se llame convertidor.sh, que contenga lo siguiente:



ffmpeg -pass 1 -passlogfile movieLog.txt -i "$1" -b 750000 -vcodec mpeg4 -s 640x360 -acodec libfaac -ac 2 -ab 96000

"$2"


Para ejecutarlo escribiremos en consola algo así:



sh convertidor.sh video.flv video.mp4


Ahora bien, si el nombre del vídeo tiene varias palabras, deberemos meterlo entre comillas simples. De esta forma tomará como argumento el nombre entero y no sólo la primera palabra. Ejemplo:



sh convertidor.sh 'Video de mi casa.flv' 'Video de mi casa.mp4'


Tras un periodo de tiempo no muy largo, tendremos un archivo mp4 que será perfectamente reproducible en nuestro móvil.




Felinfo: Java, Linux, Virtualización. Open Source.  ©Template Blogger Green by Dicas Blogger .

TOPO