URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID6
Нить номер: 20774
[ Назад ]

Исходное сообщение
"Cisco CCME B-ACD scripts и воспроизведение приветствия"

Отправлено vlakas , 30-Мрт-10 12:23 
Есть Cisco 2851 c подключаемыми к нему sip телефонами (версию ios см. в конфиге ниже).

С помощью встроенных скриптов b-acd настроено интерактивное меню, которое, в принципе, работает (я могу сделать выбор и получаю адекватную рекацию). Но но я не слышу воспроизводимое голосовое приветствие и описание опций интерактивного меню. В нете искал и, действительно, проблема такая бывает, но решения для себя не нашел.

Вот конфиг (вернее его часть, касающаяся темы):

hostname C2851
!
boot-start-marker
boot system flash c2800nm-spservicesk9-mz.124-22.T4.bin
boot-end-marker
!
logging message-counter syslog
!
voice service voip
allow-connections h323 to sip
allow-connections sip to h323
allow-connections sip to sip
no supplementary-service sip moved-temporarily
no supplementary-service sip refer
redirect ip2ip
fax protocol t38 ls-redundancy 0 hs-redundancy 0 fallback cisco
sip
  registrar server expires max 600 min 60
!
!
voice class codec 100
codec preference 1 g711alaw
!
!
voice register global
mode cme
max-dn 288
max-pool 96
timezone 28
time-format 24
date-format D/M/Y
!
voice register dn  1
number 711
no-reg
label Reception
!
...
...
!
voice register dn  30
number 789
name AudioCodesTest1
!
voice register dn  31
number 788
name AudioCodesTest2
!
voice register dn  32
number 787
name VladTest
!
voice register pool  1
id mac 000E.08D6.EF15
number 1 dn 1
presence call-list
voice-class codec 100
description Reception_Aesthetics
no vad
!
...
...
!
voice register pool  30
id mac 0090.8F1E.D5A4
number 1 dn 30
voice-class codec 100
no vad
!
voice register pool  31
id mac 0090.8F1E.DBDB
number 1 dn 31
voice-class codec 100
no vad
!
voice register pool  32
id mac 0016.44E6.412E
number 1 dn 32
voice-class codec 100
no vad
!
voice hunt-group 1 longest-idle
list 789,788
timeout 15
pilot 780
!
!
voice hunt-group 2 longest-idle
list 789,788
timeout 15
pilot 782
!
!
!
...
...
!
application
!
service app-b-acd-aa
  param voice-mail 5003
  paramspace english index 0
  param max-time-call-retry 700
  param service-name app-b-acd
  param number-of-hunt-grps 2
  paramspace english language en
  param handoff-string app-b-acd-aa
  param dial-by-extension-option 1
  param max-time-vm-retry 2
  paramspace english location flash:
  param aa-pilot 781
  param second-greeting-time 15
  param welcome-prompt _bacd_welcome.au
  param call-retry-timer 15
!
service app-b-acd
  param queue-len 9
  param number-of-hunt-grps 2
  param aa-hunt2 780
  param aa-hunt3 782
  param queue-manager-debugs 1
!
!
!
dial-peer voice 781 voip
description === B-ACD entry ===
service app-b-acd-aa
destination-pattern 781T
voice-class codec 100
session target ipv4:192.168.100.1
incoming called-number 781
dtmf-relay h245-alphanumeric
no vad
!
!
telephony-service
max-conferences 8 gain -6
moh music-on-hold.au
multicast moh 224.168.168.168 port 6061
transfer-system full-consult
create cnf-files version-stamp Jan 01 2002 00:00:00
!

Вот лог при звонке на pilot number b-acd и выбор одного из пунктов меню:

