FIX session configuration

FIX session attributes can be divided into three groups:

To create a new session configuration, you should define the static attributes such as

Parameters of static configuration define the initial parameters for the dynamic parameters. The static configuration can be changed when the current FIX session is not connected.

Although you can modify the ones at any time. If the session is connected, the changes will be stored in the database, and only the latest changes will be applied when the session will become disconnected.

Dynamic parameters exist only when the session is connected. When the session is connected, the FIXICC H2 copies the instance of the static configuration for the initial values for the dynamic parameters.

Dynamic parameters can be changed as a reaction to session events during the connection.

Dynamic parameters will be destroyed when the connection is over.

Metrics also exist only when the session is connected. Metrics are parameters that are added to the session static configuration during the connection. In some cases, metrics can behave as dynamic parameters.

Static FIX session configuration

Firstly, you should select the server to add a new session configuration.

Figure. Selecting the server from the list.

You should pass from the page "Servers" to the detailed info page of the selected server configuration:

Then the FIXICC H2 opens the page with the sessions list configured for the selected server.

Figure. The server sessions list.

Adding a new FIX session configuration from scratch

To add a new session from scratch, you should press the "Create" button.

Figure. The "Server Sessions".


You can choose the new session role from the "Create" drop-down menu:

As well, you can create a new session configuration by clicking the "Create Acceptor Session"/ "Create Initiator Session" items from the context menu.

When you select a new session role, the FIXICC H2 opens the "New session" page.

Create an acceptor session

To create a new acceptor session, you should select the "Acceptor" role:

Figure. The "Create Acceptor Session" option.

The FIXICC H2 opens the "New session" page for a new acceptor session.

Figure. Acceptor session parameters.


Create an initiator session

To create a new initiator session, you should select the "Initiator" role:

Figure. Create an initiator session.

The FIXICC H2 opens the "New session" page for a new initiator session.

The initiator session has a specific mandatory set of parameters to establish a connection:

You can see them in the figure below.

Figure. Initiator session parameters.


Complete the adding a new session configuration

To finish the adding, you should fill the mandatory fields, which are highlighted with red edges.


The full list of session parameters and descriptions you can find in Configuring FIX sessions.

After you specified all details, you have the following options:

If all mandatory parameters are specified and the Name, SenderCompID, TargetCompID are unique, then a new session is added to the selected server and the FIXICC H2 displays the sessions table including a new session configuration.

In case the session name is not unique,

the FIXICC H2 displays the error form with the message "Session <session-name> already exists".

In case the session SenderCompID and TargetCompID aren't not unique,

the FIXICC H2 displays the error form with message "Session with <SenderCompID> and <TargetCompID> already exists";


When you click the "X" button,

the FIXICC H2 displays the "New session" page again to change the duplicated parameters.

In case mandatory parameters aren't specified,

then the FIXICC H2 displays the alert form:

Figure. The alert form for empty session mandatory parameters.

After the alert form is hidden, the FIXICC H2 displays the "New session" page again to fill in the mandatory parameters.


Then the FIXICC H2 displays the sessions table without changes;

Figure. The warning form. 

The FIXICC H2 offers the following options:

º Save the entered values as a new session configuration.

Then a new session is added to the selected server and the FIXICC H2 displays the sessions table, including a new session configuration.

º Skip the changes by clicking the "Don't save" button.

A new session configuration won't be added. The FIXICC H2 displays the sessions table without changes;

º Stay on the "New session" page by clicking the "Cancel" button.

The FIXICC H2 displays the "New session" page to continue the editing.

Cloning an Existing FIX Session Configuration

You have the ability to create a new session by cloning the existing one and changing unique parameters.

To clone a session, you should select the session from the session list and click the "Clone" button.

Figure. Clone session.


The FIXICC H2 copies the selected session parameters to a new session and displays the "New session" page with the fields filled with the values from the selected session.

You have the same options as to when a new session is created from scratch:

If all mandatory parameters are specified and the Name, SenderCompID, TargetCompID are unique, then a new session is added to the selected server and the FIXICC H2 displays the sessions table including a new session configuration.

In case the session name is not unique,

the FIXICC H2 displays the error form with the message "Session <session-name> already exists".

In case the session SenderCompID and TargetCompID aren't not unique,

the FIXICC H2 displays the error form with message "Session with <SenderCompID> and <TargetCompID> already exists";


When you click the "X" button,

the FIXICC H2 displays the "New session" page again to change the duplicated parameters.

In case mandatory parameters aren't specified,

then the FIXICC H2 displays the alert form:

Figure. The alert form for empty session mandatory parameters.

After the alert form is hidden, the FIXICC H2 displays the "New session" page again to fill in the mandatory parameters.


Then the FIXICC H2 displays the sessions table without changes;

Figure. The warning form. 

The FIXICC H2 offers the following options:

º Save the entered values as a new session configuration.

Then a new session is added to the selected server and the FIXICC H2 displays the sessions table, including a new session configuration.

º Skip the changes by clicking the "Don't save" button.

A new session configuration won't be added. The FIXICC H2 displays the sessions table without changes;

º Stay on the "New session" page by clicking the "Cancel" button.

The FIXICC H2 displays the "New session" page to continue the editing.

Modifying an Existing FIX Session Configuration

You have the ability to edit the existing session configuration.

You should select the session from the sessions list configured for the server.

Figure. Edit session.

You can select one of the following options to edit the session:


The FIXICC H2 displays the "Modify session" page. You can change the selected session static parameters.

Figure. Modify session.


After you finished the changes, you can follow the same flow as to when a new session is created:

If all mandatory parameters are specified then the session is modified and the FIXICC H2 displays the sessions table including modified session configuration.

