I have a client who has a station, WSRO, serving the local Brazilian community. He sells one-hour blocks of time to programmers, some of whom come to the station to do their shows live while others do their shows from other locations via Barix boxes.

A Rivendell system (named "nerodia") is used to control a Broadcast Tools SS 16.4 audio switcher to select among the various program sources. Until recently, this has worked well.

My client recently bought a second radio station, WZBR. I built another Rivendell system ("storeria") to control it. I ran into the problem that only one Rivendell system can control the audio switcher, so storeria is using rmlsend commands to signal nerodia to control the switcher.

I wrote a number of shell scripts containing the rml commands; for instance, to switch input #1 to output #1, the script 0101.sh is used:

#!/bin/bash
rmlsend --to-host=nerodia 'SA 0 1 1!'
sleep 0.01

These commands are referenced in macros defined in the Rivendell database:

RN /home/scott/rml/0101.sh !
LB (Studio A -> WSRO) !

Again, this is necessary because the audio switcher serial interface is connectd to nerodia not storeria. The only way for storeria to control the switcher is to tell nerodia to do it.

Most of the time this works, but twice in the last two days it hasn't. My suspicion is that the two machines may be trying to command the switcher at the same time.

My question is this: how does the rmlsend mechanism handle a situation where two commands arrive at the same time? Is the execution of one delayed until the other has completed? Or is it possible that the two may run at the same time, garbling the serial port output?

This is Rivendell version 2.5.5 running under Debian 6 ("Squeeze").


Rob
_______________________________________________
Rivendell-dev mailing list
[email protected]
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev

Reply via email to