Websocket session with desktop session token
Hi Experts,
I'm using the example for setting up a websocket connection. All works fine when I'm using the token that was requested in that example or from a separate platform session. However it's not connecting passing token from the established desktop session.
The error message: "Text":"TREP authentication failed (1026, Request for token validation failed:Authentication server did not contain \"active\" in response)"
Thanks
Marcin
Best Answer
-
I have confirmed with the EDAPI team as follows:
Tokens used by the Data API Proxy to connect to the platform are neither supposed to be shared with the user nor used to establish other streaming connections (like RTO). Desktop sessions only support streaming connections opened through the Data API Proxy.
0
Answers
-
Not sure I fully understand - what is the desktop session you are referring to and how do you establish this? How are you extracting the token.
Also, please confirm which 'example for websocket connection' you are using.
The only understanding I have of a Desktop session is where you connect with the RDP Library to Eikon or Workspace running on your desktop. If that is the case, you cannot take a token from your desktop session (which is sourcing its data from Eikon via the Eikon API proxy) and somehow pass that to the RTO service that requires its own authentication and login process.
0 -
Hi @umer.nalla
Thanks for looking into it. The example is taken from git.
In the below example for auth_token I provide platform_session._access_token and it works but it fails with the desktop_session._access_token.
def _send_login_request(self, auth_token, is_refresh_token):
"""
Send login request with authentication token.
Used both for the initial login and subsequent reissues to update the authentication token
"""
login_json = {
'ID': 1,
'Domain': 'Login',
'Key': {
'NameType': 'AuthnToken',
'Elements': {
'ApplicationId': '',
'Position': '',
'AuthenticationToken': ''
}
}
}
login_json['Key']['Elements']['ApplicationId'] = app_id
login_json['Key']['Elements']['Position'] = position
login_json['Key']['Elements']['AuthenticationToken'] = auth_token
# If the token is a refresh token, this is not our first login attempt.
if is_refresh_token:
login_json['Refresh'] = False
self.web_socket_app.send(json.dumps(login_json))
print("SENT on " + self.session_name + ":")
print(json.dumps(login_json, sort_keys=True, indent=2, separators=(',', ':')))0 -
That example is getting its tokens from the RDP Authentication gateway and then passing that to Refinitiv Real-Time Optimised as part of the Login message - whereas your desktop session is with Eikon Data API Proxy.
So, as mentioned previously, I don't see how your Desktop token can be used as part of the Login message to the RTO service - it is no doubt tied to the RDP Auth gateway.
0 -
Thanks @umer.nalla now this is clear.
0
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 中文论坛