Java - enviar correos con Java, como leer correos de hotmail

 
Vista:
sin imagen de perfil
Val: 111
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

enviar correos con Java, como leer correos de hotmail

Publicado por Gonzalo (112 intervenciones) el 12/07/2017 03:42:01
encontre este codigo, funciona exelente, pero no encuentro codigo para enviar correos usando hotmail, alquien tiene el codigo o tiene el link con el codigo en java?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
public class MainEMail
{
 
	public static void main(String[] args)
	{
		Properties props = new Properties();
 
		props.put("mail.smtp.host", "smtp.live.com");
		props.put("mail.smtp.socketFactory.port","25");
		props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
		props.put("mail.smtp.auth","true");
		props.put("mail.smtp.port","25");
		props.put("mail.smtp.starttls.enable","true");
 
		Session session = Session.getDefaultInstance
		(
			props,
			new javax.mail.Authenticator()
			{
				protected PasswordAuthentication getPasswordAuthentication()
				{
					return new PasswordAuthentication("MiCorreo@hotmail.com","MiPassword");
				}
			}
		);
 
		try
		{
			Message message = new MimeMessage(session);
			message.setFrom(new InternetAddress("MiCorreo@hotmail.com"));
			message.setRecipients(Message.RecipientType.TO, InternetAddress.parse("MiotroCorreo@hotmail.com"));
			message.setSubject("Hi this is me");
			message.setText("Hola!!!!!");
 
			Transport.send(message);
 
			System.out.println("ok");
		}catch(Exception e)
		{
			System.out.println(e.getMessage());
		}
 
	}
 
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 358
Bronce
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

enviar correos con Java, como leer correos de hotmail

Publicado por Nicolas (137 intervenciones) el 12/07/2017 04:33:13
Hola Gonzalo.
Fíjate bien en los parámetros de conexión al server de Hotmail, creo que no utiliza el puerto 25 sino el 995 para conexiones seguras.
Espero que te sea de ayuda.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 111
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

enviar correos con Java, como leer correos de hotmail

Publicado por Gonzalo (112 intervenciones) el 12/07/2017 06:03:41
correcto, el caso es que no se como leer los correos que estan en inbox.

mas exactamente, tengo un folder con correos que debo atender en forma automatica (autorespuestas) y la verdad ando perdido.

digamoslo asi:

llega un correo con un subject

Ahorro

hotmail tiene una regla que mueve el correo a un folder especifico.

debo ver que correos en ese folder no han sido atendidos y si encuentro 1 sin leer debo recuperar el correo del cual se comunican y mandarle el estado de cuenta de su ahorro.

los demas correos debo atenderlos en forma personal, pero si automatizo los del ahorro tal vez pueda automatizar otros y serai de mucha ayuda y aque no me pasaria el dia sacando reportes en excel y mandandolo manualmente.

si pudieras ayudarme solo necesito saber como consultar el folder "Ahorros", leer esos correos, responder solo los que no he atendido y marcarlo como leido para evitar reprocesar el correo.

ya vi como mandar correos pero no encuentro ayuda para leerlos.

gracias

salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Stalin

enviar correos con Java, como leer correos de hotmail

Publicado por Stalin (2 intervenciones) el 13/07/2017 23:58:11
Hola espero te sirva el siguiente código que he realizado similar a lo que necesitas, la lectura de los correos de INBOX.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
Properties properties = new Properties();
properties.put("mail.transport.protocol", "smtp");
properties.put("mail.smtp.host", host);
properties.put("mail.smtp.port", port);
properties.put("mail.smtp.auth", "true");
 
final String username = userName;
Authenticator authenticator = new Authenticator() {
    protected PasswordAuthentication getPasswordAuthentication() {
        return new PasswordAuthentication(username, password);
    }
};
 
Transport transport = null;
 
try {
 
    Session session = Session.getDefaultInstance(properties, authenticator);
 
    Store store = session.getStore("imap");
    store.connect(host, userName, password);
 
    Folder folderInbox = store.getFolder("INBOX");
    Folder folderleidos = store.getFolder("Processed");
    Folder folderfueraDeTiempo = store.getFolder("OutsideTime");
    if(!folderleidos.exists())
    {
        Correos.LOGGER.log(Level.WARNING, "Carpeta Processed no existe, creandola");
        folderleidos.create(Folder.HOLDS_MESSAGES);
    }
    if(!folderfueraDeTiempo.exists())
    {
        Correos.LOGGER.log(Level.WARNING, "Carpeta Processed no existe, creandola");
        folderfueraDeTiempo.create(Folder.HOLDS_MESSAGES);
    }
    folderInbox.open(Folder.READ_WRITE);
 
    SearchTerm searchCondition = new SearchTerm() {
    @Override
    public boolean match(Message message) {
            try {
                if(message.getSubject() != null ){
                    if (message.getSubject().contains(keyword)) {
                        return true;
                    }
                }
 
            } catch (MessagingException ex) {
                ex.printStackTrace();
            }
            return false;
        }
    };
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 111
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

enviar correos con Java, como leer correos de hotmail

Publicado por Gonzalo (112 intervenciones) el 14/07/2017 03:46:26
gracias, lo voy a intentar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 111
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

enviar correos con Java, como leer correos de hotmail

Publicado por Gonzalo (112 intervenciones) el 15/07/2017 00:32:34
funciona bien hasta la linea 21.

store.connect(host, userName, password);

estoy usandola asi:

store.connect("smtp.live.com", "[email protected]","MiPassword");

no se si es correcto.

estoy usando este puerto

properties.put("mail.smtp.port", "25");


javax.mail.MessagingException: Connection refused: connect;
nested exception is:
java.net.ConnectException: Connection refused: connect
at com.sun.mail.imap.IMAPStore.protocolConnect(IMAPStore.java:670)
at javax.mail.Service.connect(Service.java:295)
at javax.mail.Service.connect(Service.java:176)
at EMail.main(EMail.java:48)
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at com.sun.mail.util.SocketFetcher.createSocket(SocketFetcher.java:319)
at com.sun.mail.util.SocketFetcher.getSocket(SocketFetcher.java:233)
at com.sun.mail.iap.Protocol.<init>(Protocol.java:113)
at com.sun.mail.imap.protocol.IMAPProtocol.<init>(IMAPProtocol.java:111)
at com.sun.mail.imap.IMAPStore.protocolConnect(IMAPStore.java:637)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 111
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

enviar correos con Java, como leer correos de hotmail

Publicado por Gonzalo (112 intervenciones) el 16/07/2017 07:50:54
y ahora marca time out.

inclusive con todos los ejemplos que he encontrado.

ayuda por favor!

salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 111
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

enviar correos con Java, como leer correos de hotmail

Publicado por Gonzalo (112 intervenciones) el 17/07/2017 06:03:02
ok, ya reconoce el login/pass solo me falta hacer que lea el folder de Solicitudes
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Stalin

enviar correos con Java, como leer correos de hotmail

Publicado por Stalin (2 intervenciones) el 17/07/2017 15:34:42
Hola disculpa la demora, pero que bueno que ya te haya funcionado, éxitos.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar