帮忙看看这代码是什么语言?
一个ivr简单的流程代码
#function PlayRoundSMS
#function main
#declare SR sCode
#declare SR Path
main
{
:stWait
Connect(0) -> stAllocResource
Connect -> stAllocResource
:stAllocResource
[ setvoxformat 8000,4]
[ ClearDTMF ]
[ AllocMediaDevice 1 ]
AllocResourceOK -> stSetMandarin
AllocResourceFail -> stExit
:stSetMandarin
[ EnableCall 0]
[ SetLang 1 ]
-> stBillBegin
:stBillBegin
[ BillBegin 1,0,$ServiceItemNo ]
Verify(0) -> stWelcome
Verify(-1) -> stExit
:stWelcome
[ ClearDTMF]
[ SetDTMF "?"]
[ PlayFile ".\vox\jytip01.vox" ] //播放欢迎词。
StopPlayBack -> stStart
DialTerminate -> stStart
Failed->stExit
Bargein ->stExit
:stStart
[ ClearDTMF]
[ SetDTMF "?"]
[ PlayFile ".\vox\jytip02.vox" ] //播放按键提示。按1进入每日一句按2进入经典对话按3进入慢速英语按4进入英文歌曲按5进入名人演讲按6进入英文交友按7进入人工咨询按8进入公司简介.
StopPlayBack -> stChoose
DialTerminate -> stChoose
Failed->stExit
Bargein ->stExit
:stChoose
[ SETDTMF "?"]
[ DIGIT 5 ]
StopDigits('1') -> stKey1 //按1每日一句
StopDigits('2') -> stKey2 //按2进入经典对话
StopDigits('3') -> stKey3 //按3慢速英语
StopDigits('4') -> stKey4 //按4英文歌曲
StopDigits('5') -> stKey5 //按5名人演讲
StopDigits('6') -> stKey6 //按6英文交友
StopDigits('7') -> stKey7 //按7人工咨询
StopDigits('8') -> stKey8 //按8公司简介
StopDigits -> stStart
TimeOut -> stStart
Failed ->stExit
Bargein ->stExit
:stKey1 //
[ Assign Path,".\vox\1"]
[ Assign sCode,"1"]
[ CallFunc &PlayRoundSMS ]
Returned(3)->stKey1
Returned(4)->stKey2
Returned(5)->stKey3
Returned(6)->stKey4
Returned(7)->stKey5
Returned(8)->stKey6
Returned(9)->stKey7
Returned(10)->stKey8
Returned(-1)->stStart
Returned(1)->stStart
//----------------------------------------------
:stKey2 //
[ Assign Path,".\vox\2"]
[ Assign sCode,"2"] //
[ CallFunc &PlayRoundSMS ]
Returned(3)->stKey1
Returned(4)->stKey2
Returned(5)->stKey3
Returned(6)->stKey4
Returned(7)->stKey5
Returned(8)->stKey6
Returned(9)->stKey7
Returned(10)->stKey8
Returned(-1)->stStart
Returned(1)->stStart
//-------------------------------------------
:stKey3 //
[ Assign Path,".\vox\3"]
[ Assign sCode,"3"] //
[ CallFunc &PlayRoundSMS ]
Returned(3)->stKey1
Returned(4)->stKey2
Returned(5)->stKey3
Returned(6)->stKey4
Returned(7)->stKey5
Returned(8)->stKey6
Returned(9)->stKey7
Returned(10)->stKey8
Returned(-1)->stStart
Returned(1)->stStart
//-------------------------------------------
:stKey4 //
[ Assign Path,".\vox\4"]
[ Assign sCode,"4"] //
[ CallFunc &PlayRoundSMS ]
Returned(3)->stKey1
Returned(4)->stKey2
Returned(5)->stKey3
Returned(6)->stKey4
Returned(7)->stKey5
Returned(8)->stKey6
Returned(9)->stKey7
Returned(10)->stKey8
Returned(-1)->stStart
Returned(1)->stStart
//-------------------------------------------
:stKey5 //
[ Assign Path,".\vox\5"]
[ Assign sCode,"5"] //
[ CallFunc &PlayRoundSMS ]
Returned(3)->stKey1
Returned(4)->stKey2
Returned(5)->stKey3
Returned(6)->stKey4
Returned(7)->stKey5
Returned(8)->stKey6
Returned(9)->stKey7
Returned(10)->stKey8
Returned(-1)->stStart
Returned(1)->stStart
//-------------------------------------------
:stKey6 //
[ ClearDTMF]
[ SetDTMF "?"]
[ PlayFile ".\vox\6\introduce6.vox" ]//英文交友,并提示业务开发中按任何键返回总提示。
StopPlayBack -> stStart
DialTerminate -> stStart
Failed->stExit
Bargein ->stExit
//-------------------------------------------
:stKey7 //
[ ClearDTMF]
[ SetDTMF "?"]
[ PlayFile ".\vox\7\introduce7.vox" ]//人工咨询,并提示业务开发中按任何键返回总提示。
StopPlayBack -> stStart
DialTerminate -> stStart
Failed->stExit
Bargein ->stExit
//-------------------------------------------
:stKey8 //
[ ClearDTMF]
[ SetDTMF "?"]
[ PlayFile ".\vox\8\introduce8.vox" ]//公司简介,并提示按任何键返回。
StopPlayBack -> stStart
DialTerminate -> stStart
Failed->stExit
Bargein ->stExit
:stExit
[ Return 0 ]
}
PlayRoundSMS//相关栏目的一个子函数.
{
:stWait
[ClearDTMF] //我们为您准备了10条精彩的内容,请按0-9号键选择收听!按*或者#返回。
[SetDTMF "?"]
[PlayFile ".\vox\jytip03.vox" ]
StopPlayBack -> stPlayDigit
DialTerminate -> stPlayDigit
Failed -> stAssignIR2
Bargein ->stExit
:stPlayDigit
[ DIGIT 5 ]
StopDigits('*') -> stAssignIR1 //返回
StopDigits('#') -> stAssignIR1 //返回
StopDigits -> stPlayAssign
TimeOut-> stWait
Failed ->stAssignIR2
Bargein ->stExit
:stPlayAssign
[Assign IR3,IR0 ]
[Assign SR5,Path]
[StrCat SR5,sCode]
[StrCat SR5,"0"]
[StrCat SR5,SR0 ]
[StrCat SR5,".vox"]
->stPlayVox
:stPlayVox
[ClearDTMF] //提示音
[SetDTMF "?"]
[PlayFile SR5 ]
StopPlayBack -> stPlayOk
DialTerminate -> stDigit
Failed -> stAssignIR2
Bargein ->stExit
:stPlayOk
[ClearDTMF] //信息播放完毕,收听上一条请按1键,重听本条请按2号键,收听下一条请按3键,返回子栏目提示请按*号。
[SetDTMF "?"]
[PlayFile ".\vox\jytip04.vox" ]
StopPlayBack -> stDigit
DialTerminate -> stDigit
Failed -> stAssignIR2
Bargein ->stExit
:stDigit
[ DIGIT 3 ]
StopDigits('1') -> stPireceVox //听上一条语音
StopDigits('2') -> stPlayVox //重听
StopDigits('3') -> stNextVox //听下一条语音
StopDigits('*') -> stWait //返回子栏目的提示。
StopDigits -> stPlayOk
TimeOut-> stPlayOk
Failed ->stAssignIR2
Bargein ->stExit
:stPireceVox
[Assign SR5,Path ]
[StrCat SR5,sCode ]
[Dec IR3 ]
[IToS IR3 ]
[StrLen SR0 ]
[Equal IR0,1]
Passed ->stPireceVox1
Failed ->stPireceVox2
:stPireceVox1
[StrCat SR5,"0"]
->stPireceVox2
:stPireceVox2
[StrCat SR5,SR0]
[StrCat SR5,".vox"]
[ GetFileTime SR5 ]
[ EQUAL IR0,-1 ]
Passed -> stAssignFirst
Failed -> stPlayVox
:stNextVox
[Assign SR5,Path ]
[StrCat SR5,sCode ]
[Inc IR3 ]
[IToS IR3 ]
[StrLen SR0 ]
[Equal IR0,1]
Passed ->stNextVox1
Failed ->stNextVox2
:stNextVox1
[StrCat SR5,"0"]
->stNextVox2
:stNextVox2
[StrCat SR5,SR0]
[StrCat SR5,".vox"]
[GetFileTime SR5 ]
[Equal IR0,-1 ]
Passed -> stAssignEnd
Failed -> stPlayVox
:stAssignFirst
[Assign SR1,".\vox\jytip05.vox"] //已是最上一条信息,按1进入每日一句按2进入经典对话按3进入慢速英语按4进入英文歌曲按5进入名人演讲按6进入英文交友按7进入人工咨询按8进入公司简介.
->stPlayEnd
:stAssignEnd
[Assign SR1,".\vox\jytip06.vox"] //已是最后一条信息,请重新选择收听!按1进入每日一句按2进入经典对话按3进入慢速英语按4进入英文歌曲按5进入名人演讲按6进入英文交友按7进入人工咨询按8进入公司简介.
->stPlayEnd
:stPlayEnd
[ClearDTMF]
[ SetDTMF "?" ]
[ playfile SR1]
StopPlayBack ->stEndDigit
DialTerminate ->stEndDigit
Failed ->stAssignIR2
Bargein ->stExit
:stEndDigit
[ DIGIT 3 ]
StopDigits('1') -> stAssignIR3 //
StopDigits('2') -> stAssignIR4 //
StopDigits('3') -> stAssignIR5 //
StopDigits('4') -> stAssignIR6 //
StopDigits('5') -> stAssignIR7 //
StopDigits('6') -> stAssignIR8 //
StopDigits('7') -> stAssignIR9 //
StopDigits('8') -> stAssignIR10 //
StopDigits('*') -> stAssignIR1 //
StopDigits -> stPlayEnd
TimeOut-> stPlayEnd
Failed ->stExit
Bargein ->stExit
:stAssignIR0 //
[ Assign IR1,0]
->stExit
:stAssignIR1 //返回上一级
[ Assign IR1,1]
->stExit
:stAssignIR2 //错误
[ Assign IR1,2]
->stExit
:stAssignIR3 //收听1
[ Assign IR1,3]
->stExit
:stAssignIR4 //收听2
[ Assign IR1,4]
->stExit
:stAssignIR5 //收听3
[ Assign IR1,5]
->stExit
:stAssignIR6 //收听4
[ Assign IR1,6]
->stExit
:stAssignIR7 //收听5
[ Assign IR1,7]
->stExit
:stAssignIR8 //收听6
[ Assign IR1,8]
->stExit
:stAssignIR9 //收听7
[ Assign IR1,8]
->stExit
:stAssignIR10 //收听8
[ Assign IR1,10]
->stExit
:stExit
[ Return IR1 ]
}