question

Upvotes
Accepted
8 4 6 17

NIP needs to download the dictionary before the service is UP

I'm developing a Non Interactive Publisher with the Electron API.

I publish to and ADN into a service named "MY_PUB".

In order to publish, I need a dictionary. I want to download this dictionary from the ADH (or from an ADS). But if my NIP is not already publishing, the service MY_PUB is absent on the ADH and I have the below error message:

12:44:14.777 [pool-9-thread-1] INFO c.h.f.t.s.ReutersPlatformService - Dictionary status message received: provider=Provider_2_4, serviceName=MY_PUB, itemName=RWFFld, itemState=Closed / Suspect / None / 'Service name of 'MY_PUB' is not found.'
12:44:14.778 [pool-9-thread-1] INFO c.h.f.t.s.ReutersPlatformService - Dictionary status message received: provider=Provider_2_4, serviceName=MY_PUB, itemName=RWFEnum, itemState=Closed / Suspect / None / 'Service name of 'MY_PUB' is not found.'

How am I supposed to download the dictionary?

elektronrefinitiv-realtimeelektron-sdktrepelektron-data-dictionary
icon clock
10 |1500

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

Upvotes
Accepted
20.3k 73 10 20

Hi @nicolas.roux

Unless you want to explicitly query the Dictionary and check the list of field present in the dictionary, you should not need to download the dictionary in order to publish data from your NI Provider.

For instance, if i take the simplest NIProvider example100, modify it with your Service Name, amend the EMAConfig.xml <Directory_1> entry to reflect your servicename and run it - it should just work. This is because EMA is downloading the dictionary behind the scenes to use when it does all the encoding etc for you behind the scenes.

You will note from the example100 source code that it does not download the dictionary.

icon clock
10 |1500

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

Upvotes
9.7k 49 38 60

Hi @nicolas.roux,

As a provider, your application defines the fields it publishes to the infrastructure. You will need to acquire an appropriate dictionary from your TREP administrator as a text file that you will load and parse within your application. You can refer to the details outlined within the EMA NI Provider - Publishing our first Market Price tutorial.

In order for you to download the dictionary within your application, I believe you my be able act as a consumer to your infrastructure to download the dictionary.

icon clock
10 |1500

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

What is the best practice regarding the dictionary?

I thought that I was supposed to download the dictionary from the ADH/ADS in order to get the latest version. Then use it with my NIP.

But according to your answer, I'm supposed to get a dictionary from my TREP admin. Copy it locally. Then use it with my NIP. Is that correct?

Isn't it a problem if the dictionary changes on the TREP infrastructure, while I'm still using an old local copy with my NYP?

Click below to post an Idea Post Idea