Twilio状态回调网址

时间:2018-03-07 11:23:37

标签: android twilio

我正在研究用java构建的语音呼叫应用程序,我需要知道在挑选,拒绝或编译时的呼叫状态。我的服务器端是在java中。

我在twilio docs中提到调用时设置了状态回调网址。我的问题是在该代码中添加哪个url并且我还需要为该端点url添加功能。

那个功能中的代码应该是什么,比如打印呼叫状态所需的参数

com.twilio.type.Client clientEndpoint = new com.twilio.type.Client("client:" + to);
        PhoneNumber from = new PhoneNumber(CALLER_ID);
        // Make the call
        Call call = Call.creator(clientEndpoint, from, uri).setMethod(HttpMethod.POST)
                .setStatusCallbackMethod(HttpMethod.POST)
                .setStatusCallback(URI.create("https://57fb8b2c.ngrok.io/events"))
                .setStatusCallbackEvent(
                        Arrays.asList(Call.Event.ANSWERED.toString(), Call.Event.COMPLETED.toString(),
                                Call.Event.INITIATED.toString(), Call.Event.RINGING.toString()))
                .create(client);

        // Print the call SID (a 32 digit hex like CA123..)
        System.out.println(call.getSid() + "//" + call.getStatus());
        return call.getSid();

1 个答案:

答案 0 :(得分:0)

Twilio开发者传道者在这里。

我不是特别擅长Java,但我可以帮助您设置statusCallback URL时会发生什么。

对于您设置为statusCallbackEvent的每个事件,当呼叫进入该状态时,您将收到对statusCallback网址的HTTP请求。

您需要实现一个端点(在您的情况下,路径为/events,因为您正在设置的URL)可以接收这些传入的HTTP请求。

当Twilio发出状态回叫请求时,它包含all the regular webhook parameters,例如CallSid,因此您可以将请求与已知的呼叫sid绑定。

请求还将包含一些其他参数,最重要的是在您的情况下为CallStatus参数。该值将是排队,启动,响铃,正在进行,忙碌,失败或无应答之一。有more on what they mean here

我希望有所帮助。