Under what conditions should I recall rsslConnect and/or rsslInitChannel for an RSSL Consumer in the
Hi, I am trying to flush out disconnect handling for an RSSL Consumer connecting to a UPA server and I have some questions. The connection type this question is relevant to is RSSL_CONN_TYPE_SOCKET. I am first wondering if there are any general guidelines on usage of rsslConnect and rsslInitChannel in the event of failure to connect or disconnection. I also have some specific questions regarding the proper course of action to take in various scenarios.
- Say the first call to rsslConnect returns a NULL pointer. I assume in this case the only sensible course of action is to wait a retry period and attempt the call again later.
- Say a connection is established with the UPA server, the logon is successful, and messages are being exchanged. Later, a call to rsslRead or rsslWrite fails and inspecting the channel state reveals the channel state is RSSL_CH_STATE_CLOSED. There are a few courses of action that I see as being likely, but am unsure which, if any, are the right one:
- Call rsslInitChannel until the connection is reestablished and the channel state is RSSL_CH_STATE_ACTIVE. I suppose this case begs the question, do I need to logon again?
- Call rsslConnect again, followed by calls to rsslInitChannel
- Completely tear down the connection with rsslCloseChannel and then completely start over
Thank you very much for your time
Best Answer
-
Thank you for reaching out to us.
If the channel's state is RSSL_CH_STATE_CLOSED, the application needs to close the channel, and then call rsslConnect again followed by rsslInitiChannel until the channel is active.
If the rsslConnect method returns NULL, the application should get an additional information in the RsslError structure.
You can refer to the Consumer example in the package regarding how to handle the channel's states.
1
Categories
- All Categories
- 6 AHS
- 37 Alpha
- 161 App Studio
- 4 Block Chain
- 4 Bot Platform
- 16 Connected Risk APIs
- 47 Data Fusion
- 30 Data Model Discovery
- 608 Datastream
- 1.3K DSS
- 577 Eikon COM
- 4.9K Eikon Data APIs
- 7 Electronic Trading
- Generic FIX
- 7 Local Bank Node API
- Trading API
- 2.7K Elektron
- 1.3K EMA
- 236 ETA
- 519 WebSocket API
- 33 FX Venues
- 10 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 20 Messenger Bot
- 2 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 59 Open Calais
- 264 Open PermID
- 39 Entity Search
- 2 Org ID
- PAM
- PAM - Logging
- 8.4K Private Comments
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 20 RDMS
- 1.4K Refinitiv Data Platform
- 367 Refinitiv Data Platform Libraries
- 3 Refinitiv Due Diligence
- LSEG Due Diligence Portal API
- 3 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.1K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 10 World-Check Customer Risk Screener
- 990 World-Check One
- 44 World-Check One Zero Footprint
- 45 Side by Side Integration API
- Test Space
- 3 Thomson One Smart
- 1.2K TR Internal
- Global Hackathon 2015
- 2 Specialists Who Code
- 10 TR Knowledge Graph
- 150 Transactions
- 142 REDI API
- 1.7K TREP APIs
- 4 CAT
- 21 DACS Station
- 117 Open DACS
- 1.1K RFA
- 103 UPA
- 172 TREP Infrastructure
- 224 TRKD
- 886 TRTH
- 5 Velocity Analytics
- 5 Wealth Management Web Services
- 59 Workspace SDK
- 9 Element Framework
- 5 Grid
- 13 World-Check Data File
- Yield Book Analytics
- 46 中文论坛