PlayAudio

Handle loudspeaker announcements

Used for public addressing.

Objects

Role Prop Type Description
Input - - -
Output - - -

Props

Id Type Description
Id string Any ID
StartTime time Start time of the announcement.
Prio int Priority
Delay int Delay in seconds.
AllowPartial bool Defines whether partial switching is allowed.
Cyclic bool Defines whether the announcement is played in a loop.
GenericParam string Generic string param. Can be used for adapter specific values.
State int 0: Invalid
1: Suspended
2: Partial
3: Full
4: Ended

The state Full is set if all of its output roles are available, i.e., not blocked by announcements of other activites. The state Partial is set, if the property AllowPartial is true and at least on of the output roles is blocked by the announcement of another PlayAudio Activity.

Module XML example

<Objects>
    <!-- Access -->
    <Object id="Access" exclude="1">
        <!-- Access.PA -->
        <Object id="PA" exclude="1">

        <!-- Access.PA.AudioIn -->
        <Object id="AudioIn">
            <Property id="Number" type="int" address="1" minval="1" />
            <Activity id="myplayaudio" role="Input" />
        </Object>

        <!-- Access.PA.AudioOut -->
        <Object id="AudioOut">
            <Property id="Number" type="int" address="1" minval="1" />
            <Activity id="myplayaudio" role="Output" />
        </Object>
    </Object>
</Objects>

<Activities>
    <!-- Play audio -->
    <Activity id="myplayaudio" type="PlayAudio">
        <Property id="Id" type="string" />
        <Property id="StartTime" type="time" />
        <Property id="Prio" type="int" />
        <Property id="Delay" type="int" />
        <Property id="AllowPartial" type="bool" />
        <Property id="Cyclic" type="bool" />
        <Property id="GenericParam" type="string" />
        <Property id="State" type="int">
            <Option id="Invalid" value="0" />
            <Option id="Suspended" value="1" />
            <Option id="Partial" value="2" />
            <Option id="Full" value="3" />
            <Option id="Ended" value="4" />
        </Property>

        <ObjectRole id="Input" multiple="1" />
        <ObjectRole id="Output" multiple="1" />
    </Activity>
</Activities>

Workflow

The PlayAudio Activity can be started or ended by both WinGuard and the device adapter. The IPC methods activity.Start/activity.End are used to request starting/ending the Activity on behalf of WinGuard, respectively.

Last modified September 25, 2026