question

Upvotes
Accepted
1 0 0 0

how can i get the response data without call registerClient when I subscribe same ric second time?

refinitiv-realtimesubscription
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
Accepted
45.2k 103 43 60

@denny.w.h.zhong

EMA doesn't cache the data. To get the response, you can reissue a request with a handle.

consumer.reissue(ReqMsg().initialImage(true), handle);

With this reissue, the application gets a new refresh via the application callback method.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
1 0 0 0

Would you like to get update messages(containing only changed fields’ value) after a refresh message(the first data response with all fields you specified in view) like below?

RefreshMsg

streamId="5"

domain="MarketPrice Domain"

solicited

RefreshComplete

state="Open / Ok / None / 'All is well'"

itemGroup="00 01"

permissionData="03 08 42 52 6c"

name="JPY="

nameType="1"

serviceId="2114"

serviceName="API_ELEKTRON_EDGE_TOKYO"

Payload dataType="FieldList"

FieldList FieldListNum="99" DictionaryId="1"

FieldEntry fid="22" name="BID" dataType="Real" value="114.50"

FieldEntry fid="25" name="ASK" dataType="Real" value="114.52"

FieldListEnd

PayloadEnd

RefreshMsgEnd

UpdateMsg

streamId="5"

domain="MarketPrice Domain"

updateTypeNum="0"

name="JPY="

serviceId="2114"

serviceName="API_ELEKTRON_EDGE_TOKYO"

Payload dataType="FieldList"

FieldList

FieldEntry fid="22" name="BID" dataType="Real" value="114.51"

FieldListEnd

PayloadEnd

UpdateMsgEnd

  1. If yes, before you re-subscribe the RIC, you need to unsubscribe the RIC first e.g. consumer.unregister(RIC2Handle.get("TEST1")); as I explained in the email below(sent on 22 Nov). This is to close the RIC item stream to stop receiving data sent to this item stream. When you re-subscribe the RIC(a new item stream opens), you will get data from the new item stream only.

  1. If no. You should use snapshot request. After EMA sends a snapshot request, it receives a refresh message. Then, EMA closes this item stream immediately automatically. Hence, the application will not receive any data(update messages) of this RIC. You can re-subscribe this RIC after getting a refresh message without unsubscribing the RIC before(EMA has done this automatically). To request snapshot data, set interestAfterRefresh to false like an example snipped source code below:

consumer.registerClient(reqMsg.serviceName(serviceName).name("TEST1").interestAfterRefresh(false), appClient);

Note: If you set interestAfterRefresh to true, you will get update messages after a refresh messages till you unsubscribe the RIC.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.