File: WebAPI/user_session_2.proto
Message for multi-step logon which user should use in the case if it is required to use encoded password. Multi-step logon sequence has the following steps:
1. Client initiates logon negotiation by sending LogonRoutineClient.logon_init message to the server.
2. The server sends one or more LogonRoutineServer.password_request messages (this step may repeat after step #3).
3. Client sends list of LogonRoutineClient.password_response back to the server.
4. The server optionally asks accept trader’s agreement (LogonRoutineServer.trader_agreement_url).
5. Client responds with LogonRoutineClient.trader_agreement_accepted equal to True if the user accepts agreement, False or LogonRoutineClient.abort_logon otherwise.
6. The server sends LogonRoutineServer.logon_result as the final message of the negotiation with the results.
Client may stop negotiation by sending LogonRoutineClient.abort_logon message in response to any server LogonRoutineServer.password_request or LogonRoutineServer.trader_agreement_url requests.
Note: Only one of the fields must be specified.
Response: LogonRoutineServer.
Type: LogonInit
Description: Initiating multi-step logon process by client.
Type: PasswordResponse
Description: List of passwords in response to request from the server. The number of passwords in response should be equal to the number of passwords in the request from the server.
Type: bool
Description: True means user has accepted the trader agreement.
Type: AbortRoutine
Description: Aborting of multi-step logon process by client.