*Mar 30 08:05:18.056: //-1//AFW_:/C_ServiceSession_Event_Handler:  
*Mar 30 08:05:18.056: //-1//AFW_:/AFW_Session_New:  
*Mar 30 08:05:18.056: //102610//AFW_:/C_PackageSession_NewCall: Session module listened by TclModule_47E96664_0_2724737304
*Mar 30 08:05:18.056: //102610//AFW_:/Open_SetupIndication: Calling #(789), Calling Name (), Called #(781), peer_tag(40005)
*Mar 30 08:05:18.056: //102610//AFW_:/SetupValidateSharedln: calledNum=781, callingNum=789, callID=102610,  callinf.peertag=40005,
*Mar 30 08:05:18.056: //-1//AFW_:/C_PackageSession_GetSigPeer:  
*Mar 30 08:05:18.064: //102612//TCL :/tcl_PutsObjCmd:
proc init_perCallvars
*Mar 30 08:05:18.064:
*Mar 30 08:05:18.068: //102612//TCL :/tcl_PutsObjCmd: TCL AA: ++ Playing Welcome Prompt and options menu ++
*Mar 30 08:05:18.088: //102610//AFW_:/ContactingDest_SignalEvent:
*Mar 30 08:05:18.092: //102610//AFW_:/ContactingDest_SetupDone:  
*Mar 30 08:05:22.492: //102601//TCL :/tcl_PutsObjCmd: TCL B-ACD: +++ New incoming call to queue 780 +++
*Mar 30 08:05:22.492: //102601//TCL :/tcl_PutsObjCmd: TCL B-ACD:  >>> THE QUEUE IS {TclModule_47E97354_0_2724737312 {CALL_NEW} {1269936322}} <<<
*Mar 30 08:05:22.492: //102612//TCL :/tcl_PutsObjCmd: TCL AA: -- MEDIA STATUS = ms_001 --
*Mar 30 08:05:22.492: //102612//TCL :/tcl_PutsObjCmd: TCL AA: -- ERROR: Unable to play prompt; File not found --
*Mar 30 08:05:22.492: //102612//TCL :/tcl_PutsObjCmd: TCL AA: +++ Playing MOH +++
*Mar 30 08:05:22.492: //102601//TCL :/tcl_PutsObjCmd: TCL B-ACD: +++ 780 Queue Length = 1 +++
*Mar 30 08:05:22.496: //102612//TCL :/tcl_PutsObjCmd: TCL AA: -- MEDIA STATUS = ms_001 --
*Mar 30 08:05:22.496: //102612//TCL :/tcl_PutsObjCmd: TCL AA: -- ERROR: Unable to play prompt; File not found --
*Mar 30 08:05:22.496: //102612//TCL :/tcl_PutsObjCmd: TCL AA: +++ Playing MOH +++
*Mar 30 08:05:22.500: //102612//TCL :/tcl_PutsObjCmd: TCL AA: >>> Destination Huntgroup = 780 <<<
*Mar 30 08:05:22.508: //102601//TCL :/tcl_PutsObjCmd: TCL B-ACD:  >>> THE QUEUE IS {TclModule_47E97354_0_2724737312 {CALL_PROGRESS} {1269936322}} <<<
*Mar 30 08:05:22.508: //102612//TCL :/tcl_PutsObjCmd: TCL AA: -- MEDIA STATUS = ms_001 --
*Mar 30 08:05:22.508: //102612//TCL :/tcl_PutsObjCmd: TCL AA: -- ERROR: Unable to play prompt; File not found --
*Mar 30 08:05:22.512: //102612//TCL :/tcl_PutsObjCmd: TCL AA: +++ Playing MOH +++
*Mar 30 08:05:22.512: //102612//TCL :/tcl_PutsObjCmd: TCL AA: -- MEDIA STATUS = ms_001 --
*Mar 30 08:05:22.512: //102612//TCL :/tcl_PutsObjCmd: TCL AA: -- ERROR: Unable to play prompt; File not found --
*Mar 30 08:05:22.512: //102612//TCL :/tcl_PutsObjCmd: TCL AA: +++ Playing MOH +++
*Mar 30 08:05:22.512: //102612//TCL :/tcl_PutsObjCmd: TCL AA: -- MEDIA STATUS = ms_001 --
*Mar 30 08:05:22.512: //102612//TCL :/tcl_PutsObjCmd: TCL AA: -- ERROR: Unable to play prompt; File not found --
*Mar 30 08:05:22.512: //102612//TCL :/tcl_PutsObjCmd: TCL AA: +++ Playing MOH +++
*Mar 30 08:05:22.512: //102612//TCL :/tcl_PutsObjCmd: TCL AA: -- MEDIA STATUS = ms_001 --
*Mar 30 08:05:22.516: //102612//TCL :/tcl_PutsObjCmd: TCL AA: -- ERROR: Unable to play prompt; File not found --
*Mar 30 08:05:22.516: //102612//TCL :/tcl_PutsObjCmd: TCL AA: +++ Playing MOH +++
*Mar 30 08:05:22.516: //102612//TCL :/tcl_PutsObjCmd: TCL AA: -- MEDIA STATUS = ms_001 --
*Mar 30 08:05:22.516: //102612//TCL :/tcl_PutsObjCmd: TCL AA: -- ERROR: Unable to play prompt; File not found --
*Mar 30 08:05:22.516: //102612//TCL :/tcl_PutsObjCmd: TCL AA: +++ Playing MOH +++
*Mar 30 08:05:22.516: //102612//TCL :/tcl_PutsObjCmd: TCL AA: -- MEDIA STATUS = ms_001 --
*Mar 30 08:05:22.516: //102612//TCL :/tcl_PutsObjCmd: TCL AA: -- ERROR: Unable to play prompt; File not found --
*Mar 30 08:05:22.516: //102612//TCL :/tcl_PutsObjCmd: TCL AA: +++ Playing MOH +++
*Mar 30 08:05:22.520: //102612//TCL :/tcl_PutsObjCmd: TCL AA: -- MEDIA STATUS = ms_001 --
*Mar 30 08:05:22.520: //102612//TCL :/tcl_PutsObjCmd: TCL AA: -- ERROR: Unable to play prompt; File not found --
*Mar 30 08:05:22.520: //102612//TCL :/tcl_PutsObjCmd: TCL AA: +++ Playing MOH +++
*Mar 30 08:05:22.520: //102612//TCL :/tcl_PutsObjCmd: TCL AA: -- MEDIA STATUS = ms_001 --
*Mar 30 08:05:22.520: //102612//TCL :/tcl_PutsObjCmd: TCL AA: -- ERROR: Unable to play prompt; File not found --
*Mar 30 08:05:22.520: //102612//TCL :/tcl_PutsObjCmd: TCL AA: +++ Playing MOH +++
*Mar 30 08:05:32.284: //102610//AFW_:/AnyState_Disconnected:  
*Mar 30 08:05:32.284: //102610//AFW_:/Session_Close: lastFailureCause 16
*Mar 30 08:05:32.284: //102610//AFW_:/AFW_M_Session_Terminate:  
*Mar 30 08:05:32.284: //102610//AFW_:/AFW_M_Session_Terminate: lastFailureCause 16
*Mar 30 08:05:32.284: //102610//AFW_:/Session_Cleaner:  
*Mar 30 08:05:32.284: //-1//AFW_:/C_ServiceSession_Event_Handler:  
*Mar 30 08:05:32.284: //102610/D0568DD08BC7/AFW_:/C_ServiceSession_Event_Handler: Received event CC_EV_CALL_DISCONNECTED[17] in Main Loop
*Mar 30 08:05:32.284: //102610//AFW_:/Closing_AnyEvent:  
*Mar 30 08:05:32.284: //102610//AFW_:/Session_Cleaner:  
*Mar 30 08:05:32.292: //102610//AFW_:/Closing_AnyEvent:  
*Mar 30 08:05:32.292: //102610//AFW_:/Session_Cleaner:  
*Mar 30 08:05:32.292: //-1//AFW_:/C_ServiceSession_Event_Handler:  
*Mar 30 08:05:32.292: //102610/D0568DD08BC7/AFW_:/C_ServiceSession_Event_Handler: Received event CC_EV_CALL_DISCONNECT_DONE[18] in Main Loop
*Mar 30 08:05:32.296: //102601//TCL :/tcl_PutsObjCmd: TCL B-ACD:  >>> Call Abandoned Time = 10 Seconds<<<
*Mar 30 08:05:32.296: //102601//TCL :/tcl_PutsObjCmd: TCL B-ACD ++ Service Counter = 3 ++
*Mar 30 08:05:32.296: //102601//TCL :/tcl_PutsObjCmd: TCL B-ACD: +++ 780 Queue Length = 0 +++
*Mar 30 08:05:32.300: //102610//AFW_:/Closing_AnyEvent:  
*Mar 30 08:05:32.300: //102610//AFW_:/Session_Cleaner:  
*Mar 30 08:05:32.300: //102610//AFW_:/AFW_M_Session_Terminate:  
*Mar 30 08:05:32.300: //-1//AFW_:HNA2683118:/AFW_M_Session_Free:  MOD[Session_48722884_0_2724737304]    ( )
*Mar 30 08:05:32.300: //102601//TCL :/tcl_PutsObjCmd: TCL B-ACD:  >>> 780 Queue Length = 0 <<<
*Mar 30 08:05:32.300: //102601//TCL :/tcl_PutsObjCmd: TCL B-ACD:  >>> Queue 780 is Empty <<<

