To address the need of free sms and email service . this is the java
program which sends email to defined recipients and sms to defiend mobile
numbers. For sms, one additional information of service provider we have give.
jar file required can be easily download from internet free of cost. The link for download is http://java.sun.com/products/javamail/downloads/index.html
Please change the recipient name , username and password.
Setting: Go to your mail account setting and ensure that 'IMAP' is enabled.
some of the mobile service providers are mentioned below:
jar file required can be easily download from internet free of cost. The link for download is http://java.sun.com/products/javamail/downloads/index.html
Please change the recipient name , username and password.
Setting: Go to your mail account setting and ensure that 'IMAP' is enabled.
some of the mobile service providers are mentioned below:
- airtelap.com , Airtel for Andhra Pradesh
- bplmobile.com , BPL Mobile
- airtelmail.com , Delhi Aritel
- delhi.hutch.co.in , Delhi Hutch
- ideacellular.net , Idea Cellular
- escotelmobile.com , Kerala Escotel
- airtelkol.com , Kolkata Airtel
- orangemail.co.in , Mumbai Orange
- orange.net , Orange
- orangemail.co.in , Orange Mumbai
- escotelmobile.com , Uttar Pradesh Escotel
- rpgmail.net , Chennai RPG Cellular
- airtelmail.com , Airtel
- orangemail.co.in , Orange Mumbai
- sms.sancharnet.in , BSNL
- south.hutch.co.in , Andhra Hutch
import java.net.InetAddress; import java.util.Properties; import java.util.Date; import javax.activation.*; import java.util.Properties; import javax.mail.*; import javax.mail.Authenticator; import javax.mail.Message; import javax.mail.MessagingException; import javax.mail.PasswordAuthentication; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; import com.sun.mail.smtp.*; // Public Class public class EmailSms { public static void main(String Args []) { EmailSms sms = new EmailSms(); try { String status = sms.functionTosendSMS("Phone Number","bplmobile.com","hi"); //System.out.println("status == " + status ); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } // Global Variables String TO; String FROM; String SUBJECT; String TEXT; String MAILHOST; String LASTERROR; String Result; String PASSWORD="your_password"; // Main function executed public String functionTosendSMS(String mo,String sp,String msg) throws Exception { EmailSms SMS = new EmailSms(); SMS.setMailHost("smtp.gmail.com"); SMS.setTo(mo+"@"+sp); // usage :mobileno@ideacellular.net SMS.setFrom("anathor@gmail.com"); SMS.setSubject("hi"); SMS.setText(msg); boolean ret = SMS.send(); if (ret) { Result="SMS sent!"; System.out.println("SMS has been sent!"); } else { Result="Not sending..!"; System.out.println("Not sending - " + SMS.getLastError()); } return Result; } // Public Constructor public EmailSms() { TO = "one@gmail.com"; FROM = "another@gmail.com"; SUBJECT = "Hi"; TEXT = "Test"; MAILHOST = "smtp.gmail.com"; LASTERROR = "No method called."; } public void setTo(String to) { TO = to; } public String getTo() { return TO; } public void setFrom(String from) { FROM = from; } public String getFrom() { return FROM; } public void setSubject(String subject) { SUBJECT = subject; } public String getSubject() { return SUBJECT; } public void setText(String text) { TEXT = text; } public String getText() { return TEXT; } public void setMailHost(String host) { MAILHOST = host; } public String getMailHost() { return MAILHOST; } public String getLastError() { return LASTERROR; } // Will attempt to send the Email SMS and return a boolean meaning it // either failed or succeeded. public boolean send() { // Variables to check message length. int maxLength; int msgLength; // Check to make sure that the parameters are correct if (TO.indexOf("mobile.att.net") > 0) { maxLength = 140; } else if (TO.indexOf("messaging.nextel.com") > 0) { maxLength = 280; } else if (TO.indexOf("messaging.sprintpcs.com") > 0) { maxLength = 100; } else { maxLength = 160; } // Calculate message length msgLength = FROM.length() + 1 + SUBJECT.length() + 1 + TEXT.length(); // Typically, there are at least two characters of delimiter // between the from, subject, and text. This is here to make // sure the message isn't longer than the device supports. if (msgLength > maxLength) { LASTERROR = "SMS length too long."; return false; } // Set Email Properties boolean debug = false; java.security.Security .addProvider(new com.sun.net.ssl.internal.ssl.Provider()); //Set the host smtp address Properties props = new Properties(); props.put("mail.transport.protocol", "smtp"); props.put("mail.smtps.port","465"); props.put("mail.smtps.starttls.enable","true"); props.put("mail.smtps.host", MAILHOST); props.put("mail.smtps.auth","true"); Authenticator auth = new SMTPAuthenticator(); // Session session = Session.getDefaultInstance(props, auth); Session session = javax.mail.Session.getInstance(props,auth); session.setDebug(debug); // create a message Message msg = new MimeMessage(session); /* Properties props = System.getProperties(); if (MAILHOST != null) { props.put("mail.smtp.host", MAILHOST); } // Get a Session object Session session = Session.getInstance(props, null); */ try { // Construct the email // Message msg = new MimeMessage(session); // Set From if (FROM != null) { msg.setFrom(new InternetAddress(FROM)); } else { msg.setFrom(); } // Set Subject msg.setSubject(SUBJECT); // Set Text msg.setText(TEXT); // Add Recipient msg.setRecipients(Message.RecipientType.TO, InternetAddress.parse(TO, false)); // Sent Date msg.setSentDate(new Date()); // Send Email SMS URLName urln = new URLName("smtp", MAILHOST, 587, "",FROM,"your_password"); //port numbers 587 456 com.sun.mail.smtp.SMTPTransport trans = new com.sun.mail.smtp.SMTPTransport(session, urln); //trans.setStartTLS(true);; com.sun.mail.smtp.SMTPTransport.send(msg); trans.close(); Transport.send(msg); LASTERROR = "Success."; return true; } catch (MessagingException mex) { LASTERROR = mex.getMessage(); System.out.println("Allwyn last error "+mex.getMessage()); return false; } } private class SMTPAuthenticator extends Authenticator { public PasswordAuthentication getPasswordAuthentication() { String username = "anathor@gmail.com"; String password = PASSWORD; return new PasswordAuthentication(username, password); } } }
i,m faced this error...............
Allwyn last error Could not connect to SMTP host: localhost, port: 25
Not sending - Could not connect to SMTP host: localhost, port: 25
help me