【问题标题】:send SMS using Twilio android使用 Twilio android 发送短信
【发布时间】:2017-03-07 06:20:22
【问题描述】:

我正在尝试使用 Twilio 发送短信。我正在使用post 中给出的代码。但我得到的响应代码是 201 而不是 200。响应 <?xml version='1.0' encoding='UTF-8'?> 也很奇怪。代码或凭据有问题吗?

 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);

        }






    }

【问题讨论】:

标签: android twilio-api


【解决方案1】:

请检查以下所有内容:

201 响应

  1. “收件人”电话号码是否正确?总是值得检查...
  2. “收件人”电话是否有接收功能?如果没有,请尝试移动到某个位置 接收并重试。
  3. “收件人”电话是否接收从其他来源发送的 SMS 消息? 尝试使用另一部手机向“收件人”手机发送测试消息。
  4. 您要发送的电话是否在国际漫游? Twilio 是 目前无法支持 SMS 的国际漫游。
  5. “收件人”电话号码是否在该国家/地区的“请勿联系”列表中 还是承运人?例如,印度有一个特别严格的国家 Do 不是联系人列表。 “收件人”号码将需要从任何 在它可以接收来自 Twilio 的 SMS 消息之前,请勿联系列表。
  6. 您发送短信的国家是否有特殊的 发送短信必须使用哪个前缀?墨西哥和 阿根廷就是这样的例子。
  7. 结束号码的提供者是否将其过滤掉了?某些运营商将 发送大量短信的黑名单号码。尝试发送 来自另一个 Twilio 长代码的相同消息。如果正确 收到,您可能遇到了运营商的音量阈值。 查看此常见问题解答了解更多信息。
  8. 尝试多次。多次尝试没有坏处。试 再次通常是向自己和帮助的人证明的最佳方式 你说你做的一切都是正确的。一定要抄下来 每次尝试未到达的 SMS 消息 SID。

【讨论】:

    【解决方案2】:

    当我在 URL 后添加“.json”时,我得到了响应。现在即使响应代码是 201,响应也会到来。

    【讨论】:

      猜你喜欢
      • 2018-06-03
      • 2015-08-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-26
      • 2014-05-30
      • 1970-01-01
      相关资源
      最近更新 更多