Не могу понять, почему оно не может найти MOH.

# sh flash:


C2851#sh flash:
-#- --length-- -----date/time------ path
1     50098196 Feb 10 2010 07:40:46 c2800nm-spservicesk9-mz.124-22.T4.bin
3          638 Sep 26 2007 07:11:34 CME_GUI_README.TXT
4        83291 Mar 26 2010 08:33:50 en_bacd_disconnect.au
5         1602 Sep 26 2007 07:11:38 CiscoLogo.gif
6          953 Sep 26 2007 07:11:38 Delete.gif
7        63055 Mar 26 2010 08:33:52 en_bacd_enter_dest.au
8        75650 Mar 26 2010 08:33:50 en_bacd_allagentsbusy.au
9        35485 Mar 26 2010 08:33:50 app-b-acd-aa-2.1.2.2.tcl
10       24985 Mar 26 2010 08:33:50 app-b-acd-2.1.2.2.tcl
11       19106 Mar 26 2010 08:33:48 app-b-acd-2.1.2.2-ReadMe.txt
12        1347 Sep 26 2007 07:11:42 Plus.gif
13         174 Sep 26 2007 07:11:42 Tab.gif
14        4448 Sep 26 2007 07:11:42 admin_user.html
15      656913 Sep 26 2007 07:11:44 admin_user.js
16       16948 Sep 26 2007 07:11:48 dom.js
17         864 Sep 26 2007 07:11:48 downarrow.gif
18        6315 Sep 26 2007 07:11:48 ephone_admin.html
19        4658 Sep 26 2007 07:11:48 logohome.gif
20      496521 Sep 26 2007 07:11:50 music-on-hold.au
21        3831 Sep 26 2007 07:11:50 normal_user.html
22       78819 Sep 26 2007 07:11:50 normal_user.js
23         843 Sep 26 2007 07:11:50 sxiconad.gif
24        2453 Sep 26 2007 07:11:50 telephony_service.html
25         870 Sep 26 2007 07:11:50 uparrow.gif
26       10230 Sep 26 2007 07:11:50 xml-test.html
27        3389 Sep 26 2007 07:11:50 xml.template
28        1826 Sep 26 2007 07:12:46 sdmconfig-28xx.cfg
29     6036480 Sep 26 2007 07:13:14 sdm.tar
30      861696 Sep 26 2007 07:13:32 es.tar
31     1164288 Sep 26 2007 07:13:50 common.tar
32        1038 Sep 26 2007 07:14:10 home.shtml
33      113152 Sep 26 2007 07:14:30 home.tar
34     1697952 Sep 26 2007 07:14:58 securedesktop-ios-3.1.1.45-k9.pkg
35      416354 Sep 26 2007 07:15:20 sslclient-win-1.1.3.173.pkg
36        5095 Mar 12 2008 09:49:36 app_faxmail_offramp.2.0.1.1.tcl
37       12262 Mar 12 2008 09:50:42 app_faxmail_onramp.2.0.1.3.tcl
38       37888 Mar 12 2008 10:49:38 app_faxmail_offramp_callflow.fm
39       45056 Mar 12 2008 10:50:26 app_faxmail_onramp_callflow.fm
40       37952 Mar 26 2010 08:33:52 en_bacd_invalidoption.au
41      496521 Mar 26 2010 08:33:56 en_bacd_music_on_hold.au
42      123446 Mar 26 2010 08:33:56 en_bacd_options_menu.au
43       42978 Mar 26 2010 08:33:56 en_bacd_welcome.au
44       34794 Mar 26 2010 08:33:58 en_bacd_xferto_operator.au

