【问题标题】:how do I get a Twilio SID?如何获得 Twilio SID?
【发布时间】:2016-11-07 08:44:05
【问题描述】:

question on dialing out with Twilio 引起了我的注意,尤其是:

capability.allowClientOutgoing("APf5250942ec073c9d08848990cbc0ff5e");

看着sample code

// Install the Java helper library from twilio.com/docs/java/install
import com.twilio.sdk.TwilioRestClient;
import com.twilio.sdk.TwilioRestException;
import com.twilio.sdk.resource.instance.Application;

public class Example { 

  // Find your Account Sid and Token at twilio.com/user/account
  public static final String ACCOUNT_SID = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
  public static final String AUTH_TOKEN = "your_auth_token";

  public static void main(String[] args) throws TwilioRestException {
    TwilioRestClient client = new TwilioRestClient(ACCOUNT_SID, AUTH_TOKEN);

    // Get an object from its sid. If you do not have a sid,
    // check out the list resource examples on this page
    Application app = client.getAccount().getApplication("AP2a0747eba6abf96b7e3c3ff0b4530f6e");
    System.out.println(app.getSmsUrl());

  }
}

这不是很清楚。 ACCOUNT_SIDAUTH_TOKEN 很容易复制/粘贴。我在哪里以及如何获取要发送的字符串?

Javadocs说:

getApplication

public Application getApplication(String sid)

Get a given application instance by sid

Parameters:
    sid - The 34 character sid starting with AP

这让我回到了在哪里以及如何获取 SID 以发起呼叫。

【问题讨论】:

    标签: java rest asp.net-web-api twilio voip


    【解决方案1】:

    询问的应用程序 ID 是 TwiML 应用程序 ID。这些可以通过浏览器https://www.twilio.com/console/voice/dev-tools/twiml-apps/add 手动创建,也可以使用https://www.twilio.com/docs/api/rest/applications#list-post 中所述的Twilio REST API 以编程方式创建。

    主要是应用 id 将 2 个 url 关联:语音和消息回调 url 与您的应用程序。这些是 Twilio 在获取新事件或需要信息时尝试发出请求的应用程序 URL。这些网址应该返回TwiML

    【讨论】:

      【解决方案2】:

      临时 SID 是 in the portal for testing。但是,this kluge executes 通过生成具有新 SID 的新应用程序:

      private void createApplication(TwilioRestClient client, String accountSID, String authToken, String fromNumber, String toNumber) {
          log.info("createApplication..");
          List<NameValuePair> params = new ArrayList<NameValuePair>();
          params.add(new BasicNameValuePair("FriendlyName", "Phone Me"));
          params.add(new BasicNameValuePair("VoiceUrl", "http://demo.twilio.com/docs/voice.xml"));
          params.add(new BasicNameValuePair("VoiceMethod", "GET"));
          ApplicationFactory appFactory = client.getAccount().getApplicationFactory();
          Application app = null;
          try {
              app = appFactory.create(params);
          } catch (TwilioRestException ex) {
              Logger.getLogger(Twilio.class.getName()).log(Level.SEVERE, null, ex);
          }
          String sid = app.getSid();
          log.info(sid);
          log.info("name\n" + app.getFriendlyName());
          log.info("sms url\n" + app.getSmsUrl());
          log.info("voice url\n" + app.getVoiceUrl());
          makeCall(client, accountSID, authToken, fromNumber, toNumber, sid);
      }
      

      【讨论】:

        猜你喜欢
        • 2015-10-31
        • 1970-01-01
        • 2019-05-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-02-03
        • 1970-01-01
        相关资源
        最近更新 更多