cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1989
Views
0
Helpful
4
Replies

Leg States

Hi everyone , I am working with a CVP implementation.. which has a survivability tcl script so when CPV is unreachable (ex branch is on SRST) .. I could execute a custom TCL script...

I have made a basic tcl that plays greating message .. check out of hours.. etc....

I developed the tcl just triggering him from a pots dial-peer (but not using cvp) and works great....

When I configure the real scenario with cvp and branch office on srst.... I could see the survivability.tcl from cvp does a handoff to the application that I could define using a param..

So in my TCL I added

set fsm(CALL_INIT,ev_handoff) "act_Setup            GETDEST"

The problem is when in act_Setup when I tried to:

leg setupack leg_incoming

            leg proceeding leg_incoming

            leg connect leg_incoming

It says...

  Illegal Operation: Leg not incoming or in wrong state

*Oct  9 20:01:01.409:   TCL script failure errorInfo:

                        Illegal Operation: Leg not incoming or in wrong state

So the first thing I did was... try to do a

connection destroy con_all

Illegal Info Tag: Should map to atleast one Connection

*Oct  9 19:36:02.353:   TCL script failure errorInfo:

                        Illegal Info Tag: Should map to atleast one Connection

Then I did...

[infotag get evt_connections]

No connection is display ...

[infotag get evt_legs] and  [infotag get evt_legs]

Both shows only one leg EX 352

So for what I can see the leg incomming is there but "in wrong state".. What could I do ?

Regars..

Lisandro

1 Accepted Solution

Accepted Solutions

Raghavendra G V
Cisco Employee
Cisco Employee

Hi Lisandro,

You need to check the leg state before issuing these commands as below.

set legState [infotag get leg_state leg_incoming]

if {$legState != "lg_005" && $legState != "lg_008"} {

    if {$legState == "lg_001"} {       

        leg setupack leg_incoming

        leg proceeding leg_incoming

        leg connect leg_incoming

    } elseif {$legState == "lg_002"} {        

        leg proceeding leg_incoming

        leg connect leg_incoming

    } else {        

         leg connect leg_incoming

    }

}

# lg_001 --> LEG_INCOMING_FIRST

# lg_002 --> LEG_INCACKED

# lg_003 --> LEG_INCPROCEED

# lg_005 --> LEG_INCCONNECTED

# lg_008 --> LEG_OUTPROCEED

Thanks,

Raghavendra

View solution in original post

4 Replies 4

Raghavendra G V
Cisco Employee
Cisco Employee

Hi Lisandro,

You need to check the leg state before issuing these commands as below.

set legState [infotag get leg_state leg_incoming]

if {$legState != "lg_005" && $legState != "lg_008"} {

    if {$legState == "lg_001"} {       

        leg setupack leg_incoming

        leg proceeding leg_incoming

        leg connect leg_incoming

    } elseif {$legState == "lg_002"} {        

        leg proceeding leg_incoming

        leg connect leg_incoming

    } else {        

         leg connect leg_incoming

    }

}

# lg_001 --> LEG_INCOMING_FIRST

# lg_002 --> LEG_INCACKED

# lg_003 --> LEG_INCPROCEED

# lg_005 --> LEG_INCCONNECTED

# lg_008 --> LEG_OUTPROCEED

Thanks,

Raghavendra

Hi Raghavendra I have already seen that infotag on other Cisco tcl but  I today I was looking for it on tcl Ivr programming guide 2.0 and cound't find it neither the lg_xxx maybe I didn't see it..

That would save my problem..

Thanks for your help

Well that's weird I have  found it now under chapter 5 on the http version of tcl Ivr guide but is not added to the pdf version (download the complete book)

yes you can find the command in below link, not sure why it is not added in downloaded pdf.

http://www.cisco.com/c/en/us/td/docs/ios/voice/tcl/developer/guide/tclivrv2/tclivrv2_ch4.html#wp1058910

Thanks,

Raghavendra

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: