rmdstestclient invalid request
Hi,
We are developing a RSSL provider in RFA 8.
When we subscribe to a valid instrument with the rmdstestclient an connect to this provider we receive all related fields.
When I subscribe to an invalid instrument with the same rmdstestclient we do NOT receive any (status) info in the application itself.
Server: 1.2.3.4
Source: SOURCE1
Prot: rssl
Port: 20406
Number of Connection Count = 1
Creating RSSL connection Host: 1.2.3.4 Port: 20406
UPA server component version: rfa8.1.0.linux.eload 64-bit
Setting rmds connection 0x28e7ec0
Connection list count is 1
SupportBatchRequests Initial Open: Yes
SupportBatchRequests Reissue: Yes
SupportBatchClose: Yes
In the log (I use rmdstestclient with the -l parameter) however I do see the "error" message:
NOT_ENTITLED: Request not allowed. Account is not entitled for namespace 'test', which is good.
Received source directory response.
<!-- rwfMajorVer="14" rwfMinorVer="0" -->
<requestMsg domainType="RSSL_DMT_MARKET_PRICE" streamId="5" containerType="RSSL_DT_NO_DATA" flags="0x4C (RSSL_RQMF_STREAMING|RSSL_RQMF_MSG_KEY_IN_UPDATES|RSSL_RQMF_HAS_QOS)" qosDynamic="0" qosRate="1" qosTimeliness="1" dataSize="0">
<key flags="0x3 (RSSL_MKF_HAS_SERVICE_ID|RSSL_MKF_HAS_NAME)" serviceId="1" name="INVALIDRIC"/>
<dataBody>
</dataBody>
</requestMsg>
sendOpenRequest():
Writing open of size 33.
<!-- rwfMajorVer="14" rwfMinorVer="0" -->
<statusMsg domainType="RSSL_DMT_MARKET_PRICE" streamId="5" containerType="RSSL_DT_NO_DATA" flags="0x28 (RSSL_STMF_HAS_MSG_KEY|RSSL_STMF_HAS_STATE)" dataState="RSSL_DATA_SUSPECT" streamState="RSSL_STREAM_CLOSED" code="RSSL_SC_NONE" text="<NOT_ENTITLED: Request not allowed. Account is not entitled for namespace 'test'.>" dataSize="0">
<key flags="0x7 (RSSL_MKF_HAS_SERVICE_ID|RSSL_MKF_HAS_NAME|RSSL_MKF_HAS_NAME_TYPE)" serviceId="1" name="INVALIDRIC" nameType="1"/>
<dataBody>
</dataBody>
</statusMsg>
So the "error" message is sent by the profider but will not show up in rmdstestclient.
I wonder if we do send the correct containerType, dataState, streamState, flag etc.. or am I missing something, or is this a normal behavior of the rmdstestclient.
Thanks in advance.
Bas
Best Answer
-
Hi @bas.hagen
You can get rmdstestclient to output any Status messages to the console by enabling the interval Statistics display - which outputs stats for update rates, images received etc
e.g.
rmdstestclient -S ELEKTRON_DD -f vodrics -h ads1 -p 14002 -ct rssl -u umer.nalla -I 1 -l log.out
The above will log the data and output statistics every 1 second - and this will include any statusmsgs received .
The relevant parameter is '-I 1' - capital letter i and 1 for the interval.
The above gives me the following output:
......
Received Enum Dictionary refresh message (Data Length: 126428).
updr 0.00 updl 0 imgr 0.00 imgl 0
Status Received <1> Status Text: Closed Status for Item VOD.L Text: The record could not be found
updr 0.00 updl 0 imgr 0.00 imgl 0
.......0
Answers
-
Hi @bas.hagen
A Status Msg is an event just like a data event, so it is logged to the file like the other events - it is not an Error message - as technically there is no application level error situation.
You are using the application to connect to a server and establish event streams for various items by requesting them from the server. If the server rejects a particular request it returns a Status event for that particular stream and closes the stream.
In a normal consumer application, the developer would have a Status msg / event handler and act on the Status accordingly .e.g. log to a file or inform the user and so on.
0 -
Hi @umer.nalla, thank you very much. Very helpful!
0 -
Your welcome. Please consider accepting the relevant answer for the benefit of other users searching the forum.
Thanks!
0
Categories
- All Categories
- 3 Polls
- 6 AHS
- 36 Alpha
- 166 App Studio
- 6 Block Chain
- 4 Bot Platform
- 18 Connected Risk APIs
- 47 Data Fusion
- 34 Data Model Discovery
- 690 Datastream
- 1.5K DSS
- 629 Eikon COM
- 5.2K Eikon Data APIs
- 11 Electronic Trading
- 1 Generic FIX
- 7 Local Bank Node API
- 3 Trading API
- 2.9K Elektron
- 1.4K EMA
- 255 ETA
- 560 WebSocket API
- 39 FX Venues
- 15 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 25 Messenger Bot
- 3 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 60 Open Calais
- 281 Open PermID
- 46 Entity Search
- 2 Org ID
- 1 PAM
- PAM - Logging
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 23 RDMS
- 2K Refinitiv Data Platform
- 724 Refinitiv Data Platform Libraries
- 4 LSEG Due Diligence
- LSEG Due Diligence Portal API
- 4 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.2K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 12 World-Check Customer Risk Screener
- 1K World-Check One
- 46 World-Check One Zero Footprint
- 45 Side by Side Integration API
- 2 Test Space
- 3 Thomson One Smart
- 10 TR Knowledge Graph
- 151 Transactions
- 143 REDI API
- 1.8K TREP APIs
- 4 CAT
- 27 DACS Station
- 121 Open DACS
- 1.1K RFA
- 106 UPA
- 194 TREP Infrastructure
- 229 TRKD
- 918 TRTH
- 5 Velocity Analytics
- 9 Wealth Management Web Services
- 95 Workspace SDK
- 11 Element Framework
- 5 Grid
- 19 World-Check Data File
- 1 Yield Book Analytics
- 48 中文论坛