An automation server interfaces with broadcast scheduling systems of
various types to automatically synchronize the behavior of interactive
applications relative to various broadcast programs, such as television
shows and commercials, so as to maintain the appropriate interactive
application for whatever broadcast program is airing. This allows for
television shows which have an associated interactive application, but
which are segmented by commercials (which may have their own interactive
applications) to have their interactive application displayed while the
television show in on, but not during commercials, while maintaining any
state information that has been created during execution of the
interactive application. The automation server includes multiple channel
interfaces, each having a translator and an event manager. The translator
translates native control signals from the scheduling system into a fixed
set of atomic commands which represent the lifecycle behavior of a
broadcast program. The event manager receives these atomic commands and
uses them to determine the appropriate state for any interactive
application that is associated with the broadcast program. The event
manager transmits commands to a broadcast server which directly manages
the interactive applications by transmitting code, data, and commands to
broadcast receivers that controls the execution of the interactive
applications in response to the event manager's commands.