The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Помогите с TCL"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Маршрутизаторы CISCO и др. оборудование. (Public)
Изначальное сообщение [Проследить за развитием треда]

"Помогите с TCL"  
Сообщение от leveler (ok) on 28-Дек-06, 10:35 
Помогите с TCL. Ситуация такая. В ответ на звонок проигрывается приглашение выбрать пункт из меню нажатием цифры. Если выбираешь пункт, то в зависимости от того, что выбрали, проигрывается звуковой файл.
Всё вроде работает, но приглашение прервать нельзя. Нужно, чтобы оно проигралось до конца, только после этого нажать цифру. Если нажать раньше, то эффекта нет. Что не так?


proc init {} {
puts "\n proc Init start"
global param
set param(initialDigitTimeout) 7
set param(maxDigits) 1
set param(interruptPrompt) true
infotag set med_language_map 0 ru
infotag set med_location ru 0 tftp://ip.ip.ip.ip/tcl/ru/
infotag set med_location ru 1 tftp://ip.ip.ip.ip/tcl/ru/
infotag set med_language 0
puts "\n proc Init stop"
}

proc init_Vars { } {
puts "\n proc Vars start"
global PressedKey
global Status
if { [info exists PressedKey] } { unset PressedKey }
if { [info exists Status] } { unset Status }
puts "\n proc Vars stop"
}

proc act_Setup {} {
puts "\n proc Setup start"
init_Vars
leg setupack leg_incoming
media play leg_incoming %s500 _account_closed.au
puts "\n proc Setup stop"
}

proc act_Select {} {
puts "\n proc Select start"
global param
global PressedKey
global Status
leg collectdigits leg_incoming param
puts "\n proc Select Stop"
}

proc act_Digits {} {
puts "\n proc Digits start"
global Status
global PressedKey
set Status [infotag get evt_status]
set PressedKey [infotag get evt_dcdigits]
puts "\n \n \n PressedKey: $PressedKey \n Status: $Status \n \n \n"
switch $Status {
"cd_004" {
fsm setstate PLAYSOUND
act_Play
}
default {
act_Cleanup
}
}
puts "\n proc Digits Stop"
}

proc act_Play {} {
puts "\n proc Play start"
global PressedKey
switch $PressedKey {
"1" {
media play leg_incoming %s500 _1.au %s500 _1.au %s500
}
"2" {
media play leg_incoming %s500 _2.au %s500 _2.au %s500
}
default {
act_Cleanup
}
}
puts "\n proc Play Stop"
}

proc act_Cleanup {} {
puts "\n proc Cleanup start"
call close
puts "\n proc Cleanup stop"
}


requiredversion 2.0
init

# FSM
set ivr_fsm(any_state,ev_disconnected) "act_Cleanup same_state"
set ivr_fsm(CALLCOMES,ev_setup_indication) "act_Setup same_state"
set ivr_fsm(CALLCOMES,ev_media_done) "act_Select ENTERDIGITS"
set ivr_fsm(ENTERDIGITS,ev_collectdigits_done) "act_Digits same_state"
set ivr_fsm(PLAYSOUND,ev_media_done) "act_Cleanup same_state"
set ivr_fsm(CALLDISCONNECT,ev_media_done) "act_Cleanup same_state"
set ivr_fsm(CALLDISCONNECT,ev_disconnect_done) "act_Cleanup same_state"

fsm define ivr_fsm CALLCOMES

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "Помогите с TCL"  
Сообщение от Alex email(??) on 28-Дек-06, 12:43 
Необходимо сначала
    leg collectdigits leg_incoming param
затем
    media play leg_incoming play.au
.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Помогите с TCL"  
Сообщение от leveler (ok) on 28-Дек-06, 13:07 
>Необходимо сначала
>    leg collectdigits leg_incoming param
>затем
>    media play leg_incoming play.au
>.

Спасиб. Сейчас буду пробовать...

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру