clic_control.cgi - control program for the CLIC Video lab over HTTP
clic_control.cgi
Binary and source distribution are available. The code runs on Solaris and Linux, with other Unix platforms available upon request.
The goal of the project was to exert a level of control over the equipment of the CLIC lab video subsystem over HTTP. This has been accomplished with the creation of a program that operates through the Common Gateway Interface (CGI) protocol to control the linked video switches and the VCR/DVD players in the lab. While the actual interconnects are not yet implemented, the software produced can succcessfully issue the commands necessary for the proper handling of the aforementioned hardware.
- Control of the following hardware:
- one Knox Matrix Video Switcha
- one Extron Matrix Video Switch
- one Panasonic VCR
- one Sony DVD player
- one Slink-e serial-to-infrared interface device
- Loading of preset switching maps
- Manual editing of switch maps
- Issueing of IR commands to VCR/DVD
- Multiple-access detection
- Please investigate config.h in the code directory for information on compile-time options.
- cgi-bin\settings\extron_io.txt: Extron (front) switch input and output labels. See contents for format.
- cgi-bin\settings\knox_io.txt: Knox (back) switch input and output labels. See contents for format.
- cgi-bin\settings\*.map: Switch settings presets. See test.map for example.
- cgi-bin\settings\ports.txt: Port assignments for the communications module. See contents for format.
No options
- All outside communications are write only, since there were issues getting the serial connections working
- A connection needs to be established to the front switch using a shielded cable in order to enable Extron's physical control.
- This program is taylored to the CLIC lab as it is now (Jan 2002), and is not directly extensible to new equipment (though the internal capability is there.
- The 8-port serial card is still missing, thus making direct tests on it impossible. Serial I/O has been tested with FIFO devices.
- Authentication is meant to be implemented using http passwords. It is the user's responcibility to implement the necessary changes to protect the exposed systems.
config.h, cgi-bin\settings\extron_io.txt, cgi-bin\settings\knox_io.txt, cgi-bin\settings\test.map, cgi-bin\settings\ports.txt
Sajid Sadi at Columbia University, Department of Computer Science, BS Student
Copyright 1998-1999 by Columbia University; all rights reserved
Permission to use, copy, modify, and distribute this software and its documentation for not-for-profit research and educational purposes and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that the copyright notice and warranty disclaimer appear in supporting documentation, and that the names of the copyright holders or any of their entities not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. Use of this software in whole or in parts for commercial advantage and by for-profit organizations requires a license.
The copyright holders disclaim all warranties with regard to this software, including all implied warranties of merchantability and fitness. In no event shall the copyright holders be liable for any special, indirect or consequential damages or any damages whatsoever resulting from loss of use, data or profits, whether in an action of contract, negligence or other tortuous action, arising out of or in connection with the use or performance of this software.
Last updated by Sajid H. Sadi