Event Components
The following components make up the event system for Simple Mail Transfer Protocol (SMTP) and Network News Transfer Protocol (NNTP) services:
- Protocol Service
- The SMTP or NTTP service. The service can receive incoming messages through the SMTP or NNTP protocols and their associated pickup directories.
- Pickup Directory and Network Socket
- The SMTP or NNTP service's local pickup directory and network socket. Newly posted or sent messages can arrive either in the local pickup directory, or over the network using the SMTP and NNTP protocols. The SMTP arrival mechanisms (pickup directory or network) cause the OnArrival event to occur. The NNTP arrival mechanisms (pickup directory or network) cause three events—OnPostEarly, OnPost, and OnPostFinal.
- Event Dispatcher
- The source of transport events. The event dispatcher notifies bound event sinks that the event has occurred.
- Event Sinks
- Component Object Model (COM) objects that respond to the event. The event dispatcher notifies bound event sinks of the event either by creating a new instance of the sink COM class, or by using a cached instance of the class.
- Message Object
- Sinks are passed a reference to a CDO Message object that is bound to an ADO Stream object. The Stream object contains the message content within the transport itself. Envelope fields for the in-transit message are exposed through the IMessage.EnvelopeFields property on the passed Message object.
- Configuration Metabase
- A database of information containing the event bindings. The SMTP and NNTP event dispatcher uses this database to identify event bindings for particular events. Event bindings are managed using the Server Extension Objects (SEO). Microsoft® Collaboration Data Objects (CDO) provides two command-line scripts—smtpreg.vbs and nntpreg.vbs—that simplify binding management. These scripts use the SEO to access the binding database.