App_h450_transfer.2.0.0.3.tcl

Hi guys,
i'm looking for app_450 tcl that cisco should be freely provides but i'm not able to find out it on the web.
can you kindly help me (links or souce code)?
Regards,
Alessandro.

Right here: http://www.cisco.com/cgi-bin/tablebuild.pl/tclware. Accessible from Download Software > Voice and Unified Communications > Communications Infrastructure > Voice Gateways > Cisco TCL Scripts for IOS Gateways.

Similar Messages

  • Can we use TCL commands in database triggers?

    Hi,
    GoodDay, This is Ramesh. Please let me know that, can we use TCL (Commit, Rollback & Savepoint) commands in our[b] DATABASE triggers? If so how..?
    Regards,
    Ramesh.

    Hi Ramesh, you're in the wrong forum; SQL Developer is a tool. Try SQL And PL/SQL...
    Regards,
    K.

  • KEY LOOKUP Operator using TCL

    Hi,
    I am trying to create a key lookup operator using tcl.
    OMBALTER MAPPING 'TESTMAP' ADD KEY_LOOKUP OPERATOR 'INSTITUTION_CHARACTERISTIC_DIM'\
    SET PROPERTIES (BOUND_NAME,CREATE_NO_MATCH_ROW, LOOKUP_CONDITION)VALUES
    ('INSTITUTION_CHARACTERISTIC_DIM','true','OUTGRP1.INSTITUTION_CHAR_SRCKEY
    = INGRP1.INST_CHAR_SRCKEY')
    and then adding an attribute to the INGRP
    OMBALTER MAPPING 'TESTMAP'ADD ATTRIBUTE 'LAST_ACTIVITY_DATE' OF GROUP 'INGRP1' OF OPERATOR 'INSTITUTION_CHARACTERISTIC_DIM'
    This is creating a key lookup operator by the name
    INSTITUTION_CHARACTERISTIC_DIM, and i can see the Bound Name in the
    properties window, but when i double click and open the key lookup, i
    dont see the result table under the LOOK UP tab.Because of this, the
    attributes dont get added in the OUTGRP of the key lookup.
    Am i missing some important property of a key look up?
    can some one please help me with this...
    Thanks in advance...

    Hi,
    you have to bind the lookup operator to the table:
    OMBALTER MAPPING 'MAP_LOOKUP' ADD KEY_LOOKUP OPERATOR 'MY_LOOKUP' BOUND TO TABLE '/MY_PROJECT/MY_DB/DIM_CUSTOMERS'
    OMBALTER MAPPING 'MAP_LOOKUP' MODIFY OPERATOR 'MY_LOOKUP' SET PROPERTIES (CREATE_NO_MATCH_ROW, LOOKUP_CONDITION)VALUES ('true','OUTGRP1.ID_CUSTOMER=INGRP1.ID_CUSTOMER')
    OMBALTER MAPPING 'MAP_LOOKUP' ADD ATTRIBUTE 'ID_CUSTOMER' OF GROUP 'INGRP1' OF OPERATOR 'MY_LOOKUP'Regards,
    Carsten.

  • I am trying to build a basic TCL skeleton script that reads a remote SNMP OID and displays the value on the screen.

    I am trying to build a basic TCL skeleton script that reads a remote SNMP OID and displays the value on the screen.
    I don't want it to be an EEM Event, I just want to run it from the (tcl)# prompt.
    So I guess I'm asking if you can use cli_exec and other commands in the "namespace import ::cisco::eem::*" in a normal non-EEM script - can I do that?
    This is the error I get:
    OTN.159(tcl)#source flash:TCL_SNMP_Remote_Read.tcl
    invalid command name "::cisco::eem::event_register_none"             ^
    % Invalid input detected at '^' marker.
    What am I missing?
    =================  TCL_SNMP_Remote_Read.tcl  ==============================
    ::cisco::eem::event_register_none
    namespace import ::cisco::eem::*
    namespace import ::cisco::lib::*
    if [catch {cli_open} RESULT]
        { error $RESULT $errorInfo }
        else { array set cli1 $RESULT }
    if [catch {cli_exec $cli1(fd) "snmp get v2c 192.168.1.100 public timeout 1 oid 1.3.6.1.2.1.1.1.0" } RESULT]
           { error $RESULT $errorInfo  }
           else { set SnmpSysDesc $RESULT }
    if [catch {cli_close $cli1(fd) $cli1(tty_id)} RESULT] {
                error $RESULT $errorInfo
    puts $SnmpSysDesc
    =========================================================================
    In the sho-run config I have:
    event manager directory user policy "flash:/"
    event manager session cli username "cisco"
    Any help to get me started would be greatly appreciated!
    Tim

    If you don't want an EEM policy, then don't use any of the EEM constructs.  Instead, all you need is this:
    set output [exec "snmp get v2c 192.168.1.100 public timeout 1 oid 1.3.6.1.2.1.1.1.0"]puts $output

  • TCL scripting

    st1\:*{behavior:url(#ieooui) }
    /* Style Definitions */
    table.MsoNormalTable
    {mso-style-name:"Table Normal";
    mso-tstyle-rowband-size:0;
    mso-tstyle-colband-size:0;
    mso-style-noshow:yes;
    mso-style-parent:"";
    mso-padding-alt:0in 5.4pt 0in 5.4pt;
    mso-para-margin:0in;
    mso-para-margin-bottom:.0001pt;
    mso-pagination:widow-orphan;
    font-size:10.0pt;
    font-family:"Times New Roman";
    mso-ansi-language:#0400;
    mso-fareast-language:#0400;
    mso-bidi-language:#0400;}
    Network Scenario:
    We have a Client-Server enterprise network, and nature of servers is to broadcast some stats/info to all the clients.
    We are using two 6509-E at core with HSRP to provide the redundancy for servers. I have attached the network layout (not the real one) with some description with this thread. On both switches we have configured “ip helper-addresses” to forward the broadcast to multiple destinations(different VLANs). Every thing is working fine with respect to HSRP.
    Problem:
    Under normal circumstances, both ACTIVE and STANDBY hsrp switches generates broadcast which causing duplication of every broadcast packet and Client end receiving every packet twice. Cisco already claimed that standby switch will forward the broadcast. As an alternate TAC has advised to use the TCL script as a work around which we attempted to however no success at the end.
    Please let me know if some one can help me in modifying TCL script.
    ::cisco::eem::event_register_syslog occurs 1 pattern .*STANDBY.*STATECHANGE.* maxrun 90
    # EEM policy used to detect an HSRP state change. Once change is detected, analize the
    # type of change and modify the configuration about helper address.
    # The script looks for the DHCP server ip address in dhcp_server environment variable
    # and adds or removes the command 'ip helper-address dhcp_server' to the interface on
    # which HSRP status has changed.
    # April 2006, Cisco Europe & Emerging TME Team
    # Copyright (c) 2006 by cisco Systems, Inc.
    # All rights reserved.
    ### The script uses the following environment variables:
    #   $dhcp_server - ip address of the DCHP server in four octect dotted notation
    # 1. check if all the env variables we need exist and if not abort
    namespace import ::cisco::eem::*
    namespace import ::cisco::lib::*
    if {![info exists dhcp_server]} {
        set result "EEM Policy Error: variable dhcp_server has not been set"
        error $result $errorInfo
    # 2. Local procedure for CLI show commands
    # Pass a list of cli commands and it returns a list of outputs
    proc CLICmdProc {cmds} {
        if [catch {cli_open} result] {
            error $result $errorInfo
        } else {
            array set cli1 $result
        if [catch {cli_exec $cli1(fd) "enable"} result] {
            error $result $errorInfo
        foreach a_cmd $cmds {
            if [catch {cli_exec $cli1(fd) $a_cmd} result] {
                error $result $errorInfo
            } else {
                lappend cmd_output $result
        if [catch {cli_close $cli1(fd) $cli1(tty_id)} result] {
            error $result $errorInfo
        return $cmd_output
    # 3. Local procedure for CLI configuration commands
    # Pass a list of cli commands
    proc CLICfgProc {cmds} {
        if [catch {cli_open} result] {
            error $result $errorInfo
        } else {
            array set cli1 $result
        if [catch {cli_exec $cli1(fd) "enable"} result] {
            error $result $errorInfo
        if [catch {cli_exec $cli1(fd) "config terminal"} result] {
            error $result $errorInfo
        foreach a_cmd $cmds {
            if [catch {cli_exec $cli1(fd) $a_cmd} result] {
                error $result $errorInfo
            } else {
                set cmd_output $result
        if [catch {cli_exec $cli1(fd) "end"} result] {
            error $result $errorInfo
        if [catch {cli_exec $cli1(fd) "write mem"} result] {
            error $result $errorInfo
        if [catch {cli_close $cli1(fd) $cli1(tty_id)} result] {
            error $result $errorInfo
    # 4. query the information of latest triggered eem event
    array set arr_einfo [event_reqinfo]
    if {$_cerrno != 0} {
        set result [format "component=%s; subsys err=%s; posix err=%s;\n%s" \
            $_cerr_sub_num $_cerr_sub_err $_cerr_posix_err $_cerr_str]
        error $result
    set msg $arr_einfo(msg)
    # 5. we save the interface which triggered the event in interface
    regexp {(Vlan[0-9]{1,4}).*-> ([A-Z,a-z]*$)} $msg result interface action
    if {$action == "Active"} {
                  lappend clicmd "interface $interface"
                  lappend clicmd "ip helper-address $dhcp_server"
    if {$action != "Active"} {
                  lappend clicmd "interface $interface"
                  lappend clicmd "no ip helper-address $dhcp_server"
    set cliout [CLICfgProc $clicmd]
    action_syslog msg "Updating the configuration of interface $interface"

    Try this version.  You will need to first set an environment variable, dhcp_servers to be a comma separated list of IP addresses (i.e. the helper addresses) to configure/unconfigure.  For example:
    event manager environment dhcp_servers 192.168.10.255,192.168.12.255,192.168.14.255

  • Right way to get interface counters in TCL/EEM

    Hello Experts,
    I am looking for your advise about the best way to deal with interface counters inside TCL/EEM on XR. The ultimate goal is to compare rate (bps/pps) over two 10G interfaces and alert user in case they are differ more than 15-20% .
    I can get counters by parsing output of "show interface TenGigX/X/X/X" but , may be more streightforward way is exists, like getting them directly from MIB or from elsewhere ?
    Thank you !

    Using the CLI on XR is probably best since you can get bidrectional utilization in one call.  The SNMP ED would work, but you can only poll for one OID at a time.  So short answer is, you're doing the best thing right now.

  • Creating a job that runs a Tcl script

    Hi,
    We currently have a scheduled job running a Tcl script on a 8.1.7 DB. My question is, can I still use the same setup in 10g DB (i.e. creating a job that runs Tcl script)? If I can, how am I gonna do it?
    Thanks,
    howie

    It depends on how you scheduled the job in 8.1.7 DB.
    By Cronjob? Yes you can do the same to connect to 10g
    By DBMS_JOB?. Yes you can do it in 10g and in addition, can improve it with DBMS_SCHEDULER
    Via OEM? Yes in can use Enterprise Manager to create a Job that runs the Script.

  • Error while running  BDB tcl testsuite commands

    Hi,
    I build berkeley db (4.7.25) libraries with tcl test suite is enabled in the solaris 9 machine using below configuration
    ../dist/configure --enable-dynamic ${BUILD_TAG} enable-tcl with-tcl=/export/tcl8.5/lib enable-test enable-java -prefix ${BUILD_DIR}
    I used tcl 8.5, jdk1.6.0_18 and gcc-3.4.6 for building libraries.Libraries are build successfully.
    When I run tcl command "run_std" in the tcl prompt, test is completed with below error logs in ALL.OUT file.
    ==========================================================================
    cat ALL.OUT | grep FAIL
    FAIL: error message in .out file: ./TESTDIR/lock003.1.out:FAIL:14:53:06 (00:00:01) number of other locks on 5: expected 0, got 1
    FAIL: error message in .out file: ./TESTDIR/lock003.1.out:FAIL:14:53:06 (00:00:00) ../dist/../test/lockscript.tcl run: FAIL:14:53:06 (00:00:01) number of other locks on 5: expected 0, got 1: pid 28332: expected 0, got 1
    FAIL: error message in .out file: ./TESTDIR/lock003.1.out:FAIL:18:24:50 (00:00:00) number of other locks on 44: expected 0, got 1
    FAIL: error message in .out file: ./TESTDIR/lock003.1.out:FAIL:18:24:50 (00:00:00) ../dist/../test/lockscript.tcl run: FAIL:18:24:50 (00:00:00) number of other locks on 44: expected 0, got 1: pid 28378: expected 0, got 1
    FAIL:03:09:45 (00:00:42) db_dump/db_load(./TESTDIR/primary007.db:couldn't create pipe: too many open files): expected 0, got 1
    FAIL:03:09:45 (00:00:00) Dump/load of ./TESTDIR/primary007.db failed.
    FAIL:03:09:45 (00:00:00) db_dump/db_load(./TESTDIR/secondary007.0.db:couldn't create pipe: too many open files): expected 0, got 1
    FAIL:03:09:45 (00:00:00) Dump/load of ./TESTDIR/secondary007.0.db failed.
    FAIL:03:09:45 (00:00:00) db_dump/db_load(./TESTDIR/secondary007.1.db:couldn't create pipe: too many open files): expected 0, got 1
    FAIL:03:09:45 (00:00:00) Dump/load of ./TESTDIR/secondary007.1.db failed.
    FAIL:03:10:31 (00:00:46) db_dump/db_load(./TESTDIR/primary008.db:couldn't create pipe: too many open files): expected 0, got 1
    FAIL:03:10:31 (00:00:00) Dump/load of ./TESTDIR/primary008.db failed.
    FAIL:03:10:31 (00:00:00) db_dump/db_load(./TESTDIR/secondary008.0.db:couldn't create pipe: too many open files): expected 0, got 1
    FAIL:03:10:31 (00:00:00) Dump/load of ./TESTDIR/secondary008.0.db failed.
    FAIL:03:10:31 (00:00:00) db_dump/db_load(./TESTDIR/secondary008.1.db:couldn't create pipe: too many open files): expected 0, got 1
    FAIL:03:10:31 (00:00:00) Dump/load of ./TESTDIR/secondary008.1.db failed.
    FAIL:03:12:06 (00:01:35) db_dump/db_load(./TESTDIR/primary001.db:couldn't create pipe: too many open files): expected 0, got 1
    FAIL:03:12:06 (00:00:00) Dump/load of ./TESTDIR/primary001.db failed.
    FAIL:03:12:06 (00:00:00) db_dump/db_load(./TESTDIR/secondary001.0.db:couldn't create pipe: too many open files): expected 0, got 1
    FAIL:03:12:06 (00:00:00) Dump/load of ./TESTDIR/secondary001.0.db failed.
    FAIL:03:12:06 (00:00:00) db_dump/db_load(./TESTDIR/secondary001.1.db:couldn't create pipe: too many open files): expected 0, got 1
    FAIL:03:12:06 (00:00:00) Dump/load of ./TESTDIR/secondary001.1.db failed.
    FAIL:03:12:34 (00:00:28) db_dump/db_load(./TESTDIR/primary002.db:couldn't create pipe: too many open files): expected 0, got 1
    FAIL:03:12:34 (00:00:00) Dump/load of ./TESTDIR/primary002.db failed.
    FAIL:03:12:34 (00:00:00) db_dump/db_load(./TESTDIR/secondary002.0.db:couldn't create pipe: too many open files): expected 0, got 1
    FAIL:03:12:34 (00:00:00) Dump/load of ./TESTDIR/secondary002.0.db failed.
    FAIL:03:12:34 (00:00:00) db_dump/db_load(./TESTDIR/secondary002.1.db:couldn't create pipe: too many open files): expected 0, got 1
    FAIL:03:12:34 (00:00:00) Dump/load of ./TESTDIR/secondary002.1.db failed.
    FAIL:03:12:47 (00:00:00) db_dump/db_load(./TESTDIR/primary006.db:couldn't create pipe: too many open files): expected 0, got 1
    FAIL:03:12:47 (00:00:00) Dump/load of ./TESTDIR/primary006.db failed.
    FAIL:03:12:47 (00:00:00) db_dump/db_load(./TESTDIR/secondary006.1.db:couldn't create pipe: too many open files): expected 0, got 1
    FAIL:03:12:47 (00:00:00) Dump/load of ./TESTDIR/secondary006.1.db failed.
    FAIL:03:12:47 (00:00:00) db_dump/db_load(./TESTDIR/secondary006.2.db:couldn't create pipe: too many open files): expected 0, got 1
    FAIL:03:12:47 (00:00:00) Dump/load of ./TESTDIR/secondary006.2.db failed.
    FAIL:03:13:10 (00:00:23) r: sindex: db open:too many open files
    FAIL:06:38:47 (02:19:40) rep_process_message returned DB_NOTFOUND: No matching key/data pair found
    ====================================================================================
    What could be the reason for the above errors while running the tcl testsuite ?
    Is there any problem in berkeley db libraries that are build with above configuration?
    Could you please clarify.
    Thanks in advance.
    Regards,
    Madhu

    Hi Sandra,
    I have executed lock003 in the tclsh prompt and error occurred while executing this lock test.
    ========================================================
    [exec] Lock003: Multi-process random lock test
    [exec] Lock003.a: Create environment
    [exec] Script watcher process 11571 launching lockscript.tcl process 11574.
    [exec] Script watcher process 11570 launching lockscript.tcl process 11573.
    [exec] Script watcher process 11572 launching lockscript.tcl process 11575.
    [exec] Script watcher process 11576 launching lockscript.tcl process 11578.
    [exec] Lock003.b: 5 independent processes now running
    [exec] Script watcher process 11577 launching lockscript.tcl process 11597.
    [exec] 06:35:39 (00:00:00) processes running: 11570 11571 11574 11572 11573 11575 11576 11578 11577 11597
    [exec] 06:36:15 (00:00:36) processes running: 11570 11571 11574 11572 11573 11575 11576 11578 11577 11597
    [exec] 06:36:51 (00:00:36) processes running: 11570 11571 11574 11572 11573 11575 11576 11578 11577 11597
    [exec] 06:37:27 (00:00:36) processes running: 11570 11571 11574 11572 11573 11575 11576 11578 11577 11597
    [exec] 06:38:03 (00:00:36) processes running: 11570 11571 11574 11572 11573 11575 11576 11578 11577 11597
    [exec] 06:38:38 (00:00:35) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 06:39:12 (00:00:34) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 06:39:48 (00:00:36) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 06:40:22 (00:00:34) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 06:40:57 (00:00:35) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 06:41:32 (00:00:35) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 06:42:07 (00:00:35) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 06:42:41 (00:00:34) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 09:48:46 (00:00:35) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 09:49:20 (00:00:34) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 09:49:55 (00:00:35) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 09:50:29 (00:00:34) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 09:51:04 (00:00:35) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 09:51:39 (00:00:35) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 09:52:13 (00:00:34) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 09:52:48 (00:00:35) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 09:53:23 (00:00:35) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 09:53:58 (00:00:35) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 09:54:32 (00:00:34) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 09:55:07 (00:00:35) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 09:55:41 (00:00:34) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 09:56:16 (00:00:35) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 09:56:51 (00:00:35) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 09:57:25 (00:00:34) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 09:58:00 (00:00:35) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 09:58:34 (00:00:34) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 09:59:09 (00:00:35) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 09:59:46 (00:00:37) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 10:00:21 (00:00:35) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 10:00:56 (00:00:35) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 10:01:30 (00:00:34) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 10:02:05 (00:00:35) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 10:02:39 (00:00:34) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] 10:03:14 (00:00:35) processes running: 11571 11574 11572 11575 11576 11578 11577 11597
    [exec] All processes have exited.
    [exec] FAIL: error message in .out file: ./TESTDIR/lock003.0.out:FAIL:06:38:00 (00:00:00) number of other locks on 52: expected 0, got 1
    [exec] FAIL: error message in .out file: ./TESTDIR/lock003.0.out:FAIL:06:38:00 (00:00:00) ../dist/../test/lockscript.tcl run: FAIL:06:38:00 (00:00:00) number of other locks on 52: expected 0, got 1: pid 11573: expected 0, got 1
    ===================================================================
    Is this problem occur if berkeley db jars having any issues ?Why because, when berkeleydb jars (build without tcl test flags in the same environment) are used in application under high load,application is hanged because of berkeley db native api.
    Sorry,I could not change ulimit value in my system because of lack of permissions.
    Can you please explain what could be the reason for the above error and how to rectify it.
    Thanks
    Madhu

  • Memory Leak in TCL UDP socket

    Hi all,
    I am currently looking at a memory leak issue in the TCL UDP socket configuration when the fconfigure command is issued under a procedure.
    Under a normal scenario where the socket is configured globally, the system handles the memory well and we do not see an increase.
    The folowing examples are not the actual code implemented but provide an example of the condition under which the leak is seen.
    set msg [udp_open]
    fconfigure $msg -blocking false -buffering none -translation binary -remote [list 10.70.0.112 1234]
    proc send {} {
        global msg
        puts -nonewline $msg "HELLOHELLOHELLOHELLOHELLOHELLOHELLOHELLOHELLO"
        return
    set done 0
    while {($done <= 1000)} {
        set done [expr {$done + 1}]
        after 250
        send
    If we wish do dynamically modify the parameters of the socket, we get an ever increasing consumption of memory (show memory dead - decrease in processor free). for example:
    set clients [list]
    lappend clients "10.70.0.111 1234"
    lappend clients "10.70.0.112 1234"
    set msg [udp_open]
    fconfigure $msg -blocking false -buffering none -translation binary
    proc send {} {
        global clients
        global msg
        foreach peer $clients {
            fconfigure $msg -remote $peer
            puts -nonewline $msg "HELLOHELLOHELLOHELLOHELLOHELLOHELLOHELLOHELLO"
        return
    set done 0
    while {($done <= 1000)} {
        set done [expr {$done + 1}]
        after 250
        send
    I have tested multiple scenatios using flush, return, closing and opening the socket within the procedure, all to the same result - fconfigure in a procedure creates a memory leak in line with the data rate passing through the socket.
    I am seeing this across multiple device types and IOS (819,5915,5940,2901,2921,3945) 15 series M/T/GC IOS. I guess the question is, is there a problem with the construct of the procedure in which I am missing something on the channel side to release the memory or does this appear to be a bug?
    any help would be appreciated.
    Regards,
    Robert.

    Hi,
    could you please tell me the package version number you are using?
    You can obtain it by calling "package re udp".
    thx

  • Setting the source-interface in a tcl script for email.

    So once again I am trying to figure this out and failing miserably. The only thin I can think of at the moment is that I need to tell it to source from a specific vrf interface. I've tried looking through possible enviornment variables. Hoping I could set it that way but have yet to find one. I have read varios settings for source-interface and attempted them. But fail every time with:
    vpn_failure.tcl: smtp_send_email: error connecting to mail server:
    EEM Version:
    sho event manager version
    Embedded Event Manager Version 4.00
    Component Versions:
    eem: (rel4)1.0.4
    eem-gold: (rel1)1.0.2
    eem-call-home: (rel2)1.0.0
    Below is the stock format for sending the email from the script. If someone could guide me in the correct way to set this up to source the interface that would be awesome.
    # create mail form
      action_syslog msg "Creating mail header for vpn_failure.tcl script..."
      set body [format "Mailservername: %s" "$_email_server"]
      set body [format "%s\nFrom: %s" "$body" "$_email_from"]
      set body [format "%s\nTo: %s" "$body" "$_email_to"]
      set _email_cc ""
      set body [format "%s\nCc: %s" "$body" ""]
      set body [format "%s\nSubject: %s\n" "$body" "VPN Failure Detected: Router $routername Crypto tunnel is DOWN. Peer $remote_peer"]
      set body [format "%s\n%s" "$body" "Report Summary:"]
      set body [format "%s\n%s" "$body" "   - syslog message"]
      set body [format "%s\n%s" "$body" "   - summary of interface(s) in an up/down state"]
      set body [format "%s\n%s" "$body" "   - show ip route $remote_peer"]
      set body [format "%s\n%s" "$body" "   - show crypto isakmp sa"]
      set body [format "%s\n%s" "$body" "   - show crypto session detail"]
      set body [format "%s\n%s" "$body" "   - show crypto engine connection active"]
      set body [format "%s\n%s" "$body" "   - show ip nhrp detail (DMVPN only)"]
      set body [format "%s\n%s" "$body" "   - show log"]
      set body [format "%s\n\n%s" "$body" "---------- syslog message ----------"]
      set body [format "%s\n%s" "$body" "$syslog_msg"]
      set body [format "%s\n\n%s" "$body" "---------- summary of interface(s) in an up/down state ----------"]
      set body [format "%s\n\n%s" "$body" "$show_ip_interface_brief_up_down"]
      set body [format "%s\n\n%s" "$body" "---------- show ip route $remote_peer ----------"]
      set body [format "%s\n\n%s" "$body" "$show_ip_route"]
      set body [format "%s\n\n%s" "$body" "---------- show crypto isakmp sa ----------"]
      set body [format "%s\n\n%s" "$body" "$show_crypto_isakmp_sa"]
      set body [format "%s\n\n%s" "$body" "---------- show crypto session detail ----------"]
      set body [format "%s\n\n%s" "$body" "$show_crypto_session_detail"]
      set body [format "%s\n\n%s" "$body" "---------- show crypto engine connection active ----------"]
      set body [format "%s\n\n%s" "$body" "$show_crypto_engine_connection_active"]
      set body [format "%s\n\n%s" "$body" "---------- show ip nhrp detail (DMVPN only) ----------"]
      set body [format "%s\n\n%s" "$body" "$show_ip_nhrp_detail"]
      set body [format "%s\n\n%s" "$body" "---------- show log ----------"]
      set body [format "%s\n\n%s" "$body" "$show_log"]
      if [catch {smtp_send_email $body} result] {
        action_syslog msg "smtp_send_email: $result"

    I got this far, saw the MAXRUN error, bumped that out and then turned on debugging. I am still not connecting to the mail server. So I don't think I am reaching the mail server yet. I don't think it is using the sourceinterface. In debugging everyting in the script works except for the mail portion.
    Jul 29 16:01:00.334: %HA_EM-6-LOG: vpn_failure.tcl: Creating mail header for vpn_failure.tcl script...
    Jul 29 16:02:36.464: %HA_EM-6-LOG: vpn_failure.tcl: Process Forced Exit- MAXRUN timer expired.
    Jul 29 16:02:36.464: %HA_EM-6-LOG: vpn_failure.tcl:     while executing
    Jul 29 16:02:36.464: %HA_EM-6-LOG: vpn_failure.tcl: "action_syslog msg "smtp_send_email: $result""
    Jul 29 16:02:36.464: %HA_EM-6-LOG: vpn_failure.tcl:     invoked from within
    Jul 29 16:02:36.464: %HA_EM-6-LOG: vpn_failure.tcl: "$slave eval $Contents"
    Jul 29 16:02:36.464: %HA_EM-6-LOG: vpn_failure.tcl:     (procedure "eval_script" line 7)
    Jul 29 16:02:36.464: %HA_EM-6-LOG: vpn_failure.tcl:     invoked from within
    Jul 29 16:02:36.464: %HA_EM-6-LOG: vpn_failure.tcl: "eval_script slave $scriptname"
    Jul 29 16:02:36.464: %HA_EM-6-LOG: vpn_failure.tcl:     invoked from within
    Jul 29 16:02:36.464: %HA_EM-6-LOG: vpn_failure.tcl: "if {$security_level == 1} {       #untrusted script
    Jul 29 16:02:36.464: %HA_EM-6-LOG: vpn_failure.tcl:      interp create -safe slave
    Jul 29 16:02:36.464: %HA_EM-6-LOG: vpn_failure.tcl:      interp share {} stdin slave
    Jul 29 16:02:36.464: %HA_EM-6-LOG: vpn_failure.tcl:      interp share {} stdout slave
    Jul 29 16:02:36.464: %HA_EM-6-LOG: vpn_failure.tcl: ..."
    Jul 29 16:02:36.464: %HA_EM-6-LOG: vpn_failure.tcl:     (file "tmpsys:/lib/tcl/base.tcl" line 50)
    Jul 29 16:02:36.465: %HA_EM-6-LOG: vpn_failure.tcl: Tcl policy execute failed:
    Jul 29 16:02:36.465: %HA_EM-6-LOG: vpn_failure.tcl: Process Forced Exit- MAXRUN timer expired.
    Debugging On:
    Jul 29 16:28:51.471: [fh_smtp_debug_cmd]
    Jul 29 16:28:51.472: %HA_EM-6-LOG: vpn_failure.tcl : DEBUG(smtp_lib) : smtp_connect : attempt 2
    Jul 29 16:29:24.473: [fh_smtp_debug_cmd]
    Jul 29 16:29:24.473: %HA_EM-6-LOG: vpn_failure.tcl : DEBUG(smtp_lib) : smtp_connect : attempt 3
    Jul 29 16:29:57.475: [fh_smtp_debug_cmd]
    Jul 29 16:29:57.475: %HA_EM-6-LOG: vpn_failure.tcl : DEBUG(smtp_lib) : smtp_connect : attempt 4
    Jul 29 16:30:30.478: [fh_smtp_debug_cmd]
    Jul 29 16:30:30.479: %HA_EM-6-LOG: vpn_failure.tcl : DEBUG(smtp_lib) : smtp_connect : attempt 5
    Jul 29 16:31:00.482: %HA_EM-6-LOG: vpn_failure.tcl: smtp_send_email: error connecting to mail server:
    cannot connect to all the candidate mail servers
    Jul 29 16:31:00.483: %HA_EM-6-LOG: vpn_failure.tcl: vpn_failure.tcl script completed
    event manager environment _email_server 10.79.1.126
    event manager environment _email_from [email protected]
    event manager environment _email_to [email protected]
    interface Port-channel1.101
    description MGMT-1
    encapsulation dot1Q 101
    vrf forwarding MGMT-1
    ip address 10.79.1.252 255.255.255.0
    ip nat inside
    ip virtual-reassembly
    redundancy rii 101
    redundancy group 2 ip 10.79.1.254 exclusive decrement 10
    end
    #----------------------- send mail ----------------------
    # create mail form
      action_syslog msg "Creating mail header for vpn_failure.tcl script..."
      set body [format "Mailservername: %s" "$_email_server"]
      set body [format "%s\nFrom: %s" "$body" "$_email_from"]
      set body [format "%s\nTo: %s" "$body" "$_email_to"]
      set _email_cc ""
      set body [format "%s\nCc: %s" "$body" "[email protected]"]
      set body [format "%s\nSourceintf: %s" "$body" "port-channel1.101"]
      set body [format "%s\nSubject: %s\n" "$body" "VPN Failure Detected: Router $routername Crypto tunnel is DOWN. Peer $remote_peer"]
      set body [format "%s\n%s" "$body" "Report Summary:"]
      set body [format "%s\n%s" "$body" "   - syslog message"]
      set body [format "%s\n%s" "$body" "   - summary of interface(s) in an up/down state"]
      set body [format "%s\n%s" "$body" "   - show ip route $remote_peer"]
      set body [format "%s\n%s" "$body" "   - show crypto isakmp sa"]
      set body [format "%s\n%s" "$body" "   - show crypto session detail"]
      set body [format "%s\n%s" "$body" "   - show crypto engine connection active"]
      set body [format "%s\n%s" "$body" "   - show ip nhrp detail (DMVPN only)"]
      set body [format "%s\n%s" "$body" "   - show log"]
      set body [format "%s\n\n%s" "$body" "---------- syslog message ----------"]
      set body [format "%s\n%s" "$body" "$syslog_msg"]
      set body [format "%s\n\n%s" "$body" "---------- summary of interface(s) in an up/down state ----------"]
      set body [format "%s\n\n%s" "$body" "$show_ip_interface_brief_up_down"]
      set body [format "%s\n\n%s" "$body" "---------- show ip route $remote_peer ----------"]
      set body [format "%s\n\n%s" "$body" "$show_ip_route"]
      set body [format "%s\n\n%s" "$body" "---------- show crypto isakmp sa ----------"]
      set body [format "%s\n\n%s" "$body" "$show_crypto_isakmp_sa"]
      set body [format "%s\n\n%s" "$body" "---------- show crypto session detail ----------"]
      set body [format "%s\n\n%s" "$body" "$show_crypto_session_detail"]
      set body [format "%s\n\n%s" "$body" "---------- show crypto engine connection active ----------"]
      set body [format "%s\n\n%s" "$body" "$show_crypto_engine_connection_active"]
      set body [format "%s\n\n%s" "$body" "---------- show ip nhrp detail (DMVPN only) ----------"]
      set body [format "%s\n\n%s" "$body" "$show_ip_nhrp_detail"]
      set body [format "%s\n\n%s" "$body" "---------- show log ----------"]
      set body [format "%s\n\n%s" "$body" "$show_log"]
      if [catch {smtp_send_email $body} result] {
        action_syslog msg "smtp_send_email: $result"
      action_syslog msg "vpn_failure.tcl script completed"
    #------------------ end of send mail --------------------

  • Shutdown Ports not in use for a while with EEM Tcl

    I have downloaded these 2 Tcl scripts from this previous discussion and from the sounds of it it's exactly what I've been looking for. But the problem is I'm new to EEM and have no idea how to go about putting these on the switches themselves. I've searched for configuration guides but to no prevail. Any help is greatly appreciated. Here's the link to previous discussion:
    https://supportforums.cisco.com/thread/164684.pdf;jsessionid=EEEEE143342DAAB34706D608D5C4C920.node0

    Here's the output from running the script. Below that is the log file.
    XXX: Looking at iface FastEthernet1/0/1
    XXX: line 'FastEthernet1/0/1 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/1 not found in array
    XXX: Looking at iface FastEthernet1/0/2
    XXX: line 'FastEthernet1/0/2 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/2 not found in array
    XXX: Looking at iface FastEthernet1/0/3
    XXX: line 'FastEthernet1/0/3 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/3 not found in array
    XXX: Adding FastEthernet1/0/3 to ports array
    XXX: Looking at iface FastEthernet1/0/4
    XXX: line 'FastEthernet1/0/4 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/4 not found in array
    XXX: Looking at iface FastEthernet1/0/5
    XXX: line 'FastEthernet1/0/5 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/5 not found in array
    XXX: Looking at iface FastEthernet1/0/6
    XXX: line 'FastEthernet1/0/6 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/6 not found in array
    XXX: Adding FastEthernet1/0/6 to ports array
    XXX: Looking at iface FastEthernet1/0/7
    XXX: line 'FastEthernet1/0/7 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/7 not found in array
    XXX: Looking at iface FastEthernet1/0/8
    XXX: line 'FastEthernet1/0/8 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/8 not found in array
    XXX: Looking at iface FastEthernet1/0/9
    XXX: line 'FastEthernet1/0/9 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/9 not found in array
    XXX: Looking at iface FastEthernet1/0/10
    XXX: line 'FastEthernet1/0/10 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/10 not found in array
    XXX: Looking at iface FastEthernet1/0/11
    XXX: line 'FastEthernet1/0/11 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/11 not found in array
    XXX: Looking at iface FastEthernet1/0/12
    XXX: line 'FastEthernet1/0/12 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/12 not found in array
    XXX: Adding FastEthernet1/0/12 to ports array
    XXX: Looking at iface FastEthernet1/0/13
    XXX: line 'FastEthernet1/0/13 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/13 not found in array
    XXX: Adding FastEthernet1/0/13 to ports array
    XXX: Looking at iface FastEthernet1/0/14
    XXX: line 'FastEthernet1/0/14 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/14 not found in array
    XXX: Looking at iface FastEthernet1/0/15
    XXX: line 'FastEthernet1/0/15 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/15 not found in array
    XXX: Looking at iface FastEthernet1/0/16
    XXX: line 'FastEthernet1/0/16 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/16 not found in array
    XXX: Looking at iface FastEthernet1/0/17
    XXX: line 'FastEthernet1/0/17 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/17 not found in array
    XXX: Looking at iface FastEthernet1/0/18
    XXX: line 'FastEthernet1/0/18 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/18 not found in array
    XXX: Looking at iface FastEthernet1/0/19
    XXX: line 'FastEthernet1/0/19 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/19 not found in array
    XXX: Adding FastEthernet1/0/19 to ports array
    XXX: Looking at iface FastEthernet1/0/20
    XXX: line 'FastEthernet1/0/20 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/20 not found in array
    XXX: Adding FastEthernet1/0/20 to ports array
    XXX: Looking at iface FastEthernet1/0/21
    XXX: line 'FastEthernet1/0/21 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/21 not found in array
    XXX: Adding FastEthernet1/0/21 to ports array
    XXX: Looking at iface FastEthernet1/0/22
    XXX: line 'FastEthernet1/0/22 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/22 not found in array
    XXX: Looking at iface FastEthernet1/0/23
    XXX: line 'FastEthernet1/0/23 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/23 not found in array
    XXX: Adding FastEthernet1/0/23 to ports array
    XXX: Looking at iface FastEthernet1/0/24
    XXX: line 'FastEthernet1/0/24 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/24 not found in array
    XXX: Adding FastEthernet1/0/24 to ports array
    XXX: Looking at iface FastEthernet1/0/25
    XXX: line 'FastEthernet1/0/25 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/25 not found in array
    XXX: Adding FastEthernet1/0/25 to ports array
    XXX: Looking at iface FastEthernet1/0/26
    XXX: line 'FastEthernet1/0/26 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/26 not found in array
    XXX: Looking at iface FastEthernet1/0/27
    XXX: line 'FastEthernet1/0/27 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/27 not found in array
    XXX: Looking at iface FastEthernet1/0/28
    XXX: line 'FastEthernet1/0/28 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/28 not found in array
    XXX: Looking at iface FastEthernet1/0/29
    XXX: line 'FastEthernet1/0/29 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/29 not found in array
    XXX: Adding FastEthernet1/0/29 to ports array
    XXX: Looking at iface FastEthernet1/0/30
    XXX: line 'FastEthernet1/0/30 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/30 not found in array
    XXX: Adding FastEthernet1/0/30 to ports array
    XXX: Looking at iface FastEthernet1/0/31
    XXX: line 'FastEthernet1/0/31 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/31 not found in array
    XXX: Adding FastEthernet1/0/31 to ports array
    XXX: Looking at iface FastEthernet1/0/32
    XXX: line 'FastEthernet1/0/32 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/32 not found in array
    XXX: Adding FastEthernet1/0/32 to ports array
    XXX: Looking at iface FastEthernet1/0/33
    XXX: line 'FastEthernet1/0/33 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/33 not found in array
    XXX: Looking at iface FastEthernet1/0/34
    XXX: line 'FastEthernet1/0/34 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/34 not found in array
    XXX: Looking at iface FastEthernet1/0/35
    XXX: line 'FastEthernet1/0/35 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/35 not found in array
    XXX: Looking at iface FastEthernet1/0/36
    XXX: line 'FastEthernet1/0/36 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/36 not found in array
    XXX: Adding FastEthernet1/0/36 to ports array
    XXX: Looking at iface FastEthernet1/0/37
    XXX: line 'FastEthernet1/0/37 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/37 not found in array
    XXX: Looking at iface FastEthernet1/0/38
    XXX: line 'FastEthernet1/0/38 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/38 not found in array
    XXX: Adding FastEthernet1/0/38 to ports array
    XXX: Looking at iface FastEthernet1/0/39
    XXX: line 'FastEthernet1/0/39 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/39 not found in array
    XXX: Adding FastEthernet1/0/39 to ports array
    XXX: Looking at iface FastEthernet1/0/40
    XXX: line 'FastEthernet1/0/40 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/40 not found in array
    XXX: Adding FastEthernet1/0/40 to ports array
    XXX: Looking at iface FastEthernet1/0/41
    XXX: line 'FastEthernet1/0/41 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/41 not found in array
    XXX: Looking at iface FastEthernet1/0/42
    XXX: line 'FastEthernet1/0/42 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/42 not found in array
    XXX: Adding FastEthernet1/0/42 to ports array
    XXX: Looking at iface FastEthernet1/0/43
    XXX: line 'FastEthernet1/0/43 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/43 not found in array
    XXX: Adding FastEthernet1/0/43 to ports array
    XXX: Looking at iface FastEthernet1/0/44
    XXX: line 'FastEthernet1/0/44 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/44 not found in array
    XXX: Looking at iface FastEthernet1/0/45
    XXX: line 'FastEthernet1/0/45 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/45 not found in array
    XXX: Looking at iface FastEthernet1/0/46
    XXX: line 'FastEthernet1/0/46 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/46 not found in array
    XXX: Adding FastEthernet1/0/46 to ports array
    XXX: Looking at iface FastEthernet1/0/47
    XXX: line 'FastEthernet1/0/47 unassigned YES unset up up' is up
    XXX: FastEthernet1/0/47 not found in array
    XXX: Looking at iface FastEthernet1/0/48
    XXX: line 'FastEthernet1/0/48 unassigned YES unset down down' is down
    XXX: FastEthernet1/0/48 not found in array
    XXX: Adding FastEthernet1/0/48 to ports array
    XXX: Looking at iface GigabitEthernet1/0/1
    XXX: line 'GigabitEthernet1/0/1 unassigned YES unset up up' is up
    XXX: GigabitEthernet1/0/1 not found in array
    XXX: Looking at iface GigabitEthernet1/0/2
    XXX: line 'GigabitEthernet1/0/2 unassigned YES unset administratively down down' is admin down
    XXX: GigabitEthernet1/0/2 not found in array
    XXX: Looking at iface GigabitEthernet1/0/3
    XXX: line 'GigabitEthernet1/0/3 unassigned YES unset administratively down down' is admin down
    XXX: GigabitEthernet1/0/3 not found in array
    XXX: Looking at iface GigabitEthernet1/0/4
    XXX: line 'GigabitEthernet1/0/4 unassigned YES unset administratively down down' is admin down
    XXX: GigabitEthernet1/0/4 not found in array
    XXX: Looking at iface FastEthernet2/0/1
    XXX: line 'FastEthernet2/0/1 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/1 not found in array
    XXX: Adding FastEthernet2/0/1 to ports array
    XXX: Looking at iface FastEthernet2/0/2
    XXX: line 'FastEthernet2/0/2 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/2 not found in array
    XXX: Adding FastEthernet2/0/2 to ports array
    XXX: Looking at iface FastEthernet2/0/3
    XXX: line 'FastEthernet2/0/3 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/3 not found in array
    XXX: Adding FastEthernet2/0/3 to ports array
    XXX: Looking at iface FastEthernet2/0/4
    XXX: line 'FastEthernet2/0/4 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/4 not found in array
    XXX: Adding FastEthernet2/0/4 to ports array
    XXX: Looking at iface FastEthernet2/0/5
    XXX: line 'FastEthernet2/0/5 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/5 not found in array
    XXX: Adding FastEthernet2/0/5 to ports array
    XXX: Looking at iface FastEthernet2/0/6
    XXX: line 'FastEthernet2/0/6 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/6 not found in array
    XXX: Adding FastEthernet2/0/6 to ports array
    XXX: Looking at iface FastEthernet2/0/7
    XXX: line 'FastEthernet2/0/7 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/7 not found in array
    XXX: Adding FastEthernet2/0/7 to ports array
    XXX: Looking at iface FastEthernet2/0/8
    XXX: line 'FastEthernet2/0/8 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/8 not found in array
    XXX: Adding FastEthernet2/0/8 to ports array
    XXX: Looking at iface FastEthernet2/0/9
    XXX: line 'FastEthernet2/0/9 unassigned YES unset up up' is up
    XXX: FastEthernet2/0/9 not found in array
    XXX: Looking at iface FastEthernet2/0/10
    XXX: line 'FastEthernet2/0/10 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/10 not found in array
    XXX: Adding FastEthernet2/0/10 to ports array
    XXX: Looking at iface FastEthernet2/0/11
    XXX: line 'FastEthernet2/0/11 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/11 not found in array
    XXX: Adding FastEthernet2/0/11 to ports array
    XXX: Looking at iface FastEthernet2/0/12
    XXX: line 'FastEthernet2/0/12 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/12 not found in array
    XXX: Adding FastEthernet2/0/12 to ports array
    XXX: Looking at iface FastEthernet2/0/13
    XXX: line 'FastEthernet2/0/13 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/13 not found in array
    XXX: Adding FastEthernet2/0/13 to ports array
    XXX: Looking at iface FastEthernet2/0/14
    XXX: line 'FastEthernet2/0/14 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/14 not found in array
    XXX: Adding FastEthernet2/0/14 to ports array
    XXX: Looking at iface FastEthernet2/0/15
    XXX: line 'FastEthernet2/0/15 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/15 not found in array
    XXX: Adding FastEthernet2/0/15 to ports array
    XXX: Looking at iface FastEthernet2/0/16
    XXX: line 'FastEthernet2/0/16 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/16 not found in array
    XXX: Adding FastEthernet2/0/16 to ports array
    XXX: Looking at iface FastEthernet2/0/17
    XXX: line 'FastEthernet2/0/17 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/17 not found in array
    XXX: Adding FastEthernet2/0/17 to ports array
    XXX: Looking at iface FastEthernet2/0/18
    XXX: line 'FastEthernet2/0/18 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/18 not found in array
    XXX: Adding FastEthernet2/0/18 to ports array
    XXX: Looking at iface FastEthernet2/0/19
    XXX: line 'FastEthernet2/0/19 unassigned YES unset up up' is up
    XXX: FastEthernet2/0/19 not found in array
    XXX: Looking at iface FastEthernet2/0/20
    XXX: line 'FastEthernet2/0/20 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/20 not found in array
    XXX: Adding FastEthernet2/0/20 to ports array
    XXX: Looking at iface FastEthernet2/0/21
    XXX: line 'FastEthernet2/0/21 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/21 not found in array
    XXX: Adding FastEthernet2/0/21 to ports array
    XXX: Looking at iface FastEthernet2/0/22
    XXX: line 'FastEthernet2/0/22 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/22 not found in array
    XXX: Adding FastEthernet2/0/22 to ports array
    XXX: Looking at iface FastEthernet2/0/23
    XXX: line 'FastEthernet2/0/23 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/23 not found in array
    XXX: Adding FastEthernet2/0/23 to ports array
    XXX: Looking at iface FastEthernet2/0/24
    XXX: line 'FastEthernet2/0/24 unassigned YES unset up up' is up
    XXX: FastEthernet2/0/24 not found in array
    XXX: Looking at iface FastEthernet2/0/25
    XXX: line 'FastEthernet2/0/25 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/25 not found in array
    XXX: Adding FastEthernet2/0/25 to ports array
    XXX: Looking at iface FastEthernet2/0/26
    XXX: line 'FastEthernet2/0/26 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/26 not found in array
    XXX: Adding FastEthernet2/0/26 to ports array
    XXX: Looking at iface FastEthernet2/0/27
    XXX: line 'FastEthernet2/0/27 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/27 not found in array
    XXX: Adding FastEthernet2/0/27 to ports array
    XXX: Looking at iface FastEthernet2/0/28
    XXX: line 'FastEthernet2/0/28 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/28 not found in array
    XXX: Adding FastEthernet2/0/28 to ports array
    XXX: Looking at iface FastEthernet2/0/29
    XXX: line 'FastEthernet2/0/29 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/29 not found in array
    XXX: Adding FastEthernet2/0/29 to ports array
    XXX: Looking at iface FastEthernet2/0/30
    XXX: line 'FastEthernet2/0/30 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/30 not found in array
    XXX: Adding FastEthernet2/0/30 to ports array
    XXX: Looking at iface FastEthernet2/0/31
    XXX: line 'FastEthernet2/0/31 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/31 not found in array
    XXX: Adding FastEthernet2/0/31 to ports array
    XXX: Looking at iface FastEthernet2/0/32
    XXX: line 'FastEthernet2/0/32 unassigned YES unset up up' is up
    XXX: FastEthernet2/0/32 not found in array
    XXX: Looking at iface FastEthernet2/0/33
    XXX: line 'FastEthernet2/0/33 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/33 not found in array
    XXX: Adding FastEthernet2/0/33 to ports array
    XXX: Looking at iface FastEthernet2/0/34
    XXX: line 'FastEthernet2/0/34 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/34 not found in array
    XXX: Adding FastEthernet2/0/34 to ports array
    XXX: Looking at iface FastEthernet2/0/35
    XXX: line 'FastEthernet2/0/35 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/35 not found in array
    XXX: Adding FastEthernet2/0/35 to ports array
    XXX: Looking at iface FastEthernet2/0/36
    XXX: line 'FastEthernet2/0/36 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/36 not found in array
    XXX: Adding FastEthernet2/0/36 to ports array
    XXX: Looking at iface FastEthernet2/0/37
    XXX: line 'FastEthernet2/0/37 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/37 not found in array
    XXX: Adding FastEthernet2/0/37 to ports array
    XXX: Looking at iface FastEthernet2/0/38
    XXX: line 'FastEthernet2/0/38 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/38 not found in array
    XXX: Adding FastEthernet2/0/38 to ports array
    XXX: Looking at iface FastEthernet2/0/39
    XXX: line 'FastEthernet2/0/39 unassigned YES unset up up' is up
    XXX: FastEthernet2/0/39 not found in array
    XXX: Looking at iface FastEthernet2/0/40
    XXX: line 'FastEthernet2/0/40 unassigned YES unset up up' is up
    XXX: FastEthernet2/0/40 not found in array
    XXX: Looking at iface FastEthernet2/0/41
    XXX: line 'FastEthernet2/0/41 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/41 not found in array
    XXX: Adding FastEthernet2/0/41 to ports array
    XXX: Looking at iface FastEthernet2/0/42
    XXX: line 'FastEthernet2/0/42 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/42 not found in array
    XXX: Adding FastEthernet2/0/42 to ports array
    XXX: Looking at iface FastEthernet2/0/43
    XXX: line 'FastEthernet2/0/43 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/43 not found in array
    XXX: Adding FastEthernet2/0/43 to ports array
    XXX: Looking at iface FastEthernet2/0/44
    XXX: line 'FastEthernet2/0/44 unassigned YES unset down down' is down
    XXX: FastEthernet2/0/44 not found in array
    XXX: Adding FastEthernet2/0/44 to ports array
    XXX: Looking at iface FastEthernet2/0/45
    XXX: line 'FastEthernet2/0/45 unassigned YES unset up up' is up
    XXX: FastEthernet2/0/45 not found in array
    XXX: Looking at iface FastEthernet2/0/46
    XXX: line 'FastEthernet2/0/46 unassigned YES unset up up' is up
    XXX: FastEthernet2/0/46 not found in array
    XXX: Looking at iface FastEthernet2/0/47
    XXX: line 'FastEthernet2/0/47 unassigned YES unset up up' is up
    XXX: FastEthernet2/0/47 not found in array
    XXX: Looking at iface FastEthernet2/0/48
    XXX: line 'FastEthernet2/0/48 unassigned YES unset up up' is up
    XXX: FastEthernet2/0/48 not found in array
    XXX: Looking at iface GigabitEthernet2/0/1
    XXX: line 'GigabitEthernet2/0/1 unassigned YES unset administratively down down' is admin down
    XXX: GigabitEthernet2/0/1 not found in array
    XXX: Looking at iface GigabitEthernet2/0/2
    XXX: line 'GigabitEthernet2/0/2 unassigned YES unset administratively down down' is admin down
    XXX: GigabitEthernet2/0/2 not found in array
    XXX: Looking at iface GigabitEthernet2/0/3
    XXX: line 'GigabitEthernet2/0/3 unassigned YES unset administratively down down' is admin down
    XXX: GigabitEthernet2/0/3 not found in array
    XXX: Looking at iface GigabitEthernet2/0/4
    XXX: line 'GigabitEthernet2/0/4 unassigned YES unset administratively down down' is admin down
    XXX: GigabitEthernet2/0/4 not found in array
    XXX: Looking at iface FastEthernet3/0/1
    XXX: line 'FastEthernet3/0/1 unassigned YES unset up up' is up
    XXX: FastEthernet3/0/1 not found in array
    XXX: Looking at iface FastEthernet3/0/2
    XXX: line 'FastEthernet3/0/2 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/2 not found in array
    XXX: Adding FastEthernet3/0/2 to ports array
    XXX: Looking at iface FastEthernet3/0/3
    XXX: line 'FastEthernet3/0/3 unassigned YES unset up up' is up
    XXX: FastEthernet3/0/3 not found in array
    XXX: Looking at iface FastEthernet3/0/4
    XXX: line 'FastEthernet3/0/4 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/4 not found in array
    XXX: Adding FastEthernet3/0/4 to ports array
    XXX: Looking at iface FastEthernet3/0/5
    XXX: line 'FastEthernet3/0/5 unassigned YES unset up up' is up
    XXX: FastEthernet3/0/5 not found in array
    XXX: Looking at iface FastEthernet3/0/6
    XXX: line 'FastEthernet3/0/6 unassigned YES unset up up' is up
    XXX: FastEthernet3/0/6 not found in array
    XXX: Looking at iface FastEthernet3/0/7
    XXX: line 'FastEthernet3/0/7 unassigned YES unset up up' is up
    XXX: FastEthernet3/0/7 not found in array
    XXX: Looking at iface FastEthernet3/0/8
    XXX: line 'FastEthernet3/0/8 unassigned YES unset up up' is up
    XXX: FastEthernet3/0/8 not found in array
    XXX: Looking at iface FastEthernet3/0/9
    XXX: line 'FastEthernet3/0/9 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/9 not found in array
    XXX: Adding FastEthernet3/0/9 to ports array
    XXX: Looking at iface FastEthernet3/0/10
    XXX: line 'FastEthernet3/0/10 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/10 not found in array
    XXX: Adding FastEthernet3/0/10 to ports array
    XXX: Looking at iface FastEthernet3/0/11
    XXX: line 'FastEthernet3/0/11 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/11 not found in array
    XXX: Adding FastEthernet3/0/11 to ports array
    XXX: Looking at iface FastEthernet3/0/12
    XXX: line 'FastEthernet3/0/12 unassigned YES unset up up' is up
    XXX: FastEthernet3/0/12 not found in array
    XXX: Looking at iface FastEthernet3/0/13
    XXX: line 'FastEthernet3/0/13 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/13 not found in array
    XXX: Adding FastEthernet3/0/13 to ports array
    XXX: Looking at iface FastEthernet3/0/14
    XXX: line 'FastEthernet3/0/14 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/14 not found in array
    XXX: Adding FastEthernet3/0/14 to ports array
    XXX: Looking at iface FastEthernet3/0/15
    XXX: line 'FastEthernet3/0/15 unassigned YES unset up up' is up
    XXX: FastEthernet3/0/15 not found in array
    XXX: Looking at iface FastEthernet3/0/16
    XXX: line 'FastEthernet3/0/16 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/16 not found in array
    XXX: Adding FastEthernet3/0/16 to ports array
    XXX: Looking at iface FastEthernet3/0/17
    XXX: line 'FastEthernet3/0/17 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/17 not found in array
    XXX: Adding FastEthernet3/0/17 to ports array
    XXX: Looking at iface FastEthernet3/0/18
    XXX: line 'FastEthernet3/0/18 unassigned YES unset up up' is up
    XXX: FastEthernet3/0/18 not found in array
    XXX: Looking at iface FastEthernet3/0/19
    XXX: line 'FastEthernet3/0/19 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/19 not found in array
    XXX: Adding FastEthernet3/0/19 to ports array
    XXX: Looking at iface FastEthernet3/0/20
    XXX: line 'FastEthernet3/0/20 unassigned YES unset up up' is up
    XXX: FastEthernet3/0/20 not found in array
    XXX: Looking at iface FastEthernet3/0/21
    XXX: line 'FastEthernet3/0/21 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/21 not found in array
    XXX: Adding FastEthernet3/0/21 to ports array
    XXX: Looking at iface FastEthernet3/0/22
    XXX: line 'FastEthernet3/0/22 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/22 not found in array
    XXX: Adding FastEthernet3/0/22 to ports array
    XXX: Looking at iface FastEthernet3/0/23
    XXX: line 'FastEthernet3/0/23 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/23 not found in array
    XXX: Adding FastEthernet3/0/23 to ports array
    XXX: Looking at iface FastEthernet3/0/24
    XXX: line 'FastEthernet3/0/24 unassigned YES unset up up' is up
    XXX: FastEthernet3/0/24 not found in array
    XXX: Looking at iface FastEthernet3/0/25
    XXX: line 'FastEthernet3/0/25 unassigned YES unset up up' is up
    XXX: FastEthernet3/0/25 not found in array
    XXX: Looking at iface FastEthernet3/0/26
    XXX: line 'FastEthernet3/0/26 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/26 not found in array
    XXX: Adding FastEthernet3/0/26 to ports array
    XXX: Looking at iface FastEthernet3/0/27
    XXX: line 'FastEthernet3/0/27 unassigned YES unset up up' is up
    XXX: FastEthernet3/0/27 not found in array
    XXX: Looking at iface FastEthernet3/0/28
    XXX: line 'FastEthernet3/0/28 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/28 not found in array
    XXX: Adding FastEthernet3/0/28 to ports array
    XXX: Looking at iface FastEthernet3/0/29
    XXX: line 'FastEthernet3/0/29 unassigned YES unset up up' is up
    XXX: FastEthernet3/0/29 not found in array
    XXX: Looking at iface FastEthernet3/0/30
    XXX: line 'FastEthernet3/0/30 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/30 not found in array
    XXX: Adding FastEthernet3/0/30 to ports array
    XXX: Looking at iface FastEthernet3/0/31
    XXX: line 'FastEthernet3/0/31 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/31 not found in array
    XXX: Adding FastEthernet3/0/31 to ports array
    XXX: Looking at iface FastEthernet3/0/32
    XXX: line 'FastEthernet3/0/32 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/32 not found in array
    XXX: Adding FastEthernet3/0/32 to ports array
    XXX: Looking at iface FastEthernet3/0/33
    XXX: line 'FastEthernet3/0/33 unassigned YES unset up up' is up
    XXX: FastEthernet3/0/33 not found in array
    XXX: Looking at iface FastEthernet3/0/34
    XXX: line 'FastEthernet3/0/34 unassigned YES unset up up' is up
    XXX: FastEthernet3/0/34 not found in array
    XXX: Looking at iface FastEthernet3/0/35
    XXX: line 'FastEthernet3/0/35 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/35 not found in array
    XXX: Adding FastEthernet3/0/35 to ports array
    XXX: Looking at iface FastEthernet3/0/36
    XXX: line 'FastEthernet3/0/36 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/36 not found in array
    XXX: Adding FastEthernet3/0/36 to ports array
    XXX: Looking at iface FastEthernet3/0/37
    XXX: line 'FastEthernet3/0/37 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/37 not found in array
    XXX: Adding FastEthernet3/0/37 to ports array
    XXX: Looking at iface FastEthernet3/0/38
    XXX: line 'FastEthernet3/0/38 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/38 not found in array
    XXX: Adding FastEthernet3/0/38 to ports array
    XXX: Looking at iface FastEthernet3/0/39
    XXX: line 'FastEthernet3/0/39 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/39 not found in array
    XXX: Adding FastEthernet3/0/39 to ports array
    XXX: Looking at iface FastEthernet3/0/40
    XXX: line 'FastEthernet3/0/40 unassigned YES unset up up' is up
    XXX: FastEthernet3/0/40 not found in array
    XXX: Looking at iface FastEthernet3/0/41
    XXX: line 'FastEthernet3/0/41 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/41 not found in array
    XXX: Adding FastEthernet3/0/41 to ports array
    XXX: Looking at iface FastEthernet3/0/42
    XXX: line 'FastEthernet3/0/42 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/42 not found in array
    XXX: Adding FastEthernet3/0/42 to ports array
    XXX: Looking at iface FastEthernet3/0/43
    XXX: line 'FastEthernet3/0/43 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/43 not found in array
    XXX: Adding FastEthernet3/0/43 to ports array
    XXX: Looking at iface FastEthernet3/0/44
    XXX: line 'FastEthernet3/0/44 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/44 not found in array
    XXX: Adding FastEthernet3/0/44 to ports array
    XXX: Looking at iface FastEthernet3/0/45
    XXX: line 'FastEthernet3/0/45 unassigned YES unset up up' is up
    XXX: FastEthernet3/0/45 not found in array
    XXX: Looking at iface FastEthernet3/0/46
    XXX: line 'FastEthernet3/0/46 unassigned YES unset up up' is up
    XXX: FastEthernet3/0/46 not found in array
    XXX: Looking at iface FastEthernet3/0/47
    XXX: line 'FastEthernet3/0/47 unassigned YES unset down down' is down
    XXX: FastEthernet3/0/47 not found in array
    XXX: Adding FastEthernet3/0/47 to ports array
    1287181296Process Forced Exit- MAXRUN timer expired.
        ("foreach" body line 1)
        invoked from within
    "foreach line [split $result "\n"] {
        set line [string trim $line]
        regsub -all {\s+} $line " " line
        set elems [split $line]
        set iface [l..."
        invoked from within
    "$slave eval $Contents"
        (procedure "eval_script" line 7)
        invoked from within
    "eval_script slave $scriptname"
        invoked from within
    "if {$security_level == 1} {       #untrusted script
         interp create -safe slave
         interp share {} stdin slave
         interp share {} stdout slave
        (file "tmpsys:/lib/tcl/base.tcl" line 50)
    Tcl policy execute failed: 1287181296Process Forced Exit- MAXRUN timer expired.
    LOG FILE:
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : OUT : FastEthernet1/0/1      unassigned      YES unset  up                    up   
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : OUT : FastEthernet1/0/2      unassigned      YES unset  up                    up    
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : OUT : FastEthernet1/0/3      unassigned      YES unset  down                  down  
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : OUT : FastEthernet1/0/4      unassigned      YES unset  up                    up    
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : OUT : FastEthernet1/0/5      unassigned      YES unset  up                    up    
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : OUT : FastEthernet1/0/6      unassigned      YES unset  down                  down  
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : OUT : FastEthernet1/0/7      unassigned      YES unset  up                    up    
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : OUT : FastEthernet1/0/8      unassigned      YES unset  up                    up    
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : OUT : FastEthernet1/0/9      unassigned      YES unset  up                    up    
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : OUT : FastEthernet1/0/10     unassigned      YES unset  up                    up    
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : OUT : FastEthernet1/0/11     unassigned      YES unset  up                    up    
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : OUT : FastEthernet1/0/12     unassigned      YES unset  down                  down 
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : OUT : FastEthernet1/0/13     unassigned      YES unset  down                  down  
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : OUT : FastEthernet1/0/14     unassigned      YES unset  up                    up    
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : OUT : FastEthernet1/0/15     unassigned      YES unset  up                    up    
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : OUT : FastEthernet1/0/16     unassigned      YES unset  up                    up    
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : OUT : FastEthernet1/0/17     unassigned      YES unset  up                    up    
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : OUT : FastEthernet1/0/18     unassigned      YES unset  up                    up    
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : OUT : FastEthernet1/0/19     unassigned      YES unset  down                  down  
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : OUT : FastEthernet1/0/20     unassigned      YES unset  down                  down  
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : CTL : 20+ lines read from cli_read, debug output truncated.
    Oct 16 08:21:37: %HA_EM-6-LOG: tm_suspend_ports2.tcl : DEBUG(cli_lib) : CTL : cli_close called.
    I have a feeling its truncating the good stuff. Is there a way to make it output everything and not truncate the rest of the lines or is that what the onscreen stuff from above is?

  • Reading the Facility Callername from a tcl script

    I am looking for a way to read the Callingname in the facility message so that I can pass into
    set callInfo(displayInfo)
    Basically I'm trying to pass Callername to an ip phone through a TCL script on the gateway during callsetup. This normally gets dropped.
    Is there a way to parse these fields in the Facility message?
    Thanks ahead of time for any help.
    Oct 14 21:59:58.274: ISDN Se0/0/0:23 Q931: RX <- FACILITY pd = 8 callref = 0x03BB
    Facility i = 0x9F8B0100A117020101020100800F5452494F4E20574F524C44204E4554
    Protocol Profile = Networking Extensions
    0xA117020101020100800F5452494F4E20574F524C44204E4554
    Component = Invoke component
    Invoke Id = 1
    Operation = CallingName
    Name Presentation Allowed Extended
    Name = MY CALLINGNAME

    Well.. I'm having to alter an existing script that parsers the calls for fax service before they are being sent to callmanager.
    So far I think im in the right direction but I don't know how to use the "object get gtd" properly, if that's even the right approach. Im trying to parse
    GEN,y,y,0,JOE BLOW
    from the gtd debug below...
    Oct 15 16:32:26.543: CNG tone sent
    Oct 15 2009 11:32:26 CDT: %ISDN-6-CONNECT: Interface Serial0/0/0:0 is now connected to XXXXXXXXXX N/A
    Oct 15 16:32:27.231: ISDN Se0/0/0:23: Built a GTD of size 110 octets for ISDN message type 0x62
    Oct 15 16:32:27.231: tsp_ccrawmsg_encap: calling cdapi_find_tsm
    Oct 15 16:32:27.231: cdapi_find_tsm: Found Tunnelled Signaling Msg with GTD: PROT_PTYPE_GTD
    Oct 15 16:32:27.231: cdapi_find_tsm: Found a gtd msg of length 110:
    Oct 15 16:32:27.231: gtd msg = "FAC,
    PRN,isdn*,,NI***,
    GEN,y,y,0,JOE BLOW ----------------Caller NAME
    UFC,GEN,5,fachd,9f8b0100
    UFC,GEN,5,inpdu,020101020100"
    This is what I have so far...
    set DestNum [infotag get evt_dcdigits]
    set callInfo(destinationNum) $DestNum
    infotag set evt_facility_report gtd
    infotag get evt_gtd CallerID
    set CallerName [object get gtd CallerID FAC,4,GEN]
    set DestNum [infotag get evt_dcdigits]
    put "$CallerName"
    put "$DestNum"
    set callInfo(displayInfo) $CallerName
    set callInfo(destinationNum) $DestNum
    leg setup $DestNum callInfo leg_incoming

  • Tcl proc with input argument run from UNIX script...how

    Environment:
    OWB 10g Client on Windows XP Professional
    Repository - 9.2.0.4 on UNIX (AIX 5.2)
    Target - 9.2.0.4 on UNIX (AIX 5.2)
    I need a little tcl advice, please!
    I have a tcl script (proc, I guess) that takes one argument, in this case a mapping name.
    I would like to execute this tcl script from a UNIX shell script and pass the name of the mapping as an argument to the UNIX shell script. Something like:
    OMBPlus.sh omb_deploy.tcl $1
    where omb_deploy.tcl is the script that has all the OMBPlus commands in it to create the deployment plan and execute it.
    I'd like to pass the mapping name as a command line argument to the UNIX shell script but it doesn't like it.
    When I execute the script as above, I don't see any output and the mapping does not get deployed.
    So, I need a little help on two (2) issues:
    1- How do I generate a log file of the output of the tcl script?
    2- How do I pass the mapping name as an argument to the UNIX shell script?
    For #1 I have tried using the 'open logfilename w' at the top of the tcl script but it produces no output.
    I saw another example from this forum where the author used a 'putslog' command in the script. I can't find any documentation on that command, what does it do?
    That same script set a global OMBLOG variable at the top of the script and used the 'putslog' command in the body.
    Is OMBLOG some special reserved word for logging? I couldn't find anything on it.
    I'm trying to learn tcl but struggling to put all the tcl stuff together with all the OMBPlus stuff and make it all work is getting the best of me.
    Any assistance, with examples (I learn best from them), is greatly appreciated.
    Gary

    Well duh!
    I ended up just logging everything from the UNIX shell script and letting the tcl script write everything to stdout.
    I also finally found the $argv parameter and have used that to pick up the name of the mapping being passed to OMBPlus.
    It seems to be working so far.
    Gary

  • Help with EEM TCL / CLI scripting for re-direction/wccp counters

    Being new with EEM scripting I wanted to see if I was on the right track and get some help to finish my idea.
    Our problem I am trying to fix is our remote sites utilize pairs of Cat3650's for some routing and WCCP redirection.  We are encountering ACL denial issues causing slow down and access issues.  The fix for the issue we remove the WCCP service groups to break peering with our wan optimizers and re-insert the configuration thus re-establishing peering and restoring service.
    My idea is to use a TCL scipt on a watchdog timer to parse the "sh ip wccp | inc denied (or unassign)" output for denial and unassignable error counters.  If a counter is found I wanted to create a syslog message that would then kick off a simple EEM CLI script to remove the service groups, wait 10 seconds, then re-add the service groups.  Please point me in the right direction if I am off track as I am not sure if I can use the EEM CLI for all this or since I want to retreive specific info from the sh ip wccp output if I do need to utilize TCL.  I am also unsure if the "total denied" ascii string pulled via the "sh ip wccp | inc denied" will cause issues when attempting to just pull the counter information.
    sh ip wccp | inc Denied Red
            Total Packets Denied Redirect:       0
            Total Packets Denied Redirect:       0
    Script thus far :
    TCL
    if [catch {context_retrieve "EEM_WCCP_ERROR_COUNTER" "count"} result] {
    set wccpcounter 0
    } else {
    set wccpcounter $result
    } if [catch {cli_open} result] {
    error $result
    } else {
    array set cli $result
    } if [catch {cli_exec $cli(fd) "show ip wccp | incl Denied"} result] {
    error $result
    } else {
    set cmd_output $result
    set count ""
    catch [regexp {receive ([0-9]+),} $cmd_output} ignore count]
    set count
    set diff [expr $count - $wccpcounter]
    if {$diff != 0} {
    action_syslog priority emergencies msg "WCCP counters showing incremental Denied packet counts"
    if [catch {cli_close $cli(fd) $cli(tty_id)} result] {
    error $result
    context_save EEM_WCCP_ERROR_COUNTER count
    CLI
    event manager applet WCCP_COUNTER_WATCH
    event syslog priority emergencies pattern "WCCP counters showing incremental Denied packet counts"
    action 001 cli command "enable"
    action 002 cli command "config t"
    action 003 cli command "no ip wccp 61"
    action 004 cli command "no ip wccp 62"
    action 005 wait 10
    action 006 cli command "ip wccp 61"
    action 007 cli command "ip wccp 62"
    action 008 wait 15
    action 009 cli command "clear ip wccp"
    action 010 cli command "end"
    Thanks for all the help

    This won't work as EEM cannot intercept its own syslog messages.  However, I'm not sure why you need this form of IPC anyway.  Why not just make the Tcl script perform the needed CLI commands?
    And, yes, you could use all applets here.  But since you've written the hard stuff in Tcl already, it might be best just to add the missing calls to reconfigure WCCP to that script.

  • Trying to configure survivability.tcl but no luck

    Hi,
    I'm trying to configure the survivability.tcl service but I can't seem to get it to work.  I've followed the instructions on the CVP config/admin guide but no luck.  Attached is the config from a 2811 I'm using on the LAB.
    My setup:
    ICM 8.5 server running Rogger, Logger, PG, CTIOS, HDS (x.x.x.82)
    CVP 8.0 server running CVP call server, vxml server, media server (x.x.x.83)
    UCM 8.6 call manager server (x.x.x.81)
    2811 running (C2800NM-IPVOICEK9-M) 12.4(24)T5 (x.x.x.254)
         4 FXO ports
    I would appreciated if someone could look at the config and tell me what's wrong or point me to documentation.
    The config is in the attached file.
    thanks

    It's a bug: CSCth50439    survivability tcl script takes 60 seconds to kick in
    I opened a TAC case and the engineer found it right away.
    Symptom:
    In a Cisco CVP solution installation it might be observed that the survivability tcl script takes 60 seconds to kick in on the gateway when the CVP server is down or unreachable.
    Conditions:
    When the CVP server is down or unreachable. So far seen in CVP versions 4.1 and 7.0.2.
    Workaround:
    comment out the following line in survivability.tcl:
    # set fsm(any_state,ev_proceeding)              "StopTimer same_state"
    and load the new file and service on the gateway, after that you can set the following under the survivability service to desired time in seconds to control the  time it takes to start the script.
        param setup-timeout 
    thanks again for all the help.

Maybe you are looking for

  • Performance issue - Loading and Calculating

    Hi,<BR>I am having 5 GB of data. It is taking 1 hr to load and 30 min to calculate. <BR>I did the following things to improve the performance.<BR>1) Sort the data and loading them in the order of largest sparse first, followed by smallest and dense<B

  • Excise and sales tax for Free of charge delivery

    Friends, Kindly explain somebody whether Duty and taxes are leived during free of charge delivery. If it is levied then what is basis for calculating duty? Plesse help on this. Thanks in advance

  • I have a 1654 error code and is not listed....what do I do?

    i have a 1654 error code and is not listed. what do I do?

  • Workflow for releasing blocked purchase orders

    Hi, We want to implement a workflow for financial approval of purchase orders. At the moment a purchase order exceeds a certain value, the order will be blocked and approval is needed from the responsible cost center manager. As we are completely new

  • How to reslve this ..please urgent..

    Hi experts.. I have created one repository variable EXP_SUM on my local machine(windows) and transfered my repository on unix machine...but i am getting the error in this report: The repository variable, Exp_SUM, has no value definition. My all other