This Serviceis used to terminate a Session. The Servertakes the following actions when it receives a CloseSessionrequest:

  1. It stops accepting requests for the Session. All subsequent requests received for the Sessionare discarded.
  2. It returns negative responses with the StatusCodeBad_SessionClosed to all requests that are currently outstanding to provide for the timely return of the CloseSessionresponse. Clientsare urged to wait for all outstanding requests to complete before submitting the CloseSessionrequest.
  3. It removes the entry for the Clientin its SessionDiagnosticsArray Variable.

When the CloseSession Service is called before the Sessionis successfully activated, the Servershall reject the request if the SecureChannelis not the same as the one associated with the CreateSessionrequest.

Table 19defines the parameters for the Service.

Table 19– CloseSession Service Parameters

Name

Type

Description

Request

requestHeader

RequestHeader

Common request parameters (see 7.28for RequestHeaderdefinition).

deleteSubscriptions

Boolean

If the value is TRUE, the Server deletes all Subscriptions associated with the Session. If the value is FALSE, the Server keeps the Subscriptions associated with the Session until they timeout based on their own lifetime.

Response

responseHeader

ResponseHeader

Common response parameters (see 7.29for ResponseHeaderdefinition).

Table 20defines the Serviceresults specific to this Service. Common StatusCodesare defined in Table 177.

Table 20– CloseSession Service Result Codes

Symbolic Id

Description

Bad_SessionIdInvalid

See Table 177for the description of this result code.