Hot Folder Job Submission
Hot Folder Job Submission is a method that allows jobs to be submitted to the Smart Print Controller without using the UI.
This is useful in larger workflows allowing a process before the Smart Print Controller (for example imposition) to automatically submit jobs.
Hot Folder Job Submission is always enabled and available.
Hot Folder Location
The Hot Folder Location is defined in the Engineering Pane → Folders → Waiting Queue Folder.
It is good practice when using a Hot Folder workflow to ensure the correct folder is used.
The location of the Waiting Queue Hot Folder is reported over the OPC interface (App/WaitingQueueFolder).
Submitting a Job
The Waiting Queue Hot Folder contains a file called printrun.config.
This is a JSON file that contains information about the current setup of the Smart Print Controller.
Stages in the workflow before Smart Print Controller can use this information to prepare the job before submission.
A job is submitted in two stages:
- Write the file to be processed (e.g. MyFile.pdf) to the Waiting Folder.
- Write a '.complete' file (e.g. MyFile.pdf.complete) to the Waiting Folder
Step two is used to indicate to SPC that the write of the pdf file has completed, therefore these must be two distinct operations and must not overlap.
Once a job has been accepted into SPC, the original file and .complete file are replaced by a single PDF file with a UID as the filename.
printrun.config Format
This file contains a JSON representation of key setting inside the Smart Print Controller
Example printrun.config
{
"DuplexMode": "SimplexSideA",
"ActiveMediaWidthMm": 330.2,
"CueMarkIntervalMm": 254.0,
"PageLayouts": {
"SideA": {
"PrintPosition": "GearLeft",
"PrintMarginMm": 0
},
"SideB": {
"PrintPosition": "GearLeft",
"PrintMarginMm": 0
}
},
"PossibleDuplexModes": "SimplexSideA",
"PossiblePrintPosition": "GearLeft Center OperatorRight",
"Colorants": {
"Black (A)": {
"Resolution": "1200 x 1200 dpi",
"BitsPerPixel": 2
},
"Cyan (A)": {
"Resolution": "1200 x 1200 dpi",
"BitsPerPixel": 2
},
"Magenta (A)": {
"Resolution": "1200 x 1200 dpi",
"BitsPerPixel": 2
},
"Yellow (A)": {
"Resolution": "1200 x 1200 dpi",
"BitsPerPixel": 2
}
},
"AvailableMedia": [
"Media_Default"
]
}
DuplexMode
supports the values listed in the PossibleDuplexModes
list, which you can customize to be a subset of the following:
SimplexSideA
SimplexSideB
DuplexSideAFirst
DuplexSideBFirst
PrintPosition
supports the values listed in the PossiblePrintPosition
list, which you can customize to be a subset of the following:
GearLeft
Center
OperatorRight
.complete Format
The .complete file must have the same filename as the job to submit (including extension) with .complete append to the end.
This can be an empty file in which case it is used to trigger the Smart Print Controller to start processing, but all settings are left unchanged.
It can also be a JSON file with the following keys:
Key | Type | Description |
---|---|---|
CopyCount | Integer | The number of copies required. |
JobTag | String | A property which can be used to attach arbitrary state to a job. |
Mis | Dictionary | This can be used to attach MIS information to a job and can be read as part of the Job Information via the OPC interface.
Both are string values. |
TargetMediaName | String | The name of the media required for this job. |
LiLo | Dictionary | For LILO jobs the first page is used as the Lead In page, the second page is the Lead Out page, and all remaining pages are the content of the job.
Both are integer values. |
Example .complete File
{
"CopyCount": 10,
"Mis": {
"JobId": "MyJob",
"JobPartId": "Item 72"
},
"TargetMediaName": "Media_Default"
}