我正在我的应用程序中实现IVR 呼叫。我在公共服务器上托管的语音 xml 代码如下。
我已按照 Nexmo 网站上给出的所有步骤进行操作,甚至获得状态码 =0表示成功,但我没有接到任何电话。知道我在哪里弄错了吗?
<?xml version="1.0" encoding="UTF-8"?>
<vxml version = "2.1" >
<menu dtmf="true">
<property name="inputmodes" value="dtmf"/>
<prompt>
For sales press 1, For support press 2.
</prompt>
<choice dtmf="1" next="#sales"/>
<choice dtmf="2" next="#support"/>
</menu>
<form id="sales">
<block>
<prompt>
Please wait while we transfer the call
</prompt>
</block>
<transfer name="MyCall" dest="tel:+4400000001" bridge="true" connecttimeout="20s"/>
</form>
<form id="support">
<block>
<prompt>
Please wait while we transfer the call
</prompt>
</block>
<transfer name="MyCall" dest="tel:+4400000002" bridge="true" connecttimeout="20s"/>
</form>
</vxml>
对于 IVR 呼叫,我使用了以下代码片段
if(id == R.id.action_call){
CallRequest request=new CallRequest();
request.setApiKey(ApiConfig.NEXMO_KEY);
request.setApiSecret(ApiConfig.NEXMO_SECRET);
request.setTo("919582455283");
request.setAnswerUrl(ApiConfig.ANSWER_URL);
Toast.makeText(MainActivity.this,"Initiating call...",Toast.LENGTH_LONG).show();
App.getRestClient().doMakeCall(new RequestCallback<CallResponse>() {
@Override
public void onRestResponse(Exception e, CallResponse result) {
if (e==null){
Toast.makeText(MainActivity.this,result.toString(),Toast.LENGTH_LONG).show();
}else {
Toast.makeText(MainActivity.this,e.getMessage(),Toast.LENGTH_LONG);
}
}
}, Constants.CALL_BASE_URL,request);
return true;
}
我进来了SUCCESS
,CallResponse
但没有接到任何电话。