Microsoft® Exchange® Server Routing is a set of tools that simplifies the development of e-mail-based routing and approval applications. It contains three main components:
Routing engine This COM component runs on the Event Service (see Event Handling Architecture) on Microsoft Exchange Server version 5.5. It acts as a simple state engine that executes and tracks multiple process instances within a Microsoft Exchange folder. The state is advanced when events fire within the folder. The routing engine supports the execution of flow-control activities directly, and it can call Microsoft® Visual Basic® Scripting Edition (VBScript) functions for other activities. Microsoft Exchange Server Routing also works with the Microsoft Transaction Server (MTS); see Scripts, Agents, and Security and Security with Custom Handlers.
Routing objects These COM objects are used to program the routing engine's behavior. These objects allow the creation and manipulation of process maps, which define the series of states to be tracked by the routing engine and the activities to be performed at each step.
VBScript actions These are a default set of common VBScript functions for routing. They include functional activities such as Send, Receive, and Consolidate as well as evaluation activities such as IsTimeout and IsNDR. Developers can extend these activities with custom script functions as their application needs dictate.
Using these components, developers can create applications such as simple process designers, which allow users to define and create the steps in routing/approval application. An example of such a program, the Microsoft Exchange Routing Wizard, is included with Microsoft Exchange 5.5 routing objects as a sample application.
Setting up Microsoft Exchange Routing
Microsoft Exchange Server version 5.5, Service Pack 1 (SP1) includes the components used for routing. During the installation of SP1, the routing engine and the routing objects are installed to the server automatically if the requisite Microsoft Exchange Scripting Agent is present.