Building Application With Exchange 2000 Store Events Part 1: The Basics PowerPoint PPT Presentation

presentation player overlay
1 / 23
About This Presentation
Transcript and Presenter's Notes

Title: Building Application With Exchange 2000 Store Events Part 1: The Basics


1
Building Application With Exchange 2000 Store
Events Part 1 The Basics Nat BallouProgram
ManagerExchange Product UnitMicrosoft
Corporation
2
(No Transcript)
3
Agenda
  • Background
  • Exchange 5.5 Scripting
  • Exchange 2000 Event Sources
  • OLE DB/ADO 2.5
  • Store Events
  • Scenarios
  • Architecture
  • Synchronous versus Asynchronous
  • Event Registration

4
Background
5
Exchange 5.5 Scripting
  • Server scripts (Agents) triggered by events
    in Exchange folders
  • New, change, delete, timer asynchronous
    (notification) events
  • Public or private folders containing any item
    type
  • Targeted for corporate developers, Solution
    Providers
  • Extend functionality of Exchange folders without
    writing C code
  • Part of Exchange Server 5.5 and later

6
Exchange 5.5 Scripting
  • Not the answer for everything
  • E.g., No House Rules
  • Events are asynchronous
  • No guarantee that other applications cant modify
    or delete a message before you
  • E.g., can not process outgoing mail
  • Does not scale as high as rest of Exchange
  • Not well-suited for high-volume applications
  • E.g., scan all incoming mail
  • Low- to medium-volume groupware applications

7
Making Exchange 2000 Programmable
  • Exchange 2000 is extensible through events
  • Server functionality is built using an event
    architecture
  • Various plug-in components are built using store
    events (content-indexing, wireless, unified
    messaging, CDO, schema population, workflow,
    etc.)
  • Architecture supports C, VB, and script event
    sinks

8
Event Sources
  • Transport Events
  • Supports C and VB event sinks
  • In-process
  • Protocol Events
  • Supports C and VB event sinks
  • CDO extensions for VB event sinks
  • In-process
  • Store Events
  • Supports C,VB, and script event sinks
  • Synchronous and asynchronous
  • Out-of-process

9
OLE DB And ADO 2.5
  • Store event sinks use OLE DB or ADO to access
    Exchange 2000 store
  • Important OLE DB/ADO 2.5 Features
  • Stream support
  • URL binding
  • Heterogeneous rows

10
Demonstration
  • OnSyncDelete

11
Store Events
12
Store Event Scenarios
  • Data Validation/Integrity
  • Use OnSyncDelete to update other data structures
    or sources
  • Workflow
  • Use OnSyncSave to trap changes to a document
  • Use OnTimer to poll or monitor status of a
    document
  • Web Forms
  • Use OnSyncSave to validate form data
  • Use OnTimer to purge orphaned forms

13
Store Events
  • An event fires when an item or folder is saved,
    moved or deleted within the store
  • Events are scoped to a particular folder
  • Events can be synchronous or asynchronous
  • Event sinks can be written in C, VB, or script

14
Store Event Architecture
  • Event sinks run in their own process
  • Event sinks must run on the same machine as the
    store

15
Synchronous Events
  • Occur before the item is committed to the store
  • Occur within the context of a transaction
  • Are fired in the order specified in the event
    registration
  • Synchronous events are fired twice
  • Once to indicate that the event occurred
  • Once to indicate that the item was committed or
    aborted
  • Synchronous sinks are passed OLE DB/ADO interfaces

16
Asynchronous Events
  • Occur after the item has been committed to the
    store
  • Are not fired in any particular order
  • Are guaranteed to be delivered
  • Asynchronous sinks are passed URLs

17
Demonstration
  • OnSave

18
Event Registration
  • Registration of an event on a folder is
    controlled by an item with a specific
    content-class saved in the folder
  • Events are scoped to fire in a particular folder
    and/or child folders
  • Synchronous events have an assigned priority
  • Each registration may contain criteria in the
    form of a SQL where clause
  • OnTimer registrations have a start time, an
    interval, and expiry time

19
Available Store Events
  • Synchronous
  • OnSyncSave
  • OnSyncDelete
  • Asynchronous
  • OnSave
  • OnDelete
  • System
  • OnTimer
  • OnMDBStartUp
  • OnMDBShutdown

20
Advanced Topics
  • Registration parameters
  • Event firing order
  • Event security
  • COM applications
  • Transactions
  • Visual Basic examples
  • Etc.

21
Store Events
  • Questions?

22
Developer Key Messages
  • http//msdn.microsoft.com/exchange is your
    complete source for Exchange developer
    information
  • Build Web applications using the Web Store 
  • Access data in the Exchange store with ADO 2.5 or
    OLE DB 2.5
  • Use CDO to add collaboration and workflow
    functions
  • Add server-side logic with Store Events

23
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com