I am using the Java examples provided by Refinitiv and am making batch requests successfully to listen to a predetermined list of RICS. My objective is to create a websocket listening on a list of RICs that is a function of time. Therefore, I would like to dynamically update the list of RICs while the WebSocket connection is alive in order to not recreate the WebSocket connection every time the list updates.
Is it possible to do so? If this is the case, when should I call to the method that updates the list of RICs during code execution for the update to be considered by Refinitiv servers?
Any help would be much appreciated, many thanks in advance.
You don't have to establish a new websocket connection, every time this list changes. Once the connection is established, any future interaction your application has with the server is over the ws connection using json messages. One such message is Login, another is the instrument subscription. You can at any time, send in a JSON request message to subscribe to more instruments, and close previously open instruments. The ID parameter in JSON has to be unique for each request.
I would recommend that you view the websocket message structure in the documentation bundle provided.
This article on batch subscription might be of use as well.
Additionally, you can find more detail about the batch subscription on this tutorial page.
The WebSocket API examples on the API download page also have the Node.js example. You can refer to the market_price_batch_view.js example file.