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?
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.
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.