0

基于 Twilio 的人类/非人类检测 - 我正在尝试通过代码检测是否有人或机器人接听了电话,如下所示

HashMap<String, String> params = new HashMap<String, String>();
params.put("From", myfromnumber);
params.put("To", tonumber);
params.put("Url", Url);
params.put("Method", "POST");
params.put("IfMachine", "Continue");

CallFactory callFactory = account.getCallFactory();
Call call = callFactory.create(params);
out.println("<p>Call status: " + call.getStatus() + "</p>");

if (machine.equals(request.getParameter("AnsweredBy")){
    System.out.println("Its machine");
} else{
    System.out.println("Not Machine");
};

出于某种原因,request.getParameter("AnsweredBy")它总是以 NULL 的形式出现,如果我理解它应该是“机器”或“人类”。

请指教。

谢谢

4

1 回答 1

1

该参数在通过 REST API 创建调用AnsweredBy发出的 webhook 请求中传递(请查看此处的文档)。在这种情况下,您已经创建了具有正确参数的对象,这样就成功了一半。callIfMachine

然后,在一个单独的(Servlet?)请求处理程序中Url,您可以访问request.getParameter("AnsweredBy"). 如果在那种情况下没有定义,我们需要在上面的代码片段之外查看您的实际代码。

希望这有帮助,-凯文

于 2014-01-13T23:30:41.317 回答