For a deeper look into our Elektron API, look into:

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials |  Articles

question

Upvotes
Accepted
75 1 3 7

Websocket Contribution to an ATS which use PE/PPE Permission

Hi Team,I have a ATS Server which use ATS PE/PPE Permission. I want to send contribution to this ATS via Websocket. But got the error message "A29: Post message did not contain permission data."
In Eikon Excel I just need to send Fid: PROD-PERM with PPE of the ATS Container.
Can set .permissionData(ByteBuffer.wrap() in Websocket?

Best Regards
Michael

treprdp-apiwebsocketsrrto
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
Accepted
75 1 3 7

Hi Veerpath, thank you for your reply. With the correct DACS Lock is woks perfect.
I'll now look into my DACS Lock generation because there is something wrong on my side.
Thank you very much for your support. I will search now again for the DACS lock documentation.

Best Regards

Michael

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
11.3k 25 9 14

Hi @michael.theimer

You create a DACS Lock using the DacsLock API from other APIs (i.e. ETA Java) and set it in the "PermData" attribute of Post Message. However, the "PermData" attribute is a buffer, so you need to encode the DACS Lock in Base64 string before setting it in the "PermData".

For example, "PermData": "AwABECc=" for DACS Lock is 0x0300011027.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
75 1 3 7

Hi Veerpath,
are you able to give me an example for ETA?
I want to use Web Socket API.
Best Regards

Michael

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Hi @michael.theimer

I haven't tried it yet, but I believe you could just add "PermData" attribute to the post json body.

{
  "Ack":true,
  "Domain":"MarketPrice",
  "ID":2,
  "PermData":"AwABECc=",
  "Message":{
    "Domain":"MarketPrice",
    "Fields":{
      "ASK":45.57
    },
    "ID":0,
    "Type":"Update"
  },
  "PostID":1,
  "PostUserInfo":{
    "Address":"127.0.0.1",
    "UserID":10000
  },
  "Type":"Post"
}<br>

See the Websocket doc on post message .

Upvotes
75 1 3 7

Service ID: 3333 PE: 2000

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
11.3k 25 9 14

Hi Michael,

The example application, authlock, is provided in the Elektron SDK Package. The location is \Java\Eta\Applications\Examples\src\main\java\com\thomsonreuters\upa\examples\authlock.

For more information about the DACS library, please see the ETAJ_DacsLibraryFunctions.pdf in ETA Docs folder of the package.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
75 1 3 7

Hi Veerpath,
it still not working. What encoded String you get out for ServiceID=333 and PE=2000?

Kind Regards

Michael

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
75 1 3 7

My String for PermData => "w599w7Y=" (ServiceId=333,PE=2000)

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
75 1 3 7

Hi Veerpath,
I have now tried many things but it still not working.
I got a mail from you via the portal which mention to use: "PermData":"0x0300011027",
but in the portal I see "PermData":"AwABECc=".?
Strange is also that I got no response from ADS after the Post MSG?

Can you please test it on your side to be sure it's working?

I have ServiceId:333 and PE:2000 and my PermDate in the PostMSG is: w599w7Y=

Thank you very much for your support.

Kind Regards

Michael

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Sorry for confusing you. The PermData : 0x0300011027 is not valid PermData. The “C” flags, the end of the DACS Lock, is missing. You can find more information about DACS Lock structure in the ETAJ_DacsLibraryFunctions.pdf document.

dacslockarray.png (148.2 KiB)
Upvotes
75 1 3 7

Hi Veerpath,
was you already able to check my PermData String?
Is w599w7Y= correct for ServiceId:333 and PE:2000?

Also was you able to test it on your end so far?
Best regards

Michael

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
11.3k 25 9 14

Hi @michael.theimer

With JDACSLock, the perm data generated for ServiceID:333 and PE:2000 is 0x03014D2000C0. It is Base64 encoded to "AwFNIADA". I have tested the scenario using Web Socket posting to my OMM Interactive Provider via TREP 3.2. The RSSL tracing indicates that Provider can receive PermData correctly.

My WebSocket Post message: "PermData": "AwFNIADA"

{
  "Ack": true,
  "Domain": "MarketPrice",
  "ID": 1,
  "Key": {
    "Service": "DIRECT_FEED",
    "Name": "TRI.N"
  },
  "Message": {
    "Domain": "MarketPrice",
    "Fields": {
      "ASK": 45.57,
      "ASKSIZE": 19,
      "BID": 45.55,
      "BIDSIZE": 18
    },
    "ID": 0,
    "Type": "Update"
  },
  "PermData": "AwFNIADA"
  "PostID": 1,
  "PostUserInfo": {
    "Address": "127.0.0.1",
    "UserID": 55555
  },
  "Type": "Post"
}

RSSL tracing on Provider side: permData="0301 4D20 00C0"

<postMsg domainType="RSSL_DMT_MARKET_PRICE" streamId="1" containerType="RSSL_DT_MSG" flags="0xE6 (RSSL_PSMF_HAS_POST_ID|RSSL_PSMF_HAS_MSG_KEY|RSSL_PSMF_POST_COMPLETE|RSSL_PSMF_ACK|RSSL_PSMF_HAS_PERM_DATA)" postId="3" permData="0301 4D20 00C0" postUserId="55555" postUserAddr="127.0.0.1" dataSize="36">
    <key  flags="0x7 (RSSL_MKF_HAS_SERVICE_ID|RSSL_MKF_HAS_NAME|RSSL_MKF_HAS_NAME_TYPE)"  serviceId="1" name="TRI.N" nameType="1"/>
    <dataBody>
<!-- rwfMajorVer="14" rwfMinorVer="1" -->
        <updateMsg domainType="RSSL_DMT_MARKET_PRICE" streamId="0" containerType="RSSL_DT_FIELD_LIST" flags="0x0" updateType="0 (RDM_UPD_EVENT_TYPE_UNSPECIFIED)" dataSize="25">
            <dataBody>
                <fieldList flags="0x8 (RSSL_FLF_HAS_STANDARD_DATA)">
                    <fieldEntry fieldId="25" data="0C11 CD"/>
                    <fieldEntry fieldId="31" data="0E13"/>
                    <fieldEntry fieldId="22" data="0C11 CB"/>
                    <fieldEntry fieldId="30" data="0E12"/>
                </fieldList>
            </dataBody>
        </updateMsg>
    </dataBody>
</postMsg>
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.