2

我正在尝试使用试用帐户使用 Twilio 服务拨打电话号码。

我在这里关注 Java 示例:https ://www.twilio.com/docs/quickstart/java/rest/call-request

我已经使用我的 API 凭据、提供的 Twilio 编号、目标编号和 TwiML 指令 URL 配置了该示例。

当我运行 MakeCall 类时,目标号码被呼叫。

当我接听电话时,我收到“试用帐户”消息,然后它要求我按任意键。当我按下一个键时,呼叫被挂断。

正如我所看到的,Twilio 没有调用 TwiML 指令 url。

我也使用测试凭证进行了测试,但没有成功。

关于为什么不调用 TwiML 指令 url 的任何想法?

4

1 回答 1

1

使用twilio-java 帮助程序库和您上面提到的文档中的以下代码:

然后我们实例化一个新的客户端对象,将请求方法设置为“POST”,在关联数组中填写“From”、“To”和“Url”参数,然后向 Twilio 发出请求!

除了您的 URL 的任何潜在问题...您是否还在控制台中配置您的 twilio 号码时将请求方法设置为 POST ?

import java.util.Map;
import java.util.HashMap;

import com.twilio.sdk.TwilioRestClient;
import com.twilio.sdk.TwilioRestException;
import com.twilio.sdk.resource.instance.Account;
import com.twilio.sdk.resource.instance.Call;
import com.twilio.sdk.resource.factory.CallFactory;

public class MakeCall {

    public static final String ACCOUNT_SID = "AC123";
    public static final String AUTH_TOKEN = "456bef";

    public static void main(String[] args) throws TwilioRestException {

        TwilioRestClient client = new TwilioRestClient(ACCOUNT_SID, AUTH_TOKEN);
        Account mainAccount = client.getAccount();
        CallFactory callFactory = mainAccount.getCallFactory();
        Map<String, String> callParams = new HashMap<String, String>();
        callParams.put("To", "5105551212"); // Replace with your phone number
        callParams.put("From", "(510) 555-1212"); // Replace with a Twilio number
        callParams.put("Url", "http://demo.twilio.com/welcome/voice/"); // Configure your own URL with TwiML instructions using TwiML Bins
        // Make the call
        Call call = callFactory.create(callParams);
        // Print the call SID (a 32 digit hex like CA123..)
        System.out.println(call.getSid());
    }
}
于 2016-08-30T16:55:31.193 回答