We are using Reuters Elektron EMA C++. Is there a way to get the exchange code/id/name from RIC or the subscription code like (ESU7) before registering the consumer for the refresh and update callbacks at run time?
I know that you can get the exchange code/id in the refresh message (received via the callback) as the value of the field RDN_EXHID, but we wish to get this information at run time before subscribing.
EMA does not have capability to get this information at run time before subscribing data. To get the data from TREP APIs(EMA/ETA/RFA) you have to send item request to provider server and then process the response message from item callback(Refresh/Update/Status) to get data from FID/Field you are monitoring.
From the description it sounds like you are implementing different class for request data for different Exchange, so you want to check Exchange name/code before choosing right class to open a new subscription?
If it's the case, you may need to re-design it to check Exchange code in the Refresh message and then copy data from callback and pass it to different data process logic for each Exchange instead.