inspects the SIP Initial Request (typically a SIP INVITE) and triggers one of the following modes for SCL to control a session: B2BUA Mode-Activates B2BUA mode for the SIP dialogue being pro- cessed, enabling the SCL to act as the mediator between two SIP endpoints. Terminating User Agent (TUA) Mode-Activates the TUA mode for the SIP dialogue being processed, enabling the SCL to respond directly to the origi- nator of the service session-e.g., the SCL determines that a caller is not authorized to establish a service and sends SIP 4xx error in response to a SIP INVITE. Proxy Mode-Activates Proxy mode for the SIP dialogue being processed, causing all messages received to be proxied toward their intended destination following processing by the SCL. Objects are then routed to the Event Dispatcher. The Event Dispatcher is respon- sible for identifying services on receipt of events belonging to new service dialogues and for dispatching these events between SCL modules. State machines are used to monitor the execution lifecycle of a service, or at least those stages in the lifecycle that are significant to the control or enrichment of the service by the SCL. Generally speaking, a state machine is used to model the protocol messages of interest in a given service. Rules can be attached to state machines such that they are triggered for evaluation by a Rules Engine on receipt of a given protocol message. External data such as user profile information can be queried during rules evaluation. An orchestration mechanism that composes one or more "to do" items expressed in an execution sequence list is generated by the Rules Engine. The Control Sequence Processor (CSP) manages the invocation of external business services according to this execution sequence list. Business services (e.g., online charging) are exposed to the CSP through Control Enabling Proxy (CEP). The CEP is responsible for resolv- ing the execution sequence list to the appropriate business capabilities, providing the required input parameters as well as proce