In case mandatory parameters aren't specified,

then the FIXICC H2 displays the alert form:

Figure. The alert form for empty session mandatory parameters.

After the alert form is hidden, the FIXICC H2 displays the "Modify session" page again to fill in the mandatory parameters.

Then FIXICC H2 displays the sessions table. The selected session isn't changed;

Figure. The warning form. 


The FIXICC H2 offers the following options:

º Save the changes by clicking the "Save" button.

Then the FIXICC H2 displays the sessions table. The selected session is modified.

º Skip the changes by clicking the "Don't save" button.

Then FIXICC H2 displays the sessions table. The selected session isn't changed;

º Stay on the "Modify session" page by clicking the "Cancel" button.

The FIXICC H2 displays the "Modify session" page to continue the editing.

Removing an Existing FIX Session Configuration

You have the ability to remove the existing session configuration.


Figure. Remove session.

To remove a session, you should select one and then follow one of the options below:

The FIXICC H2 displays the confirmation window:

Figure. Confirmation window.


You have two options:

Then the FIXICC H2 displays the server details page without the removed session configuration;

 A running session will be disconnected and stopped first and then removed from the server and unbound from the schedule.

Then FIXICC H2 displays the sessions list without changes.

Session and schedule binding

A session can start and stop with the server or according to the custom schedule.

You can select a schedule:

Figure. The default "Scheduler" section.

Figure. The "Scheduler" section.


You can configure all sessions to start and stop with the server.

You should comment FixLayer.FixEngine.Sessions.DefaultStartTime and FixLayer.FixEngine.Sessions.DefaultTerminateTime properties in the FIXEdge.properties file.

In this case, when no custom schedule was configured for the session then the session will start right after editing is finished.

In the "Scheduler" section, you have the ability to:

Figure. The "Server Schedules" in the popup window.

As well, you can Create ("3" label in the figure above), Edit ("4" label in the figure above), and Remove ("5" label in the figure above) the schedule configuration in the "Server Schedules" popup window.

The schedules list can be filtered by using:

As well, you can use Extended Filter for searching server information.


To finish the binding, you should click the "OK" button (on the Figure. The "Scheduler" section, or Figure. The default "Scheduler" section).

The FIXICC H2 will bind the current session with the selected schedule if one was specified.

To cancel all changes, you should click the "Cancel" button (on the Figure. The "Scheduler" section, or Figure. The default "Scheduler" section).

If the binding operation is failed, the error form and notification are shown.

Figure. The binding error form.

Dynamic FIX session configuration

Server Sessions

You can monitor the dynamic state of the configured sessions for the selected server.

Figure. The "Servers" page.

You should pass from the page "Servers" to the chosen server:

Or you can pass to the "Server Session" page from the "Notifications" page by clicking the name of the selected server.

Figure. The "Notifications" page with the name of the selected server.

Now you can see the session monitoring layout.

Figure. The "Server Sessions" page.

The first column of the table contains the session status indicator. This parameter shows the dynamic status of each session configured for the selected server.

You can easily detect the session status according to the list:

IndicatorStatusSession status

Initialthe session is added to the FIXICC H2 database but is absent un the FIXEdge configuration

Plannedthe session is planned to be added to the session configuration (any message can't be sent to the session in the planned state)

Connecting/ Reconnectingthe initiator session is connecting/ acceptor session is waiting for logon message

Runningthe session is running (initiator and acceptor sessions are connected)

Runningthe initiator session is running (initiator session is connected to the backup acceptor session)

Disconnectedthe session is disconnected

As well, you can see the "Status" column so you can filter the displaying list of the sessions by dynamic status.

In the table, you can see the actual set of sessions received from the FIXEdge C++.


You can monitor the changing of the session parameters and session state just by staying on the page.

The dynamic and static session parameters are changed as a response to the session events during the connection.

The frequency of the metrics values updating can be configured. The default value is 1 second.

Note: If the session name starts with the "*" symbol, this session configuration is added on the FIXEdge side and is absent in the FIXICC H2 database. This session configuration can't be edited, cloned, or removed.

If the session state is Initial, this session configuration is absent in the FIXEdge configuration, so the Start, Stop, Restart, Reset/Change Seq Num, Send arbitrary message operations are not applicable.

Figure. The "Server Sessions" page with the session is absent in the FIXICC H2 database.

Figure. The "Server Sessions" page with the session is absent in the FIXEdge configuration.

Filtering

You have the ability to filter the sessions list by using the Default Filter.

You can filter sessions by Name, SenderCompID, TargetCompID, or a combination of them.

As well, you can use Extended Filter for searching session information.

Session Dynamic State

You have the ability to see the dynamic state of the selected session:

From the "Server Sessions" page you should click on the selected session in the sessions table in the "Table view" layout part

Then the FIXICC H2 displays the "Session Dynamic State" page in the "Object info" layout part. 

As well, you can open the "Session Dynamic State" page in a new tab:

Figure. The "Server Sessions" page.

Or you can pass to the "Session Dynamic State" from the "Notifications" page by clicking the name of the selected session.

Figure. The "Notifications" page with the name of the selected session.


The FIXICC H2 opens the "Session Dynamic State" page in a new tab:

Figure. Session Dynamic State.

"Session Dynamic State" page contains:

º the session dynamic parameters,

º parameters of static configuration,

º schedule,

º metrics,

º and the drop-down menus with operations.

All information is updated in real-time.

The detailed information about the menus with session operations is in the "Session operations" section.

Figure. The "Session Dynamic State" page for the session is absent in the FIXEdge configuration.

Figure. The "Session Dynamic State" page for the session is absent in the FIXICC H2 database.