长时间潜伏,第一次问问。此任务似乎相对简单:创建一个VoiceXML文档,该文档将触发脚本更改文本文档,然后通过口头命令运行游戏。
相关的VoiceXML:
form_for [@list, @item]
在if / else标记中,总共有5个条件低于初始条件。当电话号码被呼叫它要求你给出你的命令时,它正确地进入条件分支,然后说明tank.php文件"无法编译"并断开连接。 技巧是这个语言命令确实改变了文本文件,php编译/运行正常。当我拿出'提交'标签,文件没有错误。无论出于何种原因,这个编译错误'从php似乎导致voiceXML表单过早断开连接。
完整的php文档:
<!--Encoding details-->
<?xml version="1.0" encoding="UTF-8" ?>
<vxml version="2.1" xmlns="http://www.w3.org/2001/vxml">
<if cond="command =='t1 go'">
<submit next="tank.php?command=t1%20go" method="get" namelist="command"/>
</if>
我已经在这个特定问题上工作了5个小时。你的建议可以拯救我的理智。
答案 0 :(得分:0)
分辨率!
Voxeo(我正在使用的服务)提供比声音命令更彻底的调试器。感谢上帝。
它向我扔了这样的东西(具体内容并不重要)
List
重要的是这个错误没有出现在邮递员或PHP错误中,因为正如我所料,php本身并不是问题,而是问题的方式。 vxml解释它是。投掷&#39; vxml&#39; PHP脚本周围的标签(保持.php结束)和程序是100%快乐,我花了近9个小时努力找到两行更改。
希望这可以帮助别人,欢呼!
新PHP:
Collection
答案 1 :(得分:0)
“submit”是对有效VoiceXML文档的请求;见the official specification。通过在文档周围放置“vxml”标记,您创建了一个足够合法的VoiceXML脚本,解释器可以读取和解释。
就个人而言,在这种情况下,我会使用"data" tag available in VoiceXML 2.1并得到Voxeo的支持。返回一个最小的XML文档;忽略它;继续使用漂亮,干净,定义明确的退出处理您的VoiceXML。