|
|
ru.cisco- RU.CISCO --------------------------------------------------------------------- From : Љ®ўҐЄ® ‚ ¤Ё¬ 2:5020/175.2 01 Jul 2003 13:48:01 To : Alex Scherbakov Subject : Всем кто знает IVR 2 --------------------------------------------------------------------------------
AS> Проблема следующая:
AS> В момент разговора клиент может нажать комбинацию клавиш и вернуться в
AS> меню для новых действий (работает)
AS> Также если второй аббонент кладет трубку, должен осуществляться переход
AS> в меню. Работает на половину. Точнее из-за того что у меня активна
AS> комманда leg collectdigits на входящей ноге скрипт вылетает. А активна
AS> она остается из-за первого меню, т.е. из-за отслеживания нажатия
AS> комбинации. Как быть в таком случае?
С машиной состояний скорее всего попутал.
Дисконнект приходит здесь
set fsm(any_state,ev_disconnected) "act_HandleOutgoing CONNDESTROY"
proc act_HandleOutgoing { } {
global outgoingDisconnect
set incoming [infotag get leg_incoming]
set outgoing [infotag get leg_outgoing]
set leg_disc [infotag get evt_legs]
if { $leg_disc == $outgoing } {
#Тут отбой со стороны вызываемого абонента
connection destroy con_all
} else {
act_Cleanup
fsm setstate CALLDISCONNECT
}
}
Здесь дисконнект закончен
set fsm(CONNDESTROY,ev_destroy_done) "act_ConnDestroyed GETDEST"
proc act_ConnDestroyed { } {
leg disconnect leg_outgoing
init_perConnVars
act_GetDest
}
И с init_perConnVars, GETDEST пошли на act_GetDest
Приблизительно так.
--- ifmail v.2.15dev5
* Origin: FidoNet Online - http://www.fido-online.com (2:5020/175.2)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.cisco/3300c056344f.html, оценка из 5, голосов 10
|