APPENDIX H: TCL PROGRAMMING G UIDE 139Appendix H: TCL Programming GuideDisclaimer: The information contained in this section is subject to change without notice.Raritan shall not be liable for errors contained herein or for incidental or consequential damagesin connection with the furnishing, performance, or use of this material. Raritan assumes noresponsibility for the use or reliability of its software on equipment that is not furnished by Raritan.OverviewDominion SX supports TCL (version 7.0), an industry standard scripting engine. Using TCL scriptingcapabilities, you can create customized conditions for event detection, and can generate customer-specificnotifications and alerts. Dominion SX features a TCL engine and a flash file system for the developmentand storage of TCL scripts.Dominion SX is pre-configured with a set of User Definable Events that can be generated by TCL scripts.Raritan has introduced an extension library to provide an API to Dominion SX’s functions. In addition,Dominion SX includes an extensive list of notification events that can be used to audit, track, and trace theconditions of and modifications to the unit itself.This appendix describes the architecture and features of the TCL script engine, and provides information tohelp you develop scripts to manage multiple remote target devices.TCL Architecture with Target SystemThe following diagram illustrates the TCL Engine architecture:GUITargetWriteModuleTargetReadModuleTargetBufferTargetBufferTCL UsersBrowser UserTCL EngineFlash File SystemTarget System"cat /tmp/file1\r""This is contents of file1\r"Figure 124 TCL ArchitectureKey aspects of TCL architecture:• The TCL Engine is single-threaded and shared across multiple users and target devices.• A browser user (standard GUI) does not interact with the TCL Engine.• The TCL Engine shares the same function blocks for accessing the console via the RS-232 port.• The TCL Engine does not interfere with normal console access function.• Only Administrators may operate TCL.• Data received from each target system on the RS-232 port is sent to all connected Java user consolesand also stored in an internal TCL buffer. Each internal buffer has the following properties:− Data received on an RS-232 port from a target device is stored in this buffer.− The TCL Engine is the only reader of this data.