使用java在twilio中运行双录制代码时遇到问题

使用java在twilio中运行双录制代码时遇到问题,java,twilio-api,Java,Twilio Api,我正试图从twilio双通道录音机中打包录音,但我得到了一个错误 严重:Servlet[dispatcher]的Servlet.service()在上下文中 路径[/control api explorer]引发异常[请求处理] 失败;嵌套异常为com.twilio.exception.ApiException: 请求的资源没有资格记录]根本原因为 我试图调试代码,但得到的错误是-21220无效 呼叫状态您试图对一个未成功的呼叫执行实时操作 正在进行中。无法录制或删除已完成的呼叫 重定向 帮助提

我正试图从twilio双通道录音机中打包录音,但我得到了一个错误

严重:Servlet[dispatcher]的Servlet.service()在上下文中 路径[/control api explorer]引发异常[请求处理] 失败;嵌套异常为com.twilio.exception.ApiException: 请求的资源没有资格记录]根本原因为

我试图调试代码,但得到的错误是-21220无效 呼叫状态您试图对一个未成功的呼叫执行实时操作 正在进行中。无法录制或删除已完成的呼叫 重定向


帮助提供一个解决方案,使用双通道进行实时录制,无需twiml的拨号动词

我的录音也有问题,尽管我检查了通话是否正在进行,但还是出现了21220错误

我可以通过添加3秒的超时来修复错误并记录电话

setTimeout(函数(){twilio_phone.recordPhoneCall(CallSid);},3000);

另一种方法是检查callSid是否已加入会议。Twilio对前端和后端进行API调用,以获取正在进行的会议的参与者列表。如果呼叫已成功加入会议,If将准备打开录音

Twilio.init(account,auth);
              System.out.println("Recording....");
              Recording recording = Recording.creator(callSid)
              .setRecordingStatusCallback(URI.create("https://api.twilio.com/2010-04-01/Accounts/"+account+"/Calls/"+callSid+"/Recordings.json"))
    .setRecordingStatusCallbackEvent(Promoter.listOfOne(CALL_STATUS_CALLBACK_EVENTS.get(0).toString()))
        .setRecordingChannels("dual").create();
             System.out.println("Recording Completed....");