R
R
Rashad Khalafov2012-03-09 15:16:00
Telephony
Rashad Khalafov, 2012-03-09 15:16:00

Is Cisco Call Manager related to a third-party service program?

In matters of administration of CISCO IP telephony, a complete zero - I'll ask the guru.
Is it possible to link CISCO Call Manager (CCM) / IVR to some service hosted on another physical server?
For example, a call comes in -> the caller dials some numbers in the tone dialing -> these data are sent to a certain service on another machine (192.168.1.1:0000/?q=DATA). Well, something like this.
And also another question, how can you programmatically record each conversation and also send the generated file to a third-party service?
Thanks in advance to all who are interested.

Answer the question

In order to leave comments, you need to log in

3 answer(s)
R
Rashad Khalafov, 2012-03-12
@viperrsh

I caught myself thinking that the task of sending requests to another server via Cisco IVR is carried out by regular means of the TCL programming language, namely through opening a socket

   set sock [socket -async 127.0.0.1 33000]
   vwait connected
   puts $sock "A Test Line"

With puts, you can already send data directly received from the Cisco IVR API.

G
GdRta, 2012-03-09
@DamDamich

Can. Cisco VoIP has such a wonderful technology as Call Routing, cut in this direction.
Well, on the second question, you can only advise SORM, maybe this is exactly what you need, although I could be wrong, I have not met it in practice yet-)

R
Rashad Khalafov, 2012-03-09
@viperrsh

For those who are interested, here is an example for recording calls and then playing them to the caller (TLC script). media record team
proc act_Setup { } {
puts "\n DEBUGGING: Start act_Setup"
init_perCallVars
set ani [infotag get leg_ani]
set dnis [infotag get leg_dnis]
if { $dnis == "0555005211" } {
puts "\n DEBUGGING: Welcome Play"
leg setupack leg_incoming
leg proceeding leg_incoming
leg connect leg_incoming
media play leg_incoming flash:welcome.au
fsm setstate RECORD
}
aaa authenticate $ani $dnis
puts "\n DEBUGGING: Stop act_Setup"
}
.....
proc act_Record { } {
global param
global filename
set filename [infotag get leg_guid]
puts "\n DEBUGGING: Filename for record - $filename"
media record leg_incoming -p codec=5 -p maxDuration=15000 -m %b flash:$filename
fsm setstate RECORD_PLAY
}
proc act_RecordPlay {} {
global param
global filename
puts "\n DEBUGGING: Play Record"
puts "\n DEBUGGING: Filename for play - $filename"
media play leg_incoming flash:$filename
fsm setstate CALLACTIVE
}
....
set fsm(CALL_INIT,ev_setup_indication) "act_Setup AUTHENTICATE"
set fsm(RECORD,ev_media_done) "act_Record RECORD_PLAY"
set fsm(RECORD_PLAY,ev_recorder) "act_RecordPlay CALLACTIVE"

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question