我希望使用Twilio在Java应用程序中进行出站呼叫。我发现的所有教程都使用了托管在URL上的静态TwiML文件。我还没有找到任何关于如何传递TwiML作为拨出电话参数的文档。
我在此链接中找到了这个,但它没有解释如何动态呈现TwiML:https://www.twilio.com/docs/guides/how-to-make-outbound-phone-calls-in-java#where-to-next
当然,用于进行出站呼叫的TwiML不需要像本例中那样是静态文件。您控制的服务器端Java代码可以动态呈现TwiML以用于出站呼叫。
我尝试过以下方法:
PhoneNumber to = new PhoneNumber(toPhone); // Replace with your phone number
PhoneNumber from = new PhoneNumber(fromPhone); // Replace with a Twilio number
TwiML twiml = new VoiceResponse.Builder()
.say(new Say.Builder(message).build())
.build();
Call call = Call.creator(to, from, twiml.toXml()).create(client);
虽然Call.creator()
有一些(PhoneNumber, PhoneNumber, String)
的重载方法,但它们都不会接受TwiML,也不接受XML。
如何使用TwiML在Java中进行出站呼叫? 感谢
答案 0 :(得分:2)
Twilio开发者传道者在这里。
您不能make an outbound call with Twilio并且可以直接传递您希望呼叫同时关注的TwiML。
当您拨打外拨电话时,您需要传递一个网址。该URL不必返回静态TwiML。如果要返回动态TwiML,则需要将调用的URL设置为可以使用TwiML响应请求的Web应用程序的URL。
如果你查看一些动态教程,它可能会让我更明显。 building an automated phone survey上的这个动态生成下一个问题并从响应中获取用户的输入。当呼叫连接时,此click to call implementation in Java也会动态生成<Dial>
。
让我知道这是否有帮助。