ExFix.SessionHandler behaviour (ex_fix v0.2.8)
FIX Session Handler behaviour. Declare callbacks to process received FIX messages and session events.
Summary
Callbacks
Callback - FIX message received (application level).
Called after a Logon message is received from counterparty
Called after a Logout message is received from counterparty or after a disconnection, which occurs first.
FIX message received (session level). Same arguments of on_message()
.
Callbacks
@callback on_app_message( session_name :: ExFix.Session.session_name(), msg_type :: String.t(), msg :: ExFix.InMessage.t(), env :: map() ) :: any()
Callback - FIX message received (application level).
This function receives:
- session id (String or PID), example: "simulator"
- message type (String) see here for a complete list of FIX 5.0 SP2 message types.
- msg - InMessage struct with message. If
msg.complete == false
, it is needed to call:msg = ExFix.Parser.parse2(msg)
- env - Map sent to
ExFix.start_session_initiator()
.
@callback on_logon(session_name :: ExFix.Session.session_name(), env :: map()) :: any()
Called after a Logon message is received from counterparty
@callback on_logout(session_name :: ExFix.Session.session_name(), env :: map()) :: any()
Called after a Logout message is received from counterparty or after a disconnection, which occurs first.
@callback on_session_message( session_name :: ExFix.Session.session_name(), msg_type :: String.t(), msg :: ExFix.InMessage.t(), env :: map() ) :: any()
FIX message received (session level). Same arguments of on_message()
.