0

The following code is to send sms in JAVA language,

import java.net.*;
import java.io.*;
import java.util.Scanner;

public class site2sms
{
    //Replace your site2sms username and password below
    static final String _userName = "username";
    static final String _password = "password";
    static final String _url = "http://smsapi.cikly.in/index.php";  
    //static final String _url = "http://smsapi.cikly.in/index.php";
    //static final String _url = "http://www.site2sms.com/user/send_sms_next.asp";
    static final String charset = "UTF-8";

    //to build the query string that will send a message
    private static String buildRequestString(String targetPhoneNo, String message) throws UnsupportedEncodingException
    {
        String [] params = new String [5];
        params[0] = _userName;
        params[1] = _password;
        params[2] = message;
        params[3] = targetPhoneNo;
        params[4] = "site2sms";

        String query = String.format("uid=%s&pwd=%s&msg=%s&phone=%s&provider=%s",
        URLEncoder.encode(params[0],charset),
        URLEncoder.encode(params[1],charset),
        URLEncoder.encode(params[2],charset),
        URLEncoder.encode(params[3],charset),
        URLEncoder.encode(params[4],charset)
        );
    return query;
    }

    public static void sendMessage(String reciever, String message) throws Exception
    {

        System.out.println("hi!hello");
        //To establish the connection and perform the post request
        URLConnection connection = new URL(_url + "?" + buildRequestString(reciever,message)).openConnection();
        connection.setRequestProperty("Accept-Charset", charset);

        //This automatically fires the request and we can use it to determine the response status
        InputStream response = connection.getInputStream();
        BufferedReader br = new BufferedReader(new InputStreamReader(response));
        //System.out.println(br);

        System.out.println(br.readLine());
    }

    public static void main(String [] args) throws Exception
    {
        System.out.println("enter Mobile No:");
        Scanner scanIn = new Scanner(System.in);

        String testPhoneNo = scanIn.nextLine();
        scanIn.close();            
        String testMessage = "Sending Messages From java is not too hard";
        sendMessage(testPhoneNo,testMessage);
    }
} 

when I run the program, there is no compile error and also no runtime error, but message is not delivered to respective number.

Pls help me, any suggestion can be accepted.

Thanks and Regards,

user27
  • 146
  • 1
  • 1
  • 8
  • What is the question? – BackSlash May 02 '13 at 11:10
  • i need to send sms message using java through sms gateway like way2sms or site2sms – user27 May 02 '13 at 11:13
  • He asks: "What is the question?" You answer with :"I need to do x" Thats neither an answer to his question, nor a question by itself. Please edit your question so it is one – LionC May 02 '13 at 11:21
  • ok, I am not able to deliver sms from above program.So I just want to know is there any error in the program, or for the alternate solution. – user27 May 02 '13 at 11:31

1 Answers1

2

It is written in comments in your class : Replace your site2sms username and password. I guess you have to subsrcibe for an account in smsapi.cikly.in

javadev
  • 1,639
  • 2
  • 17
  • 35