Configure Scheduler jobs

This section describes how to configure each Scheduler job.

How does the Scheduler work?

The Scheduler executes scheduled jobs such as sending reminders to users, pre-generating outputs, creating activity reports, etc.

The Scheduler is based on two job types. These job types use different methods to determine the list of objects to process. The jobs are:
  • Tickets: Tickets are based on job triggers. Job triggers are sets of code that are executed when users perform a status change. When the DITA CMS executes a job trigger, it creates tickets that contain information specific to the job trigger and the objects it applies to. The tickets are stored in the Content Store (in the Repository\system\scheduler\outbox collection). When a Scheduler job based on tickets is run, the Scheduler retrieves these tickets from the Content Store, processes them, and then deletes the tickets from the Content Store as they are processed.

    For example, the DITA CMS Activity Report uses a trigger that creates a ticket when a document has reached a status that requires the user's action. When the Scheduler executes the DITA CMS Activity Report job, it retrieves all the appropriate tickets from the Content Store, creates notification emails that are sent to the users, and then deletes the tickets from the Content Store. Users will not be notified again.

    The following diagram shows how a job based on tickets is executed by the DITA CMS and the Scheduler.

  • Document queries in the Content Store: When a Scheduler job based on document queries is run, it retrieves from the Content Store the documents that correspond to a set of criteria. For example, the Review Report retrieves from the Content Store all the maps that are in review status, are assigned to a reviewer, and are assigned a due date. It then builds a report from this data that is sent to project coordinators.

    While the jobs based on tickets are executed only once for a specific set of tickets (since tickets are deleted after being processed), jobs based on document queries may perform the same action, each time it is run, until the list of objects no longer match the criteria. For example, consider a Review Report that is sent daily. On Monday, the report contains 5 maps that are in review status. If the status of the maps does not change all week, then the Review Report will list the 5 maps every day, until the maps are moved to another status.

The Scheduler jobs run at configured intervals, based on crontab-like values specified in the schedule.xml file.

Some Scheduler jobs use XSLT templates to create the email notifications. These templates are stored in the Content Store and can be configured.

The following table summarizes all the available Scheduler jobs:
Table 1. Scheduler jobs
Job name Job description Configurable template(s) Method used
ReportsScheduler Schedules and runs user reports created with the DITA CMS. The reports are run according to the schedule specified in the DITA CMS report. N/A Document queries
DITACMS ActivityReport Sends an email notification when a document assigned to a user has reached a status that requires the user's action. Change.status_ticket.xsl Tickets
DailyReminder Sends an email notification reminding users about the documents that are due and require an action. Daily_reminder.xsl Document queries
Generate ReviewOutputs Pre-generates the review PDFs so that the reviewer does not have to wait when topics or maps go into review state. N/A Tickets
ReviewReport Provides a status report to project coordinators on all maps in review status. N/A Document queries
TopicReview Report Provides a status report to project coordinators on all topics in review status. N/A Document queries
GarbageManJob Cleans the outbox collection by deleting tickets older than 7 days N/A Document queries
TimeBased ReviewReport Sends an email notification reminding reviewers and their managers that their reviews are due.
  • report_manager.xsl
  • report_reviewer.xsl
Document queries
PrepareKitJob Documentation in progress. N/A Document queries
ProjectMessageJob Sends an email to the members of a project when a message is added to the project's bulletin board project_message.xsl Tickets
The following topics explain in detail all the Scheduler jobs and gives step-by-step instructions on how to configure them.
Important note:

Configure at least one job per 24-hour period. This is required since the TEXTML Server closes connections that have been inactive for more than 24 hours. If the Scheduler loses its connection to the TEXTML Server, you have to restart the Scheduler.