Just a second...

Connecting to Diffusion Cloud

One of the first actions your Diffusion™ Cloud client takes is to connect to Diffusion Cloud. Clients connect to Diffusion Cloud by opening a session. A session represents a logical context between a client and Diffusion Cloud. All interactions with Diffusion Cloud happen within a session.

Sessions

The act of opening the session establishes a connection with the Diffusion Cloud. When a session is opened it is assigned a unique session identifier by Diffusion Cloud, which identifies the session even if your Diffusion Cloud service fails over to another datacenter.

The session does not receive input from Diffusion Cloud until it is started, but can be used to obtain features and perform certain setup actions before it is started.

Session state

The session between a client and Diffusion Cloud can be in one of a number of states.

The following diagram shows the session state model:
Figure 1. Session state model When a session is opened is goes into CONNECTING state. From the CONNECTING state, the session can go into the CONNECTED_ACTIVE state or into one of the closed states: CLOSED_FAILED, CLOSED_BY_CLIENT, or CLOSED_BY_SERVER. From the CONNECTED_ACTIVE state, the session can go to the RECOVERING_RECONNECT state or to one of the closed states. From the RECOVERING_RECONNECT state, the session can return to CONNECTED_ACTIVE state or go to one of the closed states.
CONNECTING
The client session is in this state while it attempts to connect to Diffusion Cloud. If the connection attempt is successful, the session changes to CONNECTED_ACTIVE state. If the connection is not successful, the session changes to one of the closed states.
CONNECTED_ACTIVE
The client session is in this state while it is connected to Diffusion Cloud. The session spends the majority of its lifetime in this state. If the session becomes disconnected and reconnect is enabled, the session changes to RECOVERING_CONNECT state. If the session closes, it changes to one of the closed states.
RECOVERING_CONNECT
The client session is in this state while it attempts to reconnect to Diffusion Cloud after a disconnection. If the reconnection attempt is successful, the session changes back to CONNECTED_ACTIVE state. If the reconnection attempt is not successful, the session changes to one of the closed states.
CLOSED_BY_CLIENT
The client session is in this state when it is closed by the client. If a session is in closed state, it cannot be reopened. A new session must be established.
CLOSED_BY_SERVER
The client session is in this state when it is closed by Diffusion Cloud. If a session is in closed state, it cannot be reopened. A new session must be established.
CLOSED_FAILED
The client session is in this state when it is closed for any reason other than a close by the client or by Diffusion Cloud. If a session is in closed state, it cannot be reopened. A new session must be established.

For more information, see Managing your session.

Session properties

When you connect to Diffusion Cloud by opening a session, the session is assigned a set of properties. These properties are assigned by either Diffusion Cloud or an authentication handler and can be used by clients to filter the set of connected client sessions to take actions on.

A client can propose session properties. The proposed session properties are passed to the authentication handler which can accept the properties, modify the properties, or ignore them entirely.

For more information, see Session properties.

Session roles

When a session authenticates with Diffusion Cloud, the session is assigned a set of roles. These roles are assigned by either Diffusion Cloud or an authentication handler and define the set of permissions a client session has.

For more information, see Role-based authorization.