1089536 bytes available (62926848 bytes used)

Заранее спасибо


Содержание

Сообщения в этом обсуждении
"Cisco CCME B-ACD scripts и воспроизведение приветствия"
Отправлено vlakas , 30-Мрт-10 13:52 
Собсно, проблем в кодеках была. Использовался g711alaw (привязка к прову). С g711ulaw заработало. Прим.:
...
voice class codec 100
codec preference 1 g711alaw
codec preference 2 g711ulaw
...
voice register pool  30
id mac 0090.8F1E.D5A4
number 1 dn 30
voice-class codec 100
no vad
...
dial-peer voice 20 voip
description === dial-peer не касающийся работы B-ACD ===
translation-profile outgoing Outbound
destination-pattern SOME-PATTERN
voice-class codec 100
session protocol sipv2
session target sip-server
fax protocol t38 ls-redundancy 0 hs-redundancy 0 fallback pass-through g711alaw
no vad
...
dial-peer voice 781 voip
description === B-ACD entry ===
service app-b-acd-aa
destination-pattern 781T
codec g711ulaw
session target ipv4:192.168.100.1
incoming called-number 781
dtmf-relay h245-alphanumeric
no vad

Теперь надо будет проверить как это добро будет работать с провайдерским сипом, если пров поддерживает кодек g711alaw.

