Reputation: 89
I am trying to send an SMS using Sinch but I am getting 404 and 500 errors from the server.
I read Sinch documentation and my code matches the examples. Is there something missing?
You can see my code below. It crashes when I'm trying to read the 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;
}
Upvotes: 4
Views: 583
Reputation: 2703
All countries that we support are now whitelisted. And you should not have this problem
Upvotes: 1