Max size for posting message(having multiple RICS) using using Python socket(directly connecting...

... to RCC)

Hi,


We are currently using python WebSockets to directly contribute to RCC. We want to send multiple RICS in a single message and currently, we are able to send the JSON array.


1)Each item contains 5-7 fields of data


2) we are planning to send data every 15 seconds interval


3)we will connect to RCC directly


for example two messages in a single posting


[

{

"Ack":true,

"ID":1,

"Key":{

"Name":"TEST1=DARN",

"Service":"DDS_TRCE"

},

"Message":{

"Fields":{

"ACVOL_1":47,

"PRIMACT_1":325.57,

"VALUE_TS1":"08:23:30"

},

"ID":0,

"Type":"Update"

},

"PostID":1,

"Type":"Post"

},

{

"Ack":true,

"ID":1,

"Key":{

"Name":"TEST1=DARN",

"Service":"DDS_TRCE"

},

"Message":{

"Fields":{

"ACVOL_1":4244,

"PRIMACT_1":2.27,

"VALUE_TS1":"08:23:30"

},

"ID":0,

"Type":"Update"

},

"PostID":2,

"Type":"Post"

},

]



Could you please let us know what is the maximum message size in form of JSON, we can send to RCC using multiple RICS in a single message?


I understand there is a parameter related to this MaxMsgSize, but not sure this parameter value will dictate the size of the message for posting. Could you please elaborate?


2)Is there any time WebSockets are down from the server-side during maintenance or it will be 24*7 without any downtime, could you please confirm this.


Regards,

Amit Gupta


umer.nallawasin.waeosri

Tagged:

Best Answer

  • umer.nalla
    umer.nalla LSEG
    Answer ✓

    Hi @amit.gupta

    RCC team have re-iterated the above - i.e. it has not been tested, and therefore not officially supported. Therefore, they have advised against using it.

    They were unable to provide a timescale for when it may / would be tested.


Answers

  • Hi @amit.gupta

    A PostMsg can only take a single Instrument at a time - therefore you would need to send multiple messages - one for each item.

    If you are sending every 15 seconds, I recommend you log in once and maintain the session between the 15second intervals - rather than logout/login every 15 seconds.

    The RCC service does have Maintenance periods and I believe there is a 'Service alert' email you can subscribe to. I will get the details on how to register for the alerts and get back to you.


  • Just to summarise,

    1)If we need to send 200 tickers per 15 seconds, we need to send 200 post messages for 200 tickers every 15 seconds. Yes, we are not going to log out and log in again. I mean we are using currently python WebSockets(directly contributing to RCC).

    we are following this link of python code Tutorials | Refinitiv Developers

    Could you please confirm this?


    2)One interesting point to note is that we did send two instruments in a single message with two post ids 1 and 2(sample JSON format attached in the thread). We do get the acknowledged messages for both 1 and 2 . So, it means that the acknowledgment message is not correct. We are getting confused about this. Could you please let us now why it is happening


    @umer.nalla wasin.waeosri




  • Hi @amit.gupta

    Just to clarify, the following is a single PostMsg

    {
        "Ack":true,
        "ID":1,
        "Key":{
            "Name":"TEST1=DARN",
            "Service":"DDS_TRCE"
        },
        "Message":
        {
            "Fields":
            {
                "ACVOL_1":47,
                "PRIMACT_1":325.57,
                "VALUE_TS1":"08:23:30"
            },
            "ID":0,
            "Type":"Update"
        },
        "PostID":1,
        "Type":"Post"
    }

    You sent two individual post messages within a single JSON payload.

    I have already reached out to the RCC team if there is any limit on how many post messages you can include in a single JSON payload.

  • 1)Yes, you are right we have sent 2 post messages(of Json Array) in a single JSON payload. and we got successful acknowledgment for all the 2 messages also from servers.

    1)If they can let us know how many multiple RICS in the single JSON message can be supported and they can also tell about the maximum size of the message that we can send

    Please let us know if you need anything from our side


    wasin.waeosri

  • Hi @amit.gupta

    I am still awaiting a response from the RCC dev team on the JSON message limits, I will update once I hear back.

    In the meantime, please see the following on how to register for RCC related Alerts and Product Change notifications.

    Notifications and Alerts information can be found here https://my.refinitiv.com/content/mytr/en/policies/notifications-and-alerts.html

    You can subscribe to Service Alerts at the following https://insightalerting.refinitiv.com/a/alerts/servicealerts/Subscription/MySubscriptions.aspx

    You should select the following-

    Application

    ->Contributions Channel Cloud

    --->Refinitiv Contributions Channel

    Application

    ->Refinitiv Contributions Channel

    --->Refinitiv Contributions Channel

    Infrastructure

    ->Refinitiv Real-Time

    --->Refinitiv Real-Time Contributed Data

    ---->Refinitiv Real-Time Test Environment

    e.g.

    1634918670678.pngand

    1634918763348.png


    For Product Change Notifications-

    Clients can subscribe to receive email notifications for PCNs here https://customers.refinitiv.com/a/support/notificationservice/SubscribeProduct.aspx?mode=edit

    Refinitiv Contributions Channel

  • Any update on this please

  • Hi @amit.gupta

    Thanks for your patience - I was awaiting confirmation from the RCC team.

    Their current advice is not to use the above technique (of multiple PostMsg in a single JSON message) as it has not been fully tested and qualified by the RCC team.


  • Hi,

    I'm have an issue with my python code to send contribute via RCC for multiple RICs. May I have a sample code for contributing to multiple RICs via RCC using python please?

  • Hello @mervin.phay

    Please be informed that the answered questions will not be monitored. Please post a new question next time.
    About how to contributing multiple RICs via RCC, the answer is no, the RCC accept one contribution RIC per post message.

    Please see more detail from my colleague answer on this post since 2021.

    anwer.png

  • Hello @mervin.phay

    My colleague @Jirapongse found that the RCC is now supporting multiple RICs contribution in a single Post message via an array of JSON Post messages as follows:

    SENT:
    [
      {
        "Ack":true,
        "ID":1,
        "Key":{
          "Name":"TRCCTEST02",
          "Service":"DDS_TRCE"
        },
        "Message":{
          "Fields":{
            "ASK":451.57,
            "BID":451.55
          },
          "ID":0,
          "Type":"Update"
        },
        "PostID":1,
        "Type":"Post"
      },
      {
        "Ack":true,
        "ID":1,
        "Key":{
          "Name":"TRCCTEST03",
          "Service":"DDS_TRCE"
        },
        "Message":{
          "Fields":{
            "ASK":451.57,
            "BID":451.55
          },
          "ID":0,
          "Type":"Update"
        },
        "PostID":2,
        "Type":"Post"
      }
    ]
    RECEIVED: 
    [
      {
        "AckID":1,
        "ID":1,
        "Type":"Ack"
      }
    ]
    RECEIVED: 
    [
      {
        "AckID":2,
        "ID":1,
        "Type":"Ack"
      }
    ]

    You can modify the Contributions Channel WebSocket Examples (Download here) to send an array of JSON Post messages.

    To learn more about the RCC - WebSocket direct connection, please check the Tutorial page.

  • Thanks @wasin.w. I've managed to update multiple RICs from a single post message. Will take note to create a new question instead of asking in a closed one.
  • Thanks for giving the best solution. It see very easy and according to the topic.. Thanks