2017-03-07 4 views
0

Ich versuche sms mit Twilio zu senden. Ich verwende den in dieser post angegebenen Code. Aber ich bekomme Antwort-Code als 201 statt 200. Auch die Antwort <?xml version='1.0' encoding='UTF-8'?> ist seltsam. Gibt es einen Fehler im Code oder in den Anmeldeinformationen?SMS senden mit Twilio android

private class AsyncTaskRunner extends AsyncTask<String, String, String> { 
 

 
     private String resp; 
 

 

 
     @Override 
 
     protected String doInBackground(String... params) { 
 

 
      try{ 
 
       String twilioSID="XYZ"; 
 
       String twilioSecret="ABC"; 
 

 

 

 
       String urlStr = "https://"+twilioSID+":"+twilioSecret+"@api.twilio.com/2010-04-01/Accounts/"+twilioSID+"/SMS/Messages"; 
 

 
       HttpClient httpclient = new DefaultHttpClient(); 
 
       HttpPost httppost = new HttpPost(urlStr); 
 
       String base64EncodedCredentials = "Basic " 
 
         + Base64.encodeToString(
 
         ("XYZ" + ":" + "ABC").getBytes(), 
 
         Base64.NO_WRAP); 
 

 

 
       httppost.setHeader("Authorization", base64EncodedCredentials); 
 

 

 
       List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(); 
 
       nameValuePairs.add(new BasicNameValuePair("From", "+12389234455")); 
 
       nameValuePairs.add(new BasicNameValuePair("To", "+918423664906")); 
 
       nameValuePairs.add(new BasicNameValuePair("Body", "Welcome to Twilio")); 
 

 
       httppost.setEntity(new UrlEncodedFormEntity(
 
         nameValuePairs)); 
 

 
       // Execute HTTP Post Request 
 
       HttpResponse response = httpclient.execute(httppost); 
 
       int status = response.getStatusLine().getStatusCode(); 
 
       System.out.println("sammy_response_code "+status); 
 
       HttpEntity entity = response.getEntity(); 
 
       if(entity != null){ 
 
        resp = EntityUtils.toString(entity); 
 
       } 
 

 

 
      }catch (Exception e){ 
 
       System.out.println("sammy_Exception "+e); 
 
      } 
 

 

 
      return resp; 
 
     } 
 

 
      @Override 
 
     protected void onPostExecute(String result) { 
 
      //pd.dismiss(); 
 
       System.out.println("sammy_response "+result); 
 

 
     } 
 

 

 

 

 

 

 
    }

+0

https://www.twilio.com/blog/2016/05/how-to-send-an-sms-from-android.html –

Antwort

0

Bitte überprüfen Sie alle unten:

201 Antwort

  1. Ist es die "To" Telefonnummer korrekt? Es ist immer eine Überprüfung wert ...
  2. Hat das "To" -Telefon Empfang? Wenn nicht, versuchen Sie, mit dem Empfang an einen Standort zu wechseln und versuchen Sie es erneut.
  3. Empfängt das "An" -Telefon SMS von anderen Quellen? Verwenden Sie ein anderes Telefon, um das "An" -Telefon mit einer Testnachricht zu versorgen.
  4. Ist das Telefon, das Sie an Roaming senden, international? Twilio ist derzeit nicht in der Lage, internationales Roaming für SMS zu unterstützen.
  5. Ist die „To“ Telefonnummer auf einer „nicht berühren“ -Liste für das Land oder Träger? Zum Beispiel hat Indien eine besonders strenge nationale Do Nicht Kontaktliste. Die "An" -Nummer muss von allen Kontaktlisten entfernt werden, bevor sie SMS-Nachrichten von Twilio empfangen können.
  6. Hat das Land, das Sie eine SMS-Nachricht senden, einen speziellen Präfix zu haben, die verwendet werden, um muss eine SMS zu senden? Mexiko und Argentinien sind Beispiele dafür.
  7. Hat der Provider der Endnummer ihn herausgefiltert? Bestimmte Carrier werden Blacklist Nummern, die eine hohe Anzahl von SMS senden. Versuchen Sie, die gleiche Nachricht von einem anderen Twilio langen Code zu senden. Wenn es korrekt empfangen wird, haben Sie wahrscheinlich einen Volume-Schwellenwert des Carriers gefunden. Lesen Sie diese FAQ für weitere Informationen.
  8. Versuchen Sie es mehrmals. Es schadet nicht, es mehrmals zu versuchen. Versuchen wieder ist oft der beste Weg, um sich selbst und denen zu helfen, Sie, dass Sie alles richtig machen. Achten Sie darauf, die SMS-Nachrichten-SIDs für jeden Versuch, der nicht eintrifft, zu kopieren.
0

bekam ich die Antwort, wenn ich „.json“ nach der URL hinzugefügt. Nun ist die Antwort kommt, auch wenn der Antwortcode ist 201.