P. S. Для того, чтобы аудио запись работала с другими кодеками, ее надо специально записывать под них или же это от скриптов зависит?


"Мысли...."
Отправлено j_vw , 30-Мрт-10 21:47 
>P. S. Для того, чтобы аудио запись работала с другими кодеками, ее
>надо специально записывать под них или же это от скриптов зависит?

Переписывать....
Причем, можете их с десяток завести...И расположить, в зависимости от dial-peer

Но вот это смущает:
ERROR: Unable to play prompt; File not found -
Хотя, это може и связано с
multicast moh 224.168.168.168 port 6061
Пока уберите.....

Сравниваю со своим рабочим скриптом:
"Ваше":service app-b-acd-aa
"Мое":service app-b-acd-aa flash:flash:/bacdprompts/app-b-acd-aa-2.1.2.2.tcl (прямое указание на скрипт)

"В":  paramspace english index 0
"М":  paramspace english index 1

"В": service app-b-acd
"М": service app-b-acd flash:/bacdprompts/app-b-acd-2.1.2.2.tcl

"В"  param aa-pilot 781
"В" dial-peer voice 781 voip
"В" destination-pattern 781T

Вроде destination-pattern должен быть, точно, как param aa-pilot (не уверен....)

На всякий случай   param aa-hunt3 782 - это у вас "оператор" (переход по "0")



"Мысли...."
Отправлено vlakas , 31-Мрт-10 11:34 
В итоге все у меня заработало

>>P. S. Для того, чтобы аудио запись работала с другими кодеками, ее
>>надо специально записывать под них или же это от скриптов зависит?

Спасибо

>Но вот это смущает:
>ERROR: Unable to play prompt; File not found -
>Хотя, это може и связано с
>multicast moh 224.168.168.168 port 6061
>Пока уберите.....

Это было связано с использованием неправильного кодека в dial-peer.

>
>Сравниваю со своим рабочим скриптом:
>"Ваше":service app-b-acd-aa
>"Мое":service app-b-acd-aa flash:flash:/bacdprompts/app-b-acd-aa-2.1.2.2.tcl (прямое указание на скрипт)
>

Я использую встроенные скрипты. Все делалось по оф. мануалу.


"Мысли...."
Отправлено Yayaya , 08-Фев-14 15:10 
> В итоге все у меня заработало
> Это было связано с использованием неправильного кодека в dial-peer.
>>
>>Сравниваю со своим рабочим скриптом:
>>"Ваше":service app-b-acd-aa
>>"Мое":service app-b-acd-aa flash:flash:/bacdprompts/app-b-acd-aa-2.1.2.2.tcl (прямое указание на скрипт)
>>
> Я использую встроенные скрипты. Все делалось по оф. мануалу.

Чуток не в тему - я так понимаю нужно создать ПИР на который вешается сервис.
А что если у меня только одна циска? Как завязать loopback на себя?

dial-peer voice 781 voip
description === B-ACD entry ===
service app-b-acd-aa
destination-pattern 781T
codec g711ulaw
session target ipv4:192.168.100.1
incoming called-number 781
dtmf-relay h245-alphanumeric
no vad