Looking for ACE Probe TCL script specific for LDAPS

Hello Everyone,
I have searched the forum, and i am having difficulty finding an example of how to modify the LDAP TCL probe from port 389 to secure LDAP port 636.
Could someone kindly point me or provide me the modified TCL script if you happen to have it.
During my search I also found a config that someone had provided, which contained the following probe:
probe tcp LDAPS_Probe
  port 636
probe tcp LDAP_Probe
  port 389
I was trying to figure out if this a modified TCL script for LDAP or modifed TCP TCL script specific for port 636.
This is how I applied the script for LDAP port 389.
script file 1 LDAP_PROBE
probe scripted LDAP_PROBE_389
interval 5
passdetect interval 30
receive 5
script LDAP_PROBE
serverfarm host SF-LDAP-389
description SF LDAP Port 389
predictor leastconns
probe LDAP_PROBE_389
rserver LDAP-RS1-389
inservice
I will be more than glad to provide you any additional information that you need.
As always thanks for your input.
Raman Azizian
SAIC/NISN Network services

normally you would engage a TCL developer or ciso advanced services to develop a custom script for anything other than what Cisco provides in canned scripts. If you are comfortable with tcl you can do it yourself. Here is an example of the LDAP script modified to include initiation via ssl.  default port is 389 when you implement you would specify 636.
#!name = LDAP_PROBE
# Description:
#    LDAP_PROBE opens a TCP connection to an LDAP server, sends a bind request. and
#    determines whether the bind request succeeds.  LDAP_PROBE then closes the
#    connection with a TCP RST.
#    If a port is specified in the "probe scripted" configuration, the script probes
#     each suspect on that port. If no port is specified, the default LDAP port 389
#     is used.
# Success:
#   The script succeeds if the server returns a bind response indicating success
#    (status code 0x0a0100) to the bind request.
#   The script closes the TCP connection with a RST following a successful attempt.
# Failure:
#   The script fails due to timeout if the response is not returned.  This
#    includes a failure to receive ARP resolution, a failure to create a TCP connection
#    to the port, or a failure to return a response to the LDAP bind request.
#   The script also fails if the server bind response does not indicate success.
#    This specific error returns the 30002 error code.
#   The script closes any attempted TCP connection, successful or not, with a RST.
#  PLEASE NOTE:  This script expects the server LDAP bind response to specify length
#   in ASN.1 short definite form.  Responses using other length forms (e.g., long
#   definite length form) will require script modification to achieve success.
# SCRIPT version: 1.0       April 1, 2008
# Parameters:
#   [DEBUG]
#      username - user login name
#      password - password
#      DEBUG        - optional key word 'DEBUG'. default is off
#         Do not enable this flag while multiple probe suspects are configured for this
#         script.
# Example config :
#   probe scripted USE_LDAP_PROBE
#         script LDAP_PROBE
#   Values configured in the "probe scripted" configuration populate the
#   scriptprobe_env array.  These may be accessed or manipulated if desired.
# Documentation:
#    A detailed discussion of the use of scripts on the ACE is included in
#       "Using Toolkit Command Language (TCL) Scripts with the ACE"
#    in the "Load-Balancing Configuration Guide" section of the ACE documentation set.
# Copyright (c) 2005-2008 by Cisco Systems, Inc.
# debug procedure
# set the EXIT_MSG environment variable to help debug
# also print the debug message when debug flag is on
proc ace_debug { msg } {
    global debug ip port EXIT_MSG
    set EXIT_MSG $msg
    if { [ info exists ip ] && [ info exists port ] } {
     set EXIT_MSG "[ info script ]:$ip:$port: $EXIT_MSG "
    if { [ info exists debug ] && $debug } {
     puts $EXIT_MSG
# main
# parse cmd line args and initialize variables
## set debug value
set debug 0
if { [ regsub -nocase "DEBUG" $argv "" argv] } {
    set debug 1
ace_debug "initializing variable"
set EXIT_MSG "Error config:  script LDAP_PROBE \[DEBUG\]"
set ip $scriptprobe_env(realIP)
set port $scriptprobe_env(realPort)
# if port is zero the use well known ldap port 389
if { $port == 0 } {
    set port 389
# PROBE START
# open connection
ace_debug "opening socket"
set sock [  socket -sslversion all -sslcipher RSA_WITH_RC4_128_MD5 $ip $port ]
fconfigure $sock -buffering line -translation binary
# send a standard anonymous bind request
ace_debug "sending ldap bind request"
puts -nonewline $sock [ binary format "H*" 300c020101600702010304008000 ]
flush $sock
#  read string back from server
ace_debug "receiving ldap bind result"
set line [read $sock 14]
binary scan $line H* res
binary scan $line @7H6 code
ace_debug "received $res with code $code"
#  close connection
ace_debug "closing socket"
close $sock
#  make probe fail by exit with 30002 if ldap reply code != success code  0x0a0100
if {  $code != "0a0100" } {
    ace_debug " probe failed : expect response code \'0a0100\' but received \'$code\'"
    exit 30002
## make probe success by exit with 30001
ace_debug "probe success"
exit 30001

Similar Messages

  • ACE probe TCL script database

    Hello everyone, okay?
    I was thinking of a possibility to use my ACE to monitor a database, in this case a MySQL database Today I use a TCP probe, monitoring the port, but I would go one step further and try to make a connection in the DATABASE.
    I would like to see the possibility of a guideline in creating a TCL script to make a simple connection to a database.
    The idea is to try to make a connection in a database, run a query / select on any table just to validate its functionality and not just checking if the port is responding.
    I do not know how complex it is or what would be my pre -requisites required, but any help would be welcome.
    I thought about using an HTTP probe to make this validation and use a web page making the connection to the database, but it ended up creating another layer and if there is any problem in web service, the database would be affected indirectly.
    Thank you. All suggestions are welcome.

    Hi Plinio,
    I cannot see any support for testing authentication, SQL queries or connections to a database that is supported directly in TCL at this time.
    Here is the TCL guide that expalains the supported commands ( there is a HTTP example probe at the bottom )
    http://www.cisco.com/en/US/docs/app_ntwk_services/data_center_app_services/ace_appliances/vA4_2_0/configuration/slb/guide/script.html
    Beyond a TCL TCP probe to the port to test the listener is running, I believe your suggestion of a HTTP TCL script is probably the most accurate way to check the integrity of the database. You could write code to set a certain response to all types of failure scenarios and on the ACE you could then use a HTTP TCL script to parse the response from the web server to identify exactly what has failed in your database and act accordingly.
    cheers,
    Chris

  • Looking for simple auth Tcl script

    I just need a simple Tcl script (service) that when applied to a dial-peer will send a radius auth using a User-Name and Password supplied to it as parameters.
    Anyone have one lying around or could whip one up?
    Thanks in advance,
    Roman.

    hi,
    the script as you say is embeddded in all voice images, do show call application voice summary to see a list, and show call application voice to see them all.
    Hope this helps, please rate post if it does!

  • ACE TCL Script Probe for Websphere MQ

    Have anyone written a TCL script to probe MQ from the ACE?  Our app guys are saying that a Layer 4 probe (TCP port check) is generating errors in the QManager logs because there is no data exchange, just TCP connection setup, then tear-down.
    Thought I would check here to see if anyone has written a TCL Script for this before or has any other suggestions.
    Thanks!                  

    Hi,
    What do you need to check exactly on the server?  will be an specific uri?
    Cesar R
    ANS Team

  • 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 --------------------

  • TCL scripted probes on ACE

    Hi,
    I have two questions about TCP scripts on ACE :
    1. TCP source code
    How can I browse the TCL source code of predefined probe scripts on the ACE (for instance HTTPCONTENT_PROBE) '
    2. Script parameters
    How do I retrieve in the TCL script the parameters passed to the script in the command < script script_name [script_arguments] >  ?
    Thank you,
    Yves

    Yves,
    you can download all the scripts from the download software page.
    http://tools.cisco.com/support/downloads/go/ImageList.x?relVer=A2%283.2%29&mdfid=280557289&sftType=Application+Control+Software+Scripts&optPlat=&nodecount=2&edesignator=null&modelName=Cisco+ACE+Application+Control+Engine+Module&treeMdfId=268437639&treeName=Application+Networking+Services&modifmdfid=null&imname=&hybrid=Y&imst=N&lr=Y
    # Copyright (c) 2005-2008 by Cisco Systems, Inc.
    # debug procedure
    # set the EXIT_MSG environment variable to help debug
    # also print the debug message when debug flag is on
    proc set_exit_msg { msg } {
        global debug ip port EXIT_MSG
        set EXIT_MSG $msg
        if { [ info exists ip ] && [ info exists port ] } {
            set EXIT_MSG "[ info script ]:$ip:$port: $EXIT_MSG "
        if { [ info exists debug ] && $debug } {
            puts $EXIT_MSG
    # main
    # Parse cmd line args and initialize variables
    set_exit_msg "initializing variable"
    if { $argc <  2 } {
        set_exit_msg "[ info script ] parameters :
        exit 30002
    set ip $scriptprobe_env(realIP)
    set port $scriptprobe_env(realPort)
    # If port is zero then use well known HTTP port 80
    if { $port == 0} {
        set port 80
    set requestHeader [ lindex $argv 0 ]
    set expectFileType [ lindex $argv 1 ]
    set debug [ lindex $argv 2 ]
    if { $debug == "" } {
        set debug 0
    # Open connection
    set_exit_msg "opening socket"
    set sock [ socket $ip $port ]
    # Send HTTP request to server
    set_exit_msg "sending request : $requestHeader"
    puts -nonewline $sock "$requestHeader\n\n"
    flush $sock
    # Read string back from server
    set_exit_msg "receiving response"
    set lines [ read $sock ]
    # Close connection
    set_exit_msg "closing socket"
    close $sock
    # Parse the HTTP response
    # All the following conditions cause probe failure, returning exit code 30002
    # Unable to recognize the HTTP response
    if { ![ regexp -nocase "^HTTP/1\.\[0-9\] (\[0-9\]\[0-9\]\[0-9\])" $lines match s
    tatuscode ] } {
        set_exit_msg "probe fail : can't find status code"
        exit 30002
    # HTTP response is not 200 OK
    if { $statuscode != "200" } {
        set_exit_msg "probe fail : status code is $statuscode"
        exit 30002
    # Unable to find Content-type header
    if { ![ regexp  -nocase  "Content-Type *:(.*)\n" $lines match foundContentType]
        set_exit_msg "probe fail : can't find \'Content-Type\' header"
        exit 30002
    # Content-type value does not contain the requested string
    if { ![ regexp "$expectFileType" $foundContentType]  } {
        set_exit_msg "probe fail : expect content-type \'$expectFileType\', but got
    \'$foundContentType\'"
        exit 30002
    # Indicate probe success with exit code 30001
    set_exit_msg "probe success"
    exit 30001

  • Problem : tcl script for filter IPSec cosmetic log

    Hi all, I would like some advice from anyone who ever see this case. I applied tcl script for filter ipsec error log that log is cosmetic. But my site want to don't see this log from router log. I already create tcl script for filter it out. Ok script can work fine but it more work. It filter other message not just ipsec log out. I check cisco device that support script. How can I fix this problem.
    See my detail of script and ios version of router :
    script :
    # VPN_Error.tcl  This script deletes all log messages about VPN error messages
    # The script will filter by combination between facility-serverity and mnemonic      
    # Created on 05-Oct-2012.
    set msgs [list {CRYPTO-4-RECVD_PKT_MAC_ERR} {VPN_HW-1-PACKET_ERROR} {CRYPTO-4-RECVD_PKT_NOT_IPSEC} {CRYPTO-4-PKT_REPLAY_ERR}]
    set fac_sev_mnem "${::facility}-${::severity}-${::mnemonic}"
    foreach msg $msgs {
        if { $msg == $fac_sev_mnem } {
        return ""
    return $::orig_msg
    ios router version :
    : c2800nm-adventerprisek9-mz.124-25f.bin
    : c2800nm-adventerprisek9-mz.124-7b.bin
    log information and configuration
    When I applied command:
    logging filter flash:VPN_Filter2.tcl
    logging buffered filtered 4096 debugging
    show log file:
    router#sh logg
    Syslog logging: enabled (11 messages dropped, 1 messages rate-limited,
                    0 flushes, 0 overruns, xml disabled, filtering enabled)
        Console logging: level debugging, 18145 messages logged, xml disabled,
                         filtering disabled
        Monitor logging: level debugging, 428 messages logged, xml disabled,
                         filtering disabled
            Logging to: vty322(2)
        Buffer logging: level debugging, 0 messages logged, xml disabled,
                        filtering enabled (0 messages logged)
        Logging Exception size (4096 bytes)
        Count and timestamp logging messages: disabled
    Filter modules:
        flash:VPN_Filter2.tcl  
        Trap logging: level informational, 47011 message lines logged
            Logging to 10.145.0.25 (udp port 514, audit disabled, link up), 47011 message lines logged, xml disabled,
                   filtering disabled
            Logging to 10.247.17.41 (udp port 514, audit disabled, link up), 47011 message lines logged, xml disabled,
                   filtering disabled
            Logging to 10.247.17.45 (udp port 514, audit disabled, link up), 47011 message lines logged, xml disabled,
                   filtering disabled
    --More--                          
    Log Buffer (4096 bytes):
    router#
    If you have some more information. Please tell me.
    Thank you for your advice

    It looks like your script has an error.  You have an extra '}'.  It should be:
    # VPN_Error.tcl  This script deletes all log messages about VPN error messages# The script will filter by combination between facility-serverity and mnemonic       # Created on 05-Oct-2012.#set msgs [list {CRYPTO-4-RECVD_PKT_MAC_ERR} {VPN_HW-1-PACKET_ERROR} {CRYPTO-4-RECVD_PKT_NOT_IPSEC} {CRYPTO-4-PKT_REPLAY_ERR}]set fac_sev_mnem "${::facility}-${::severity}-${::mnemonic}"foreach msg $msgs {    if { $msg == $fac_sev_mnem } {        return ""    } } return $::orig_msg

  • [ID CC] Is there a specific scripting guide for CC?

    Hi,
    I was looking for the scripting guide (both applescript and Javascript) for ID CC, but all I see is the CS6 version. Is that normal? I know there isn't that much new between the two version, but it would be nice to have the updated guides.
    Also, I had heard that the Applescript language was going to be fased out. Meaning, no new feature would be supported and things that changed would break current code in future version of the software. Is there any thruth in this? I'm a fairly novice applescripter and I can't even read Javascript, so I was wondering if I need to try to learn Javascript ASAP or if I'll be able to go by with my applescript.
    Thanks for any input.
    Jeff

    @Jeff – don't know if there is a specific scripting guide for InDesign CC.
    For news of new methods, properties and objects in the DOM (Document Object Model) in ExtendScript (Adobe's implementation of JavaScript) with InDesign see:
    Marc Autret:
    So What's New in InDesign CC Scripting DOM
    http://www.indiscripts.com/post/2013/06/so-what-s-new-in-indesign-cc-scripting-dom
    Another valuable reference (not covering CC but also InDesign CS6) is:
    http://www.jongware.com/idjshelp.html
    For learning ExtendScript you will find useful:
    1. Learn about "core" JavaScript (there are plenty of useful courses floating around in the web)
    2. Buy yourself a book like Grant Gamble's "InDesign CS5 – Automation Using XML & JavaScript"
    and experiment with your own InDesign files and code snippets from that base on…
    3. Find a collegue or some friends who also want to learn about it and do some learning sessions together
    4. Visit this forum a lot and browse through older threads. Most threads are about ExtendScript.
    Where did you hear that Adobe wants to phase out AppleScript on its products?
    Flash based extensions and related to that "ActionScript" will be phased out next year for building Extensions for CC applications. It will be replaced with [HTML5, CSS and JavaScript] for building widgets. PhotoShop CC will be the first product where we will see this (maybe around mid 2014); others will follow.
    Maybe you read about the abbreviation "AS" in this regard; which for some people is "AppleScript" and for some people it is "ActionScript". Don't confuse the two scripting languages.
    Uwe

  • Using a (tcl) script as source of data for VI

    hi,
    novice here, under a deadline.
    we would like to display data coming from running a shell script. the data is a stream of lines, each with a datapoint as a floating point number.
    bash$ ./my.tcl
    12.5
    15.2
    18.3
    17.2
    14.3
    the first tutorial, with a waveform graph and a stop button is what the display should look like (we'll enhance it later).
    for input, though, instead of getting a simulated sine signal, we would like to read the output of the my.tcl script.
    we found one example, but it calls wish (the tcl interpreter), once and it ends. we need to read a stream continuously.
    all this under labview 8.5 for linux (under centos 4, if that matters).
    we want to get the basics going. so that is the basic question.
    later, once the basics are working, we would like to split what comes out of the script in channels.
    the script will spit this out, e.g.:
    port0: 10.2
    port0: 11.3
    port1: 11.2
    port0: 13.4
    port1: 15.2
    you get the idea. multiple channels will be bundled in the standard output and they will need to be demultiplexed. they may come in in bursts (e.g. three readings at a time from port 0, two from port one, ...etc.).
    we have some amount of control as to what the output of the script looks like.
    we just got started two days ago with labview, and it's cool. however, connecting it to read from the external world in the way that it exists now is what we have not been able to do yet.
    any help will be deeply appreciated, as we adopted this solution after dumping the atteempt to use tcl as the front end view, since we would like to do more sophisticated things down the road and labview is great for that.
    thanks in advance!
    carlos

    You need to do that with pipes.
    There is some code to do that (OGPipes) but it was never finished (as far as
    I know). I recently used it, but it has only support windows. Not much
    helpful for you...
    What I get from the Linux resources on the web, pipes are a lot easier to
    implement then under windows. I might need to do this in a few weeks myself,
    but don't have a Linux machine at the moment. Making a library wrapper in C
    is probably the easiest way, altough you should be able to call the Linux
    libraries for pipes directly from LabVIEW.
    Regards,
    Wiebe.

  • ACE Probes for authentication to imaps, smpts or pop3s servers

    Dear all,
    we have the demand to do health checks using authentication for servers running SSL-encrypted services like imaps, smpts or pop3s. Has someone implemented tcl scripts for that ? Unfortunately the "SSL_PROBE_SCRIPT" provided by Cisco does only do a "Client Hello". Maybe it is possible to enhance that script in order to test authentication ?
    Thank you very much in advance.
    Bernd

    Dear Gilles,
    thank you very much for your reply. This answers my question.
    But ... I would like to turn this into a feature request, because I believe this demand is not that much out of common. There already is a https probe which works in a similar way, so it should be easy for Cisco to add probes for common ssl-encrypting protocols or - even better - add a generic ssl probe.
    Best regards,
    Bernd

  • Looking for a more universal scripting language than AppleScript or Automator

    I want to learn a cross-platform/web scripting language to automate tasks, write scripts and with the potential to create programs and web apps.
    I am looking for something that:
    - is not a program with a GUI like Automator, iKey, Quickeys, Maestro... 
    - is more "universal" than Applescript, cross-platform
    - can be used to automate simple tasks in a simple way
    - can also be used to create more complex scripts, web apps and maybe, eventually, programs (with GUI)
    I've read about Javascript, Python, Ruby, PHP, Perl, C+, C++, Java and others, but I really don't know.
    - Java sounds pretty cool, Python too.
    - I'm not crazy about PHP or Perl, with Javascript, but some people swear by it
    - I don't know anything about C+, C++
    Does anyone have any suggestion(s)?  Please let me know if you need any more details.  Thank you.

    C, C++, Objective-C are nor scripting languages and will not help you do web pages. (Don;t know what C+ is).
    Forget Java it has lots of security problems and more and more users are disabling Java in their web browsers because of this. Developing in Java would be, in my opinion, a mistake.
    If you are doing any web works at all you will need to know some Javascript, no way around that.  But Javascript is actually not a bad language
    Note Java and Javascript are two totally separate languages that have nothing in common  but the first 4 letters of their names.
    So you are left with PHP, Perl, Python and Ruby.
    Dismissing PHP and Perl out of hand is a big mistake, They are both major players and you will run into them just about everywhere. If you are looking to do this for possible employment you will need to be familiar with them at least.
    Python and Ruby are both strong languages as well. I don't have a lot of experience with either so I can;t speak to their strengths  but  learnign either would not be a mistake.
    Knowing what your reasons are for asking this, personal use or for employment, might help refine the list some.
    regards
    Message was edited by: Frank Caggiano - Perl is also included in OS X by default. Not sure about PHP but I believe it also is. I agree TextWrangler would be a good editor for this type of work.

  • Looking for OD only binding script

    Hello everyone,
    after several weeks of trying different solutions we are stuck with trusted binding / OD binding in Deploy Studio.
    We've added several workstations to our computers and they are renamed by a script this works fine.
    The problem is that we have to add those workstations to our Open Directory and then add those workstations via OD to several groups.
    The workstation is binded but it doesn't bind correctly.
    We can see the OD server in the "Users and Groups" as "connected". But it's only bound locally (can only be seen on the workstation)
    But it's not binded as we want it to be.
    Our goal is that the workstation needs access to the directory (System Preferences -> Accounts -> Login Options -> Network Account Server -> Open Directory Access… --> LDAPv3 ...)
    And then we have to use "Edit..."-> "bind" .After that the workstation is added to our OD and we can see it in our workgroup manager and add this workstation to the group.
    Is it possible to solve this issue with Deploy Studio?
    We've already tried to use "Enable trusted binding" but after imaging a workstation there is only the ouput "An error occured while trying to establish a trusted binding with the server "xxxxx",new attempt in 10 seconds..." and "Invalid credentials supplied for binding to the server"  in the finalize script and the workstation has to be bound to the OD manually.
    But the credentials are 100% correct.We are using the login of your OD-administrator account for the trusted binding.
    We've also tried to activate trusted binding without any login information in the fields for "Directory Admin", after that there is no error but the workstation has to be bound manually again.
    It would be great if there is anybody who has the same issue and maybe solved it or has any idea what to do here.
    Sorry if the english description for several "buttons" aren't exactly,we are using a german version of MAC OS X (10.8.2). I hope everything is easy to understand.
    Just tell me if you need any additional information about things.
    DPS Version: 1.0 RC 135 (121112)
    Kind regards
    This is my post in the official DPS forums but there wasn't any reply except one that we could use an own OD binding script.
    Is there anybody who has a working script?I found one but it has AD inside and I don't know if it's that easy to delete the AD parts from this script.
    It would be great if there is someone who could help with this issue.
    Kind regards

    We're still looking for a solution for this issue as it still doesn't work.
    We also tried to solve it with this script but it didn't work either:
    #!/bin/bash
    computerid=`scutil –get ComputerName`
    dsconfigldap -v -f -a OD_SERVER -n OD_SERVER -c $computerid -u ADMIN_USERNAME -p ‘ADMIN_PASSWORD’
    sleep 10
    dscl /Search -create / SearchPolicy CSPSearchPath
    dscl /Search -append / CSPSearchPath /LDAPv3/OD_SERVER
    sleep 10
    dscl /Search/Contacts -create / SearchPolicy CSPSearchPath
    dscl /Search/Contacts -append / CSPSearchPath /LDAPv3/OD_SERVEROD_SERVER= FQDN of our OpenDirectory
    ADMIN_USERNAME= account used for binding computers manually
    ADMIN_PASSWORD= password for ADMIN_USERNAME
    It would be great if there is somebody who could help us with this issue.
    Kind regards

  • - Looking for Drop Down menu script w/ semi-transparent backgrounds...

    Looking for a dropdown menu script that will allow
    semi-transparent
    backgrounds (so we can partly see what the list is displaying
    over).
    I've Googled this to death using all the obvious keywords,
    but have yet to
    find what I'm looking for.
    Thanks.

    Yes. I understand and agree. Good point.
    Thanks.
    Al Sparber - PVII
    http://www.projectseven.com
    Extending Dreamweaver - Nav Systems | Galleries | Widgets
    Authors: "42nd Street: Mastering the Art of CSS Design"
    "T.Pastrana - 4Level" <[email protected]> wrote in message
    news:[email protected]...
    >I posted mainly for the benefit of Reese, I know you know
    this.
    >
    >
    > --
    > Best Regards,
    > ..Trent Pastrana
    > www.fourlevel.com
    >
    >
    >
    >
    >
    >
    > "Al Sparber- PVII" <[email protected]>
    wrote in message
    > news:[email protected]...
    >> Actually, it's not an error. But we do happen to
    have it in a CC on
    >> that page because the last time I posted that page
    on this forum it
    >> was criticized for "failing" the W3C CSS validator.
    >>
    >>
    http://www.projectseven.com/foxy.gif
    >>
    >> The Firefox console simply would report it as a
    warning - not an
    >> error. It would have no affect on the page. But
    thanks for pointing
    >> that out.
    >>
    >> --
    >> Al Sparber - PVII
    >>
    http://www.projectseven.com
    >> Extending Dreamweaver - Nav Systems | Galleries |
    Widgets
    >> Authors: "42nd Street: Mastering the Art of CSS
    Design"
    >>
    >>
    >>
    >>
    >> "T.Pastrana - 4Level" <[email protected]> wrote in
    message
    >> news:[email protected]...
    >>> If you want your page to validate you might want
    to separate the
    >>> properties. Some modern browsers like Firefox
    will throw an error
    >>> with the filter property.
    >>>
    >>> #menu li {
    >>> opacity: 0.85;
    >>> }
    >>>
    >>> <!--[if IE]><style
    type="text/css">#menu li {filter:
    >>>
    alpha(opacity=85);}</style><![endif]-->
    >>>
    >>>
    >>> --
    >>> Best Regards,
    >>> ..Trent Pastrana
    >>> www.fourlevel.com
    >>>
    >>>
    >>>
    >>>
    >>> "Al Sparber- PVII"
    <[email protected]> wrote in message
    >>> news:[email protected]...
    >>>> If, for example, you are using an unordered
    list for your menu, set
    >>>> opacity on the LI, like so:
    >>>>
    >>>> #menu li {
    >>>> opacity: 0.85;
    >>>> filter: alpha(opacity=85);
    >>>> }
    >>>>
    >>>> As far as I know, there are no
    "off-the-shelf" menu tools of worth
    >>>> that offer this as an automatic option. You
    should pick yourself a
    >>>> good menu system then set opacity on the
    relevant element. The
    >>>> menu "script" or "system" really has nothing
    to do with it.
    >>>>
    >>>> If you need a good base menu system, you can
    find free ones and
    >>>> commercial ones on our site. Here is an
    example of one with
    >>>> transparency:
    >>>>
    >>>>
    http://www.projectseven.com/products/menusystems/pmm/css_tweaks/opacity/
    >>>>
    >>>>
    >>>>
    >>>> --
    >>>> Al Sparber - PVII
    >>>>
    http://www.projectseven.com
    >>>> Extending Dreamweaver - Nav Systems |
    Galleries | Widgets
    >>>> Authors: "42nd Street: Mastering the Art of
    CSS Design"
    >>>>
    >>>>
    >>>>
    >>>>
    >>>> "Reese" <[email protected]> wrote in message
    >>>> news:[email protected]...
    >>>>> Looking for a dropdown menu script that
    will allow
    >>>>> semi-transparent backgrounds (so we can
    partly see what the list
    >>>>> is displaying over).
    >>>>>
    >>>>> I've Googled this to death using all the
    obvious keywords, but
    >>>>> have yet to find what I'm looking for.
    >>>>>
    >>>>> Thanks.
    >>>>>
    >>>>
    >>>
    >>>
    >>
    >
    >

  • Using EEM and TCL scripts for voice

    HI all,
    I'd like to use eem to check Sip dial-peer status+interface BRI status, when sip dial-peer has no answer to invite and bri interface is down the LAN interface must be shutted down. Is it possible to avhieve it using eem? I didn't find anything for eem monitoring sip dial-peers...
    thanks
    Massimiliano

    EEM doesn't have any ability to control the data plane currently.  Therefore, there is no direct voice tie-in.  There is a way to do Tcl scripting of some voice operations (e.g. IVR scripts), but those do not relate to EEM.
    That said, if there are some show commands which provide you the data you need, you can create an EEM timer policy (i.e. one that runs periodically), parsers the show command output, and takes further action if the output contains certain patterns.  Depending on the version of IOS, this may require an EEM Tcl script, or you may be able to do it within an EEM applet.
    If you need further assistance, you will need to provide your IOS version, and the exact commands (and output) which would tell you if the SIP peer isn't getting an answer and the BRI interface is truly down (I'm imagining something like "show isdn status" for this one).
    Please support CSC Helps Haiti
    https://supportforums.cisco.com/docs/DOC-8895
    https://supportforums.cisco.com

  • GUI for monitoring ACE probes

    Hello,
    Can Cisco LMS monitor and report on ACE module probes.
    Thanks.

    yes, as imported MIBs.
    ACE appliance 3.x currently supports more SNMP OIDs for the probes than does the ACE module 2.x, but will ACE module 2.3 due by Q4CY09, they will both have same capabilities for probes monitoring.
    See:
    TableName:cslbxProbeCfgTable
    cslbxProbeState
    INDEX: slbEntity, cslbxProbeName
    For Probe State per Probe Name.
    cslbxProbeState can have two values ACTIVE and INACTIVE
    As part of reporting probe statistics per RServer the following OIDs will be added in the cesRServerProbeTable in CISCO-ENHANCED-SLB-MIB
    Table Name:cesRserverProbeTable
    cesRserverProbesPassed
    cesRserverProbesFailed
    cesRserverProbeHealthMonState
    INDEX: Probe Name, RServerProbe Statistics per RServer (configured probe).
    This will display stats based on Probe Name per Rserver (Rservers are physical devices not associated with any server farm). Stats generated when probe is associated to a rserver.
    Table Name: cesRealServerProbeTable
    cesRealServerProbeName
    cesRealServerProbeStorageType
    cesRealServerProbeRowStatus
    INDEX: Probe Name, Server Farm Name,Real Server Name, Real Server Port
    Represents a probe associated with a real server directly. For example the following configuration adds an entry to the table.
    As part of reporting probe statistics for probes that are assigned to real server/server farm the following table with the OIDs will be added in CISCO-SLB-HEALTH-MON-MIB
    cshMonServerfarmRealProbeStatsTable: (New Table)
    cshMonServerfarmRealPassedProbes
    cshMonServerfarmRealFailedProbes
    cshMonServerfarmRealProbeHealthMonState
    INDEX:Probe Name, Server Farm Name,Real Server Name, Real Server Port ,Inherited Port
    Statistics for probes assigned to real server/serverfarm

Maybe you are looking for