Programmer's Guide:
Using Server Administration Tools

Interacting with the eRoom Scheduler


The eRoom Scheduler is an NT Service that runs on the eRoom server. It is responsible for a variety of functions that the eRoom server needs to perform at regular intervals. SAAPI exposes an object called the Scheduler which allows you to interact with this service.

You access the Scheduler object via the Scheduler property in IERUeRoomServer. The Scheduler object implements only one interface, IERUScheduler, which allows you to check if the Scheduler service is running, start or stop it, find out the next time that it's daily jobs are scheduled to run and the last time they ran, and get the status message from the last time it ran.

The eRoom Scheduler service is responsible for the following functions:

  • Fulltext indexing of files stored in eRooms

  • Synchronization of community member information with external directories

  • Notifying users via email about activity within eRooms

  • Retrieving mail from POP servers and copying it to eRoom inboxes

  • Spooling outbound mail to SMTP servers.

For ease of administration through SAAPI, each of these functions is embodied by a SAAPI object. These objects are described in the following sections.

Administering the Fulltext Indexer


The Fulltext Indexer is responsible for detecting when files are added, modified, or deleted in any Facility on the eRoom server. When one of these events occurs, it updates a fulltext database (one for each Facility). These fulltext databases are queried against when users do eRoom "Find" operations.

The eRoom Scheduler service runs the Fulltext Indexer once every five minutes.

The Fulltext Indexer is accessible via the FulltextIndexer property of IERUSite. It implements the IERUFulltextIndexer interface, which has an Enabled property to enable/disable indexing, and a RebuildIndex method, which can be used to recreate an fulltext index from scratch, if necessary.

Administering the Directory Synchronizer


The eRoom scheduler is responsible for coordinating member information for each community with its external directory, if any. You can administer this behavior through the use of the Directory Synchronizer object, which is accessible via the DirectorySynchronizer property of IERUScheduler.

The eRoom Scheduler service runs the Directory Synchronizer once a day, at approximately the time indicated by NextRunTime property of the Scheduler object.

The Directory Synchronizer object implements IERUDirectorySynchronizer, which has an Enabled property to enable/disable synchronization, an IsRunning property to indicate if synchronization is currently in progress, and a Run method to synchronize immediately instead of waiting for the eRoom Scheduler to run it on its normal schedule.

Administering the Mail Notifier


The eRoom Scheduler service sends email to users to notify them of activity within eRooms. It can send a report of a full day's activity once a day and/or it can send reports immediately when activity occurs, if users request it. You can administer this behavior through the Mail Notifier object, which is accessible via the NightlyNotifier and InstantNotifier properties of the IERUMailNotifier.

For "immediate" notifications, the eRoom Scheduler checks for activity every five minutes. For the once-a-day email notifications, it runs the Mail Notifier at approximately the time indicated by NextRunTime property of the Scheduler object.

The Mail Notifier object implements IERUMailNotifier, which has an Enabled property to enable/disable mail notification, an IsRunning property to indicate if mail notification is currently in progress, and a Run method to do mail notification immediately instead of waiting for the eRoom Scheduler to run it on its normal schedule.

Administering the Inbox Mail Retriever


The eRoom Scheduler service is responsible for polling the POP server accounts configured for eRoom inboxes, retrieving any new mail and copying it into the eRoom. This behavior can be controlled through the Inbox Mail Retriever object, which is accessible via the InboxMailRetriever property of IERUScheduler.

The eRoom Scheduler checks for new mail every five minutes.

The Inbox Mail Retriever object implements IERUInboxMailRetriever, which has an Enabled property to enable/disable mail retrieval, an IsRunning property to indicate if mail retrievalis currently in progress, and a Run method to do mail retrieval immediately, instead of waiting for the eRoom Scheduler to run it on its normal schedule.

Administering the Mail Spooler


The eRoom Scheduler service spools all outgoing mail. This means that messages are stored in an outbox until the eRoom Scheduler picks them up and sends them to an SMTP server. If the SMTP server is unavailable, the eRoom Scheduler retries the operation later.

You can administer this functionality through the Mail Spooler object, which is accessible via the MailSpooler property in IERUSite. The Mail Spooler object implements the IERUMailSpooler Interface. Currently, the only information that can be configured is the name of the SMTP server, which is stored in the SMTPServer property.