Jump to content
Dataton Forum

Recommended Posts

Hello,

I'm in the middle of building an installation that consists of three independent display servers being controlled by an ipad based control system by Kramer. At it's simplest, we are using the ipad to Play, Stop, and Pause Aux timelines with the UI showing the states of the Aux timelines.  And ideally a counter showing the time.

While wading thru the forum I found this statement:

"One shot polls are interrupt based and if sent too often can impact system performance."

When observing the packet stream between the program Universe and WO production,  it appears that a getStatus query using "2" for the subscription function is sent about every 30 ms.  If we do something similar with the Kramer Control system for three display servers and multiple Aux timelines, is there any way to determine what kind of impact that might have?

 

Also, a syntax question:

Elsewhere in the forum I came across this specific syntax for a getStatus query:

getStatus 1 "TaskList:mItemList:mItems:TimelineTask \"Movie1\""

The users' guide Control Protocol section defines only the basic getStatus command and the expected reply, but not in the detail noted above.  Is there a document in existence that shows that level of detail for each command?

Or do I need to use a program like Universe to reverse-engineer something similar for Kramer Control?

thank you for your help

-patrick

 

 

Link to post
Share on other sites

If you use the subscription model, there's no need to repeat the command. Whilw the subscription is active, WO will tell you whenever there's a change, without you having to poll it constantly. That's the whole idea. The additional parameter follwing "getStatus n" (where n is 0 for start subscription and 1 to end subscription, if memory serves me correctly) is the path to the auxiliary timeline to subscribe to. Without this parameter, main timeline is targeted.

Mike

Link to post
Share on other sites

Hi Mike,

thank you for your response. Swap the 1 and 0 and you'll be correct with respect to the subscription tag.  I have a couple of questions that is probably obvious to more experienced programmers than I:

1. To display an Aux Timeline position while it's running accurate to .1 second on an external device, I would have to send a getStatus 2 command every .05 seconds.  Would you say this is a correct statement?  

2. If WO receives the following command: run "" or getStatus 1 "" , will the extra double quotes cause any errors or problems?  Or will it just simply ignore the double quotes if nothing is between them.  I ask because I'd like to have a single command operate either the Main Timeline or an Aux Timeline depending on what's between the quotes.  This appears to work when using Putty to send commands.  

Thank you

-patrick

Link to post
Share on other sites

For 1, I would not use polling for that. Use the subscription model intead. WO will then tell you when there's any abrupt change. Interpolate/extrapolate intermediate values based on the data you get.

For 2, just give it a try. If it works then you should be good to go.

Mike

 

Link to post
Share on other sites
  • 6 months later...

It looks like the subscription setup only sends data if a timeline is playing every 5 seconds.  Is there a way to adjust that?  Secondly, I see the data at the end on an aux timeline.. First integer is play status 0=stopped, 1=paused and 2=playing.  The next number is the playhead position in milliseconds???  The third integer is some type of system time, also in milliseconds?  Does this all sound right?  No one from dataton has contacted me, even though I sent an email.  Is there a specific contact I can send a message to, to get more information about the API?  Thanks again.

Link to post
Share on other sites
1 hour ago, jaygrovr said:

... No one from dataton has contacted me, even though I sent an email.  Is there a specific contact I can send a message to, to get more information about the API?  Thanks again.

I see no evidence of you entering your request in the Dataton Service Desk system. Not sure where you sent an email, but that is not the way to start your request, as described in 

 

Link to post
Share on other sites

Yes, I believe the last (often large) number is the "system time". All times are in mS. WO will send such messsages to subscribers when there's an abrupt change (such as a timeline starting/stopping). In between such abrupt changes, WO will send an update every couple of seconds anyway. You then need to extrapolate from the most recent value if you need more continuous time position data.

Mike

Link to post
Share on other sites

Your observation is mostly correct, there is about 5 seconds between updates if there is no change in Run, Halt, or Kill status.  However, if there is a change in status, then the update is reliably instantaneous.  The work load on the machine can have an impact on the frequency of updates.  That second number is World Time

The following link is from the knowledge base about the proper syntax for getting status from aux timelines which I found helpful.  https://knowledge.dataton.com/knowledge/get-status  

One issue I ran into was with the number of active subscriptions.   The control system I'm working successfully parses getStatus feedbacks for up to three concurrent aux timeline status subscriptions.  When I add a fourth it turns into a string of "/x0D".  I was unable to determine if that was a problem with what Watchout was sending or with how the control system was interpreting the data.  And because I ran out of development time, I worked around that issue by limiting the number of active subscriptions.  Using Command ID Tagging may have been the solution to that issue, but I stopped digging once I chose the workaround.

 

Link to post
Share on other sites

Im very surprised that the workload can affect this.  It seems like such a trivial thing to send out.  In my case, i need to monitor many more than 3 aux timelines.  I will most likely need to monitor 10-14 of them.  I dont need position, more of if its playing or stopped.  Ideally subscribing to the timeline folder should provide the state of all timelines within that folder.

I also need to find out more about the command ID.

 

 

Link to post
Share on other sites

Thanks Jim, will the ID tagging help me get status for more than 10 aux timelines in the subscription method?  How does the ID tagging work with subscription?  Does it just prefix each response with the same ID?

I have another unrelated question.  WHen I try to authenticate on my system, I have to send the command three times.  The first time I get "Error 7 0 "Unrecognized command:"  The second time the response is "Error 7 0 "Unrecognized Command: "authenticate"", and then the third time I get "Ready "6.5"....     I send the same exact string command each time.  Thanks

You should now see an email for request of additional API information, hopefully this is not a big deal.  I am not sure why its so difficult to get this information, or why its hidden.

Edited by jaygrovr
Link to post
Share on other sites

I've used UNIVERSE show control to retrieve timecode from more than 3 or 4 aux timelines at the same time. I can't recall how many I used but more like 10 or so.

Still one should keep in mind that the network is also used to synchronize the system etc. and that polling to many timecodes at a time does put some load on the system.

You should have no issue sending the authentication command though. The only times when I saw something like this was when a nother higher level of control had a grip on the display cluster, e.g. WATCHMAKER or WATCHNET.  You should not send "autheticate 1" to a cluster while being ONLINE on WATCHMAKER at the same time.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...