Announcement

Collapse
No announcement yet.

Triggering macros from a DCP2000 remotely.

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Triggering macros from a DCP2000 remotely.

    Hi people! A few weeks ago one of the agents at the theatre I work at in France offered this idea: what if you could control the house lights or the play/pause from a streamdeck by the registers instead of having to sit down in front of a computer to use VNC, open cinelister, select the control tab, click on the macro, etc. For reference we used DCP2000 servers.

    Before getting into the streamdeck territory I’d like to make a proof of concept in Python or in powershell. My initial idea was to figure out what our TMS was sending to the server when pressing its own macro buttons (equally as annoying to access I must add) but that’s proving to be more complex than I expected.

    Has anyone done something vaguely similar? Any clues where to direct my attention?

    Thank you!

  • #2
    For the DCP2000, you'll want to obtain Doremi's KLV API document that lists the functions supported. The commands are a bit lengthy (as are the responses) but it is a means of having direct access to the server's transport (and even content selection) functions.

    Alternately, you can go with the "Trigger" method. It is bizarre in its own right. You create a set of trigger commands. Call them what you want. i.e. Play, Pause, Lights Up...etc. You then create a firealarm_cues.xml file (you can use the default_cues.xml as a starter file). This file translates the trigger cue (what you are sending) to an automation cue (what you want). The difference between a default_cues.xml and firealarm_cues.xml is that the default cues are only active when a show is running. The firealarm_cues are always active.

    The trigger cues use either TCP 13200 or UDP 13200. Naturally, they have their own formatting for the commands including checksum. So, seek out the appropriate document "Raw Ethernet Protocol Specification" to get the needed info there.

    If your site has or is considering Q-SYS, there is a plugin, developed for the IMS3000, that should work, at some level with the DCP2000...though you might need a later version of firmware as I'm sure they are using Web/Soap for all new developments, now. I have not tried the Q-SYS plugin on legacy servers, yet.

    Comment


    • #3
      Thank you for the detailed answer, much appreciated! Would you be able to point me to the right direction to request the API docs from Dolby/Doremi? We don’t particularly have a way or habit at the very least of talking to manufacturers here.

      Alternatively the fire triggers method sounds intriguing… I’m not sure I fully understand what it’d take to, well, trigger them?

      Thank you again!

      Comment


      • #4
        If you want to truly control a Dolby SMS, you need to use SOAP.
        The WSDL for the soap messaging is found on the Player. You will find it in /doremi/share/wsdl
        That contains all the WSDL files defining the functions and arguments.
        Use the most up to date server you have. For example a modern IMS3000, as they have updated it over time, and some commands may no longer work on newer variants.
        For example, my software was broken against IMS3000 until i grabbed the updated version from one of them.

        Use Python and a common SOAP library to access the functions.

        Comment


        • #5
          Also consider Companion.io for alternative streamdeck software, already tons of plugins for gear found in video/lighting production. Can handle raw TCP and UDP out of the box. DCP2000 may not exist yet, but you could use other plugins as a template.

          Comment


          • #6
            Thank you both! Yes, I do plan on using companion to make my life easier

            James, SOAP/WDSL sounds enticing. Thank you for letting me know where to find it, I’ll take a look this evening!

            I’ll try to update this thread in a few days time. Thank you for your help everyone!

            Comment


            • #7
              We had a Doremi for a while and used a Jnior to automate certain tasks. we had a start/pause button in the auditorium which was physically connected to the Jnior and triggered macros that communicated with the Doremi using TCP (or possibly UDP).
              This worked very well. Brian at INTEG helped set up the macros on our Jnior-device and is very helpful.
              We also used (and still use) the Jnior for triggering the curtain motor and the lighting.

              Comment


              • #8
                Thank you for sharing Oscar. The JNIOR definitely sounds like the easiest approach but unfortunately it doesn’t seem like it’s available in France. Even then, it’d be preferable for us to use the hardware we already have on end - not sure the company would be interested in spending money to save the employees a mere few minutes a week

                Comment


                • #9
                  The JNIOR including shipping and some duty-handling will be around EUR 600. INEG ships world wide and as long as the U.S. hasn't put France on the Axis-of-Evil list, it will be available in France too.

                  A JNIOR would be a good solution for the problem at hand. If it fits the bill is math you need to do at your side, but even a "few minutes a week" of extra work eat up over time and they're usually not free.

                  Comment


                  • #10
                    Thank you for the clarification, I must have been misinformed about the JNIOR. If the SOAP api doesn’t work out I’ll definitely investigate this side of things and try to make an argument for it… Thank you very much for your input!

                    Comment


                    • #11
                      Also worth noting a Junior based approach with anything “custom” talking to it instead of the other booth devices directly would be much more maintainable if others techs were asked to solve problems at this venue. It is an industry recognized automation device.

                      That said, is any automation controller already existing at the venue, or even an AP20? (same could be done with most of them)

                      If one goal is to not “need” that vnc computer at that location, I’d look into having companion run on a single board computer like a raspberry pi mounted at the streamdeck, can have multiple streamdecks functioning as remotes with minimal extra computers to host them.

                      Comment


                      • #12
                        Hi,

                        There is certainly a good argument to be made for having a maintainable solution (which I thought this project I had envisioned as a quick weekend job would be…).

                        As for our automation, there kind of is something in place? It’s a very handmade job from our installer composed of a bunch of DIN relays. It’s undoubtedly very obscure and there’s no clear way to work with it. Just a big mess of electrical wiring that I wouldn’t dare touch, hence my original idea of approaching this from a software perspective.

                        I’ve had a look at the WSDL files and the MacroManagement one sounds like it does what I want (return a list of macros and has a function for running a specified one). However how to actually implement this sounds a bit out of my scope — seasoned programmer more than Python tinkerer if you know what I mean.

                        As for your last comment the goal isn’t fully to replace it, but rather to offer a quicker method to interact with the server. For example if one of our shows has no guests, we will turn off the house lights for that room. When someone buys a ticket, the agent more or less has to throw themselves towards the computer and pray that VNC loads in time before the guest enters the room!

                        Now having written that, I realise another approach since we’re not getting rid of the computer would be to use AHK to script the actions but.. that seems like a bad time to be had. And of course the obvious-er one being to have an electrician just wire a switch down to the cashiers area. Not considering that though because while my direction will let me toy around and get a streamdeck/simple keyboard shortcuts solution work they are not necessarily interested in spending money on it — which I can respect.

                        This is, after all, a fun personal project that’s suddenly becoming overwhelmingly out of reach hah.

                        Comment


                        • #13
                          The Doremi trigger macro method is probably the easiest way to use a streamdeck at least for the type of actions you mention. At least easy and fast to try and implement, and also tech-compliant.

                          Comment


                          • #14
                            Originally posted by Mathis Ivars View Post
                            The JNIOR definitely sounds like the easiest approach but unfortunately it doesn’t seem like it’s available in France.
                            We can ship directly from the USA. You can check with Cinemeccanica France.

                            We have telemetry from about 10-12% of our installed base. It seems that we are all around France but less so within the country. Some of the units around Paris we think had to do with the Olympics.

                            We are thin in large land masses starting with the letter "A". I know there is a theater on Antarctica. That would make the map interesting. So would having a unit on the ISS. A JNIOR with Internet access (at least for a day) can signal us.


                            Screenshot from 2024-10-31 14-59-42.png
                            Last edited by Bruce Cloutier; 10-31-2024, 02:44 PM.

                            Comment

                            Working...
                            X