=========== ScriptQueue =========== Commands -------- * Location_First * Location_Last * Location_Before * Location_After showAvailableScripts ~~~~~~~~~~~~~~~~~~~~ **Description**: List the scripts that are available. :Subsystem: ScriptQueue :EFDB_Topic: ScriptQueue_command_showAvailableScripts ignored ******* :IDL_Type: boolean :Units: unitless :Count: 1 **Description**: This field is ignored. showSchema ~~~~~~~~~~ **Description**: Show the configuration schema for a given script. :Subsystem: ScriptQueue :EFDB_Topic: ScriptQueue_command_showSchema isStandard ********** :IDL_Type: boolean :Units: unitless :Count: 1 **Description**: Is this a standard script (True) or an external script (False)? path **** :IDL_Type: string :IDL_Size: 1 :Units: unitless :Count: 1 **Description**: Path to script, relative to the root directory for standard or external scripts. showQueue ~~~~~~~~~ **Description**: Output the queue event. :Subsystem: ScriptQueue :EFDB_Topic: ScriptQueue_command_showQueue ignored ******* :IDL_Type: boolean :Units: unitless :Count: 1 **Description**: This field is ignored. showScript ~~~~~~~~~~ **Description**: Output script event for a specified script. :Subsystem: ScriptQueue :EFDB_Topic: ScriptQueue_command_showScript salIndex ******** :IDL_Type: int :Units: unitless :Count: 1 **Description**: SAL index of Script for which you want information. pause ~~~~~ **Description**: Pause the queue. If a script is executing it will continue, but once that script is done no new script will be run. :Subsystem: ScriptQueue :EFDB_Topic: ScriptQueue_command_pause ignored ******* :IDL_Type: boolean :Units: unitless :Count: 1 **Description**: This field is ignored. resume ~~~~~~ **Description**: Resume normal operation (unpause the queue). :Subsystem: ScriptQueue :EFDB_Topic: ScriptQueue_command_resume ignored ******* :IDL_Type: boolean :Units: unitless :Count: 1 **Description**: This field is ignored. add ~~~ **Description**: Add a script to the queue and configure it. :Subsystem: ScriptQueue :EFDB_Topic: ScriptQueue_command_add isStandard ********** :IDL_Type: boolean :Units: unitless :Count: 1 **Description**: Is this a standard script (True) or an external script (False)? path **** :IDL_Type: string :IDL_Size: 1 :Units: unitless :Count: 1 **Description**: Path to script, relative to the root directory for standard or external scripts. config ****** :IDL_Type: string :IDL_Size: 1 :Units: unitless :Count: 1 **Description**: Configuration as yaml text that is parsed to make a keyword argument dict for the script's configure method. descr ***** :IDL_Type: string :IDL_Size: 1 :Units: unitless :Count: 1 **Description**: Short description of why you are running this script. location ******** :IDL_Type: byte :Units: unitless :Count: 1 **Description**: Location in the queue; a Location enum. locationSalIndex **************** :IDL_Type: int :Units: unitless :Count: 1 **Description**: Index of Script SAL component referred to by `location`; ignored unless `location` is `Before` or `After`. logLevel ******** :IDL_Type: int :Units: unitless :Count: 1 **Description**: Logging level for the script, as a Python logging level: error=40, warning=30, info=20, debug=10, use default=0. pauseCheckpoint *************** :IDL_Type: string :IDL_Size: 1 :Units: unitless :Count: 1 **Description**: Checkpoint(s) at which to pause the script, as a regular expression. No checkpoints if blank; all checkpoints if ".*". stopCheckpoint ************** :IDL_Type: string :IDL_Size: 1 :Units: unitless :Count: 1 **Description**: Checkpoint(s) at which to stop the script, as a regular expression. No checkpoints if blank; all checkpoints if ".*". move ~~~~ **Description**: Move a script elsewhere in the queue. This will fail if the script is already running. :Subsystem: ScriptQueue :EFDB_Topic: ScriptQueue_command_move salIndex ******** :IDL_Type: int :Units: unitless :Count: 1 **Description**: Index of Script SAL component to move. location ******** :IDL_Type: byte :Units: unitless :Count: 1 **Description**: Location in the queue; a Location enum. locationSalIndex **************** :IDL_Type: int :Units: unitless :Count: 1 **Description**: Index of Script SAL component referred to by `location`; ignored unless `location` is `Before` or `After`. requeue ~~~~~~~ **Description**: Put a script back on the queue that has already run, is running or is queued. :Subsystem: ScriptQueue :EFDB_Topic: ScriptQueue_command_requeue salIndex ******** :IDL_Type: int :Units: unitless :Count: 1 **Description**: Index of Script SAL component to requeue. location ******** :IDL_Type: byte :Units: unitless :Count: 1 **Description**: Location in the queue; a Location enum. locationSalIndex **************** :IDL_Type: int :Units: unitless :Count: 1 **Description**: Index of Script SAL component referred to by the location field; ignored unless the location is Before or After. stopScripts ~~~~~~~~~~~ **Description**: Stop one or more queued scripts and/or the current script. :Subsystem: ScriptQueue :EFDB_Topic: ScriptQueue_command_stopScripts length ****** :IDL_Type: int :Units: unitless :Count: 1 **Description**: Number of valid entries in salIndices. salIndices ********** :IDL_Type: int :Units: unitless :Count: 400 **Description**: Indices of Script SAL component to stop, 0 terminated. terminate ********* :IDL_Type: boolean :Units: unitless :Count: 1 **Description**: If True, terminate the current script without giving it a chance to clean up. If False, try sending a stop command first, and only terminate if if that doesn't work in a timely fashion. Events ------ * ScriptProcessState_Loading * ScriptProcessState_Configured * ScriptProcessState_Running * ScriptProcessState_Done * ScriptProcessState_LoadFailed * ScriptProcessState_ConfigureFailed * ScriptProcessState_Terminated availableScripts ~~~~~~~~~~~~~~~~ **Description**: List of available scripts. :Subsystem: ScriptQueue :EFDB_Topic: ScriptQueue_logevent_availableScripts standard ******** :IDL_Type: string :IDL_Size: 1 :Units: unitless :Count: 1 **Description**: Colon-separated paths to standard scripts, relative to the standard root directory. external ******** :IDL_Type: string :IDL_Size: 1 :Units: unitless :Count: 1 **Description**: Colon-separated paths to external scripts, relative to the external root directory. configSchema ~~~~~~~~~~~~ **Description**: Configuration schema for a given script. :Subsystem: ScriptQueue :EFDB_Topic: ScriptQueue_logevent_configSchema isStandard ********** :IDL_Type: boolean :Units: unitless :Count: 1 **Description**: Is this a standard script (True) or an external script (False)? path **** :IDL_Type: string :IDL_Size: 1 :Units: unitless :Count: 1 **Description**: Path to script, relative to the root directory for standard or external scripts. configSchema ************ :IDL_Type: string :IDL_Size: 1 :Units: unitless :Count: 1 **Description**: Configuration schema: jsonschema encoded as yaml. nextVisit ~~~~~~~~~ **Description**: Group ID and other information about the next script to be run. :Subsystem: ScriptQueue :EFDB_Topic: ScriptQueue_logevent_nextVisit salIndex ******** :IDL_Type: int :Units: unitless :Count: 1 **Description**: Index of Script SAL component. groupId ******* :IDL_Type: string :IDL_Size: 1 :Units: unitless :Count: 1 **Description**: Group ID for images taken by the script. coordinateSystem **************** :IDL_Type: short :Units: unitless :Count: 1 :Enumeration: CSys_None, CSys_ICRS, CSys_Observed, CSys_Mount **Description**: Coordinate system for position. A Script MetadataCoordSys enum. Observed is refracted apparent topocentric, e.g. similar to Mount but the telescope model is applied and the azimuth is wrapped. If None then position should be ignored. position ******** :IDL_Type: double :Units: degree :Count: 2 **Description**: Longitude, latitude axes of position in coordinateSystem rotationSystem ************** :IDL_Type: short :Units: unitless :Count: 1 **Description**: Rotation system for cameraAngle, a Script MetadataRotSys enum * None: The camera rotator is not used; ignore cameraAngle. * Sky: Position angle of focal plane +Y, measured from N through E. At 0 degrees, +Y is along N and +X is along E/W depending on handedness. At 90 degrees, +Y is along E and +X is along S/N depending on handedness. * Horizon: Position angle of focal plane +Y, measured from +Alt through +Az. At 0 degrees, +Y is along +Alt and +X is along +/-Az, depending on handedness. At 90 degrees, +Y is along +Az and +X is along -/+Alt, depending on handedness. * Mount: The position sent to the instrument rotator; the details depend on the rotator. cameraAngle *********** :IDL_Type: double :Units: degree :Count: 1 **Description**: Camera angle in rotationSystem filters ******* :IDL_Type: string :IDL_Size: 1 :Units: unitless :Count: 1 **Description**: Comma-separated names of acceptable filters, or blank for any filter. dome **** :IDL_Type: short :Units: unitless :Count: 1 **Description**: Desired dome state; a Script MetadataDome enum. duration ******** :IDL_Type: double :Units: second :Count: 1 **Description**: Estimated duration of the script, excluding slewing to the initial position required by the script. nimages ******* :IDL_Type: int :Units: unitless :Count: 1 **Description**: Predicted number of images to take; 0 if unknown. survey ****** :IDL_Type: string :IDL_Size: 1 :Units: unitless :Count: 1 **Description**: Survey name. nextVisitCanceled ~~~~~~~~~~~~~~~~~ **Description**: The group ID reported by a nextVisit event will not be used, because the script that was next to be run has been cancelled or rescheduled. :Subsystem: ScriptQueue :EFDB_Topic: ScriptQueue_logevent_nextVisitCanceled salIndex ******** :IDL_Type: int :Units: unitless :Count: 1 **Description**: Index of Script SAL component. groupId ******* :IDL_Type: string :IDL_Size: 1 :Units: unitless :Count: 1 **Description**: Group ID for images taken by the script. This ID will not be used. script ~~~~~~ **Description**: Information about a queued script. :Subsystem: ScriptQueue :EFDB_Topic: ScriptQueue_logevent_script cmdId ***** :IDL_Type: int :Units: unitless :Count: 1 **Description**: ID of command which queued this script. salIndex ******** :IDL_Type: int :Units: unitless :Count: 1 **Description**: Index of Script SAL component. isStandard ********** :IDL_Type: boolean :Units: unitless :Count: 1 **Description**: True if this is a standard script, False if an external script. path **** :IDL_Type: string :IDL_Size: 1 :Units: unitless :Count: 1 **Description**: Path of script, relative to standard or external root directory. timestampProcessStart ********************* :IDL_Type: double :Units: second :Count: 1 **Description**: When the script process started. 0 before the process is started. timestampConfigureStart *********************** :IDL_Type: double :Units: second :Count: 1 **Description**: When script configuration began. 0 before configuration begins. timestampConfigureEnd ********************* :IDL_Type: double :Units: second :Count: 1 **Description**: When script configuration finished (succeeded or failed). 0 before configuration ends. timestampRunStart ***************** :IDL_Type: double :Units: second :Count: 1 **Description**: When the script was told to run. 0 before the script is told to run. timestampProcessEnd ******************* :IDL_Type: double :Units: second :Count: 1 **Description**: When the script process ended. This is also approximately the time at which the script stopped running, if it was ever run. 0 before the script process ends. processState ************ :IDL_Type: byte :Units: unitless :Count: 1 **Description**: State of script process; a ScriptProcessState enum. Loading means the script is still being loaded and is not yet configured. Configured means the script has been configured and can be run. Running means the script has been commanded to run. Done means the script has finished (see scriptState to see whether it ran successfully). ConfigureFailed means the process was terminated because the `configure` command failed. Terminated means the process was terminated due to calling the `terminate` command, or due to calling the `stop` command when the script was not running or if running but stopping the script gently failed. scriptState *********** :IDL_Type: byte :Units: unitless :Count: 1 **Description**: State of the script; a ScriptState enum from Script_Events.xml; 0 if the script is not yet loaded. queue ~~~~~ **Description**: SAL indices of scripts on the queue. :Subsystem: ScriptQueue :EFDB_Topic: ScriptQueue_logevent_queue enabled ******* :IDL_Type: boolean :Units: unitless :Count: 1 **Description**: Is the ScriptQueue CSC enabled? New scripts will only be started if both `running` and `enable` are True. running ******* :IDL_Type: boolean :Units: unitless :Count: 1 **Description**: Is the queue running (True) or paused (False)? New scripts will only be started if both `running` and `enable` are True. currentSalIndex *************** :IDL_Type: int :Units: unitless :Count: 1 **Description**: SAL index of script being run; 0 if none. length ****** :IDL_Type: int :Units: unitless :Count: 1 **Description**: Number of valid entries in salIndices. salIndices ********** :IDL_Type: int :Units: unitless :Count: 400 **Description**: SAL index of each Script on the queue. Item 0 is the next script to be run. pastLength ********** :IDL_Type: int :Units: unitless :Count: 1 **Description**: Number of valid entries in pastSalIndices. pastSalIndices ************** :IDL_Type: int :Units: unitless :Count: 400 **Description**: SAL index of scripts that have been run. Item 0 is the script most recently run. rootDirectories ~~~~~~~~~~~~~~~ **Description**: Root directories for scripts. :Subsystem: ScriptQueue :EFDB_Topic: ScriptQueue_logevent_rootDirectories standard ******** :IDL_Type: string :IDL_Size: 1 :Units: unitless :Count: 1 **Description**: Root directory for standard scripts. external ******** :IDL_Type: string :IDL_Size: 1 :Units: unitless :Count: 1 **Description**: Root directory for external scripts.