Send SMS using Sinch (Android)

I try to send SMS using Sinch, but I get 404 and 500 errors from the server.

I read the Sinch documentation and my code follows the examples. Is something missing?

You can see my code below. It crashes when I try to read an InputStream.

 public static boolean sendSMS(String message) {

        try {
            String phoneNumber = "00351961234567";
            URL url = new URL("https://messagingapi.sinch.com/v1/sms/ " + phoneNumber);
            HttpURLConnection connection = (HttpURLConnection) url.openConnection();
            connection.setDoOutput(true);
            connection.setRequestMethod("POST");
            connection.setRequestProperty("Content-Type", "application/json");
            String userCredentials = "application\\" + Constants.SINCH_APP_KEY + ":" + Constants.SINCH_APP_SECRET;

            byte[] encoded = Base64.encodeBase64(userCredentials.getBytes());
            String basicAuth = "Basic " + new String(encoded);
            connection.setRequestProperty("Authorization", basicAuth);

            String postData = "{\"From\":\"00351913470050\" \"Message\":\"" + message + "\"}";
            OutputStream os = connection.getOutputStream();
            os.write(postData.getBytes());
            int status = connection.getResponseCode();

            StringBuilder response = new StringBuilder();
            InputStreamReader is = new InputStreamReader(connection.getInputStream());
            BufferedReader br = new BufferedReader(is);
            String line;
            while ( (line = br.readLine()) != null)
                response.append(line);
            br.close();
            os.close();

            Log.i("SMS", response.toString());

            return true;
        } catch (IOException e) {
            e.printStackTrace();
        }

        return false;
    }
+4
source share
1 answer

All countries that we support are now on the white list. And you should not have this problem

+1
source

All Articles