NAME

SecsServer - SECS/GEM Server Application

SYNOPSIS

SecsServer ?-notk? ?-console? DMHGroupname

SecsServer -hubclient

SecsServer -license

SecsServer ?-notk? -source TclFilePathname

SecsServer -supervisor


DESCRIPTION

The SecsServer executable file is a replacement for installing the Hume Datahub SDK with the Tcl language files that are used to support the .NET SecsPort, .NET SecsHost, VC++ SecsEquip, VB SecsEquip, and Java SECS libraries. The idea is to simplify the deployment of SECS applications to additional computer systems. This is possible because the SecsServer executable actually contains the same application files as the SDK in a compressed file system that is part of the executable file.

The SecsServer program is distributed from the Hume Integration Software download site in a .zip archive that contains additional files which are optionally used to customize the files embedded in the SecsServer program.  There are different versions of the SecsServer for various platforms including Windows, 32-bit Linux, and 64-bit Linux.  Also, there are different versions of the SecsServer for the different platforms depending on which major release of Tcl/Tk the program is based on; namely Tcl 8.4 or Tcl 8.5.  The different versions are functionally compatible with older or newer SECS client libraries.  The version based on Tcl 8.4 has the advantages of a smaller file size and memory usage, but the disadvantage of imbedding the older, less featured host supervisor program.  You may find it useful to have the newer host supervisor available on your equipment for customer demonstrations, or being able to prove proper operation of the SECS equipment interface.

To use the SecsServer program file, you can place it in the working directory of your SECS application. However, the recommended installation is to place it in a directory of your choice, and set the environment variable specified by your SECS library installation instructions to point to path location using Unix Style slash delimiters instead of DOS style backslash delimiters.   By default, recipe transfer and logging directories are created as subdirectories of the installation directory.

SECS Library
Environment Variable
Java SecsEquip or SecsHost
DMH_JAVA_TCLDIR
.NET SecsPort or SecsHost
DMH_DOTNET_TCLDIR
VB, VC, or POSIX C++
SECS_EQUIP_TCLDIR

The SECS software use the SecsServer program in preference to using the Datahub SDK installation. You do not need to deploy any of the other files in the SecsServer .zip archive. The other files are only used to create custom versions of the SecsServer executable program.

You still need to have a Datahub SDK runtime license installed to use the SECS software on a machine. If the machine has the Datahub SDK installed, the SecsServer program will read and use the licenses.txt file of the Datahub installation if the DMH_BIN environment variable is set as it should be. If you do not have the Datahub SDK installed, simply place the licenses.txt file in the same directory as the SecsServer program. The licenses.txt file needs to have the same format that is used by the Datahub SDK. Copy the format of the licenses.txt file on your development system as a model for deployment systems.  The Datahub SDK setup program has the ability to create temporary 30 day licenses for any hostname.  You can use this feature to deploy 30 day temporary uses of your SECS interface using the SECS server.  

If you run the SecsServer from the command prompt with the argument -license, it will show you the status of your license installation:

  c:> SecsServer -license

SecsServer Customization

Do you need to customize the SecsServer program?

The usual case is that you have not modified any of the Tcl language application files. In this situation, you can use the SecsServer program file provided by Hume Integration on their download site. Be mindful of recent changes to the code library you are using. You will want to use a version of the SecsServer program that has any recent new features or bug fixes that your application relies upon. The SecsServerBuilder.bat script (builder script on POSIX systems) has the ability to look inside of the SecsServer program and show the modification times and sizes for the contained files. It is simple to rebuild the SecsServer program using the files that you have been using for development. You will only need to do this if you have added custom Tcl files or modified the Tcl files provided by Hume Integration. Just run the SecsServerBuilder application and use the "Build SecsServer" button action to create your own SecsServer version.

X-Windows Usage

The Linux SecsServer version and other POSIX versions have the ability to run in background without using X-Windows. When the program is started with -notk on the command line, and the environment variable DISPLAY is not defined, or is defined to be an empty string, the SecsServer runs without using X-Windows. When running without X-Windows, the SecsServer cannot display any Tcl/Tk program windows. The default startup of the SecsServer by the Java libraries is to provide the -notk command line option, so your defined value of DISPLAY becomes the deciding factor as to whether X-Windows is used.

"Hidden" SecsServer Features

The SecsServer program can also be used in the field for testing or demonstrating your SECS equipment interface.

Execute the program as SecsServer -supervisor and it brings up the Hume Tcl/Tk SECS Host Supervisor Program. We mentioned above that you can validate the license installation by typing SecsServer -license.

Execute the program as SecsServer -hubclient and it brings up the Datahub SQL client application. In this usage, the default connection information will attach to a SecsServer process that is running in background to support your SECS/GEM equipment application. You will need to edit the DMH groupname and change it from GEM to GEMHOST to connect to a SecsServer that is in use by the Hume-written .NET or Java SECS Host Applications. The hubclient program lets you interactively examine the SECS Server tables.

These applications are not limited to your own computer system. You can edit the connection information to target any SECS equipment interface or any SecsServer running on your Local Area Network.

Another feature is that the SecsServer program will source and execute a Tcl program when it is executed as SecsServer -source TclFilePathname. The option of using -notk to hide windows or to not use X-windows as described above also applies to executing Tcl scripts.

SEE ALSO

AUTHOR

Licensed and Supported by Hume Integration Software, http://www.hume.com

KEYWORDS

SECS/GEM "Datahub SDK" Daemon server starkit