import java.net.*;
import java.io.*;
public class SendSMS
{
ééééépublic static int solde(String apikey)
ééééé {
ééééééééééé try
ééééééééééé {
ééééééééééééééééé URL url = new URL("http://www.envoyersms.biz/api/v1/?method=credit&apikey=" + apikey);
ééééééééééééééééé HttpURLConnection conn = (HttpURLConnection)url.openConnection();
ééééééééééééééééé conn.setRequestMethod("GET");
ééééééééééééééééé conn.connect();
ééééééééééééééééé BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream()));
ééééééééééééééééé StringBuffer results = new StringBuffer();
ééééééééééééééééé String solde = br.readLine();
ééééééééééééééééé br.close();
ééééééééééééééééé return Integer.parseInt(solde);
ééééééééééé }
ééééééééééé catch (Exception exception)
ééééééééééé {
ééééééééééééééééé return 0;
ééééééééééé }
ééééé }
ééééé public static void send(String apikey, String number, String msg, String sender, String msg_id)
ééééé {
ééééééééééé try
ééééééééééé {
ééééééééééééééééé URL url = new URL("http://www.envoyersms.biz/api/v1/?method=send");
ééééééééééééééééé HttpURLConnection conn = (HttpURLConnection)url.openConnection();
ééééééééééééééééé String postBody = "apikey=" + URLEncoder.encode(apikey, "ISO-8859-1") + "&" +
éééééééééééééééééééééééééééééééééééé"number=" + URLEncoder.encode(number, "ISO-8859-1") + "&" +
éééééééééééééééééééééééééééééééééééé"message=" + URLEncoder.encode(msg, "ISO-8859-1") + "&" +
éééééééééééééééééééééééééééééééééééé"expediteur=" + URLEncoder.encode(sender, "ISO-8859-1") + "&" +
éééééééééééééééééééééééééééééééééééé"msg_id=" + URLEncoder.encode(msg_id, "ISO-8859-1");
ééééééééééééééééé conn.setRequestMethod("POST");
ééééééééééééééééé conn.setDoOutput(true);
ééééééééééééééééé OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
ééééééééééééééééé wr.write(postBody);
ééééééééééééééééé wr.flush();
ééééééééééééééééé wr.close();
ééééééééééééééééé conn.connect();
ééééééééééééééééé BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream()));
ééééééééééééééééé StringBuffer results = new StringBuffer();
ééééééééééééééééé String oneline;
ééééééééééééééééé while ((oneline = br.readLine()) != null)
ééééééééééééééééé {
ééééééééééééééééééééééé results.append(oneline);
ééééééééééééééééé }
ééééééééééééééééé br.close();
ééééééééééééééééé System.out.println(URLDecoder.decode(results.toString(), "ISO-8859-1"));
ééééééééééé }
ééééééééééé catch (Exception exception)
ééééééééééé {
ééééééééééééééééé System.out.println(exception.getMessage() + exception.getCause());
ééééééééééé }
ééééé }
ééééé public static void main(String args[])
ééééé {
éééééééééé if (args.length == 1 && (args[0].equals("?") || args[0].equals("--help")))
ééééééééééé {
ééééééééééééééééé System.out.println("Usage: java SendSMS [apikey] [number] [message] [exp] [msg_id]");
ééééééééééééééééé System.out.println("");
ééééééééééééééééé System.out.println("[apikey] = ApiKey ENVOYERSMS");
ééééééééééééééééé System.out.println("[number] = Le numéro du destinataire au format international");
ééééééééééééééééé System.out.println("[message] = Contenu de votre message (160 carracteres par SMS)");
ééééééééééééééééé System.out.println("[exp] = Le numéro de l'expéditeur (optionnel)");
ééééééééééééééééé System.out.println("[msg_id] = Identifiant du message (optionnel)");
ééééééééééé }
ééééééééééé else if (args.length == 0)
ééééééééééé {
ééééééééééééééééé String apikey = "Votre ApiKey";
ééééééééééééééééé //Recuperer le solde de son compte
ééééééééééééééééé Integer solde = SendSMS.solde(apikey);
ééééééééééééééééé System.out.println("Solde : " + solde);
ééééééééééééééééé // Envoyer un SMS
ééééééééééééééééé SendSMS.send(apikey, "33600000000", "Votre message", "envoyersms", "");
ééééééééééé }
ééééééééééé else if (args.length >= 4)
ééééééééééé {
ééééééééééééééééé String msg_id = (args.length == 5) ? args[4] : "";
ééééééééééééééééé String expediteur = (args.length >= 4) ? args[3] : "";
ééééééééééééééééé SendSMS.send(args[0], args[1], args[2], expediteur, msg_id);
ééééééééééé }
ééééé }
}