如何使用VoiceResponse拨打电话?特威里奥

时间:2018-09-09 18:32:29

标签: java twilio

我想使用VoiceResponse拨打电话以获取有关通话工作方式的所有信息,但是我似乎找不到如何生成URI以便通话使用(因为它需要电话号码,电话号码, Call.creator方法中的URI)

                StringBuilder messageB = new StringBuilder();
                for(int i = 2; i < input.split(" ").length; i++) {
                    messageB.append(" " + input.split(" ")[i]);
                }

                Say say = new Say.Builder(messageB.toString().replace(" ", "%20")).voice(Say.Voice.POLLY_JUSTIN).build();
                Record recording = new Record.Builder().build();
                Pause pause = new Pause.Builder().length(3).build();
                TwiML response = new VoiceResponse.Builder().say(say).record(recording).pause(pause).build();

                String Url = "http://twimlets.com/message";
                Url = Url + "?Message%5B0%5D=" + messageB.toString();

                Call call = Call.creator(
                        new PhoneNumber("+" + input.split(" ")[1]),
                        new PhoneNumber("+xxxxxxxxxxx"),
                        URI.create(Url))
                        .create();
                System.out.println("Call ID: " + call.getSid());

                System.out.println(Url);

1 个答案:

答案 0 :(得分:0)

这里是Twilio开发人员的传播者。

向Twilio发起API调用时,不能使用VoiceResponse

相反,您需要设置一个Web应用程序,以响应来自Twilio的传入HTTP(webhook)请求。通话接通后,Twilio将对您作为请求的一部分发送的URL发出请求,此时您可以使用VoiceResponse构建并返回所需的响应。

您可能会发现按照我们的教程之一来更好地理解这一点很有用。这是building a click to call system with Java上的一个。

让我知道这是否有帮助。