I am using this example:
market_price_edpgw_service_discovery.py
I only need one latest value for a RIC and added the option Streaming: False
Hello @kshishir
One possible way is to
1. comment try .. except KeyboardInterrupt:
''' try: .. except KeyboardInterrupt: session1.disconnect() if hotstandby: session2.disconnect() '''
2. In _process_message(self, message_json) method, check if the application receives data, disconnect and exit program
if message_type == "Refresh": if 'Domain' in message_json: message_domain = message_json['Domain'] if message_domain == "Login": self._process_login_response(message_json) #Add the following code for Data Refresh Message else: print("Receive Data. Disconnect and Exit Program") session1.disconnect() if hotstandby: session2.disconnect() sys.exit(0)
You can set "Streaming" parameter in the JSON request message to False (boolean value) to get one latest value for a RIC like an example below:
mp_req_json = { 'ID': 2, 'Key': { 'Name': ric_name, 'Service': service, }, "Streaming": False }
The application run forever without any flag:
try: while True: ....
If you would like to close the program, just press Ctrl+C, then the following code lines are called to close websocket and exit the program:
except KeyboardInterrupt: session1.disconnect() if hotstandby: session2.disconnect()
Thanks you!
Is there a way to just run the app once, get the latest values and exit without having to press Ctrl + C?
If you need only a snapshot of latest real-time Market Price values you may consider Refinitiv's Knowledge API (TRKD API). The TRKD API delivers Refinitiv information and contents in a request-response scenario via web services using SOAP, XML and HTTP REST/JSON protocols.
TRKD has the Quote Service that provides a snapshot real-time quote/quote chain data for consumers. Please see more detail regarding the TRKD Quote service in this article.
You can find more detail regarding TRKD API in TRKD official web site.
Thank you Wasin. This is also helpful. Is there any difference in data received from TKDR and Elektron Real Time?