Alarm Panel Standardization

From MiOS
(Difference between revisions)
Jump to: navigation, search
(New page: Now it exists...)
 
m
Line 1: Line 1:
Now it exists...
+
== S_AlarmPartition2.xml ==
 +
 
 +
Download file (latest version): [[Media:S_AlarmPartition2.xml|S_AlarmPartition2.xml]]
 +
 
 +
=== Required UPnP variables ===
 +
 
 +
==== ArmMode ====
 +
 
 +
'''Type''': string
 +
 
 +
'''Allowed values''':
 +
* Disarmed
 +
* Armed
 +
 
 +
'''Description''':
 +
 
 +
The High Level State of the Partition, representing whether it's Armed or Disarmed.
 +
 
 +
Partition implementations are only required to implement the "Armed" and "Disarmed" states
 +
since not every Panel provides the ability to "see" the other statuses and reflect
 +
them to the UPnP consumer.
 +
 
 +
''Disarmed'' - The Partition is in an un-armed state, and ready to be Armed.
 +
 
 +
''Armed'' - The Partition is currently armed, or in an "away" state.
 +
 
 +
==== DetailedArmMode ====
 +
 
 +
'''Type''': string
 +
 
 +
'''Allowed values''':
 +
* Disarmed
 +
* Armed
 +
* Stay
 +
* StayInstant
 +
* Night
 +
* NightInstant
 +
* Force
 +
* Ready
 +
* Vacation
 +
* NotReady
 +
* FailedToArm
 +
* EntryDelay
 +
* ExitDelay
 +
 
 +
'''Description''':
 +
 
 +
The Detailed state of the Partition, representing whether it's Armed, Disarmed or one
 +
of the common intermediary states.
 +
 
 +
Partition implementations are required to implement the "Armed" and "Disarmed" states,
 +
corresponding to the State variable above.  Not every Panel provides the required API
 +
to "see" the other statuses and reflect them to the UPnP consumer.
 +
 
 +
Note that some implementations may consider the "ExitDelay" state to be "Armed"
 +
whilst others may consider them to be "Disarmed".  No association between DetailedArmMode
 +
and State variables should be assumed by UPnP clients, due to this potential difference.
 +
 
 +
Some of the states may be transitional, and no guarantees are provided that the Panel
 +
will complete any subsequent transition to a corresponding permanent state. 
 +
UPnP clients should make no assumptions about the "next state" from what is
 +
immediately presented, since this may be Vendor and/or Implementation specific.
 +
 
 +
Some of the states, like Night/NightInstant and Vacation, are included for specific Panel
 +
vendors like the Elk and may not be present on other Panels.  Control Point authors should
 +
be prepared to display these DetailedArmMode using an CP-specific visualization (an Icon,
 +
Translated Text and so-on)
 +
 
 +
Disarmed - The Partition is disarmed.
 +
 
 +
Armed - The Partition is currently armed, or in an "away" state.
 +
 
 +
Stay - The Partition is in an "at-home" state, delays are permitted on Entry doors.
 +
 
 +
StayInstant - The Partition is in an "at-home" state, Entry doors trigger Alarm immediately.
 +
 
 +
Night - The Partition is in an "at-home, at-night" state, delays are permitted on Entry doors.
 +
 
 +
NightInstant - The Partition is in an "at-home, at-night" state, Entry doors trigger Alarm immediately.
 +
 
 +
Force - The Partition is in an "away" state, but one or more Zones are open.
 +
 
 +
Ready - The Partition is in an un-armed state, and ready to be Armed.
 +
 
 +
Vacation - The Partition is currently armed, or in an "away" state.
 +
 
 +
NotReady - The Partition is in an un-armed state, but one or more Zones are open.
 +
 
 +
FailedToArm - The Partition is in an un-armed state, and an arming attempt just failed.
 +
 
 +
EntryDelay - The Partition is currently moving towards the Disarmed state.
 +
 
 +
ExitDelay - The Partition is currently moving towards the Armed state.
 +
 
 +
==== Alarm ====
 +
 
 +
'''Type''': string
 +
 
 +
'''Allowed values''':
 +
* None
 +
* Active
 +
 
 +
'''Description''':
 +
 
 +
An indicator of whether the Partition is in Alarm state or not.
 +
 
 +
Partition implementations are only required to implement the "None" and "Active"
 +
states.
 +
 
 +
Many alarm systems will "automatically" clear a Alarm state after some, often legally
 +
mandated, period of time.  If this happens, the Partition should move to the "None"
 +
state, but also has the option of setting the "AlarmMemory" state.
 +
 
 +
None - The Partition is not currently in Alarm, and no prior record of Alarm.
 +
 
 +
Active - The Partition is currently showing as an Alarm actively going off.
 +
 
 +
    <!-- An indicator of whether the Partition has Chime mode enabled.
 +
 
 +
      Some Alarm Systems (DSC, Paradox, GE Caddx) can run in a mode where each Zone
 +
      that's opened will trigger a Chime, or Bell, to ring for a short period of
 +
      time.  This setting is independant of any Armed or Disarmed state of the
 +
      Partition.
 +
 
 +
      If the Panel supports intraspection of this property, then the value should
 +
      be brought forward.  Some panels (Paradox) support the setting, but don't
 +
      support the intraspection of the setting.  In these cases, the Partition
 +
      implementation must return "false" for this attribute.
 +
 
 +
      true - The Partition is in Chime mode, and will ring a Bell when Zones are opened.
 +
      false - Chimes are disabled.  No chime/sound will occur when a Zone is opened.
 +
    -->
 +
    <stateVariable sendEvents="yes">
 +
      <name>ChimeEnabled</name>
 +
      <dataType>boolean</dataType>
 +
      <shortCode>chimeenabled</shortCode>
 +
      <defaultValue>false</defaultValue>
 +
    </stateVariable>
 +
 
 +
 
 +
    <!-- An indicator of whether the Partition has previously been in an Alarm state.
 +
 
 +
      Each Panel, has a Panel-specific mechanism through which it will transition/clear
 +
      it's "AlarmMemory" state.
 +
 
 +
      true - A prior Alarm state occurred, but it has since cleared
 +
      false - No prior Alarm state is known, or the Prior Alarm condition has been cleared.
 +
    -->
 +
    <stateVariable sendEvents="yes" allowRepeats="yes">
 +
      <name>AlarmMemory</name>
 +
      <dataType>boolean</dataType>
 +
      <shortCode>alarmmemory</shortCode>
 +
    </stateVariable>
 +
 
 +
 
 +
    <!-- An indicator of when the Partition last entered "Active" state.
 +
 
 +
      Not all Alarm systems support the information necessary to know that a Alarm has been
 +
      "reset" distinctly from it being "cleared" by some automated means.
 +
 
 +
      If any implementation returns "Memory", for Alarm, then it must supply a non-Zero
 +
      value for this StateVariable.
 +
 
 +
      0 - Default value if "Memory" is not supported, or if no prior record of Alarm.
 +
      TODO: represented as seconds past epoch???
 +
    -->
 +
    <stateVariable sendEvents="yes">
 +
      <name>LastAlarmActive</name>
 +
      <dataType>ui4</dataType>
 +
      <shortCode>lastalarmactive</shortCode>
 +
      <defaultValue>0</defaultValue>
 +
    </stateVariable>
 +
 
 +
 
 +
    <!-- The Last User to initiate an event against the Partition.
 +
 
 +
      An Alarm-specific string representing the "User" who last initiated a command against
 +
      the Partition (typically, but not necessarily) via a Keypad input to the Panel.
 +
 
 +
      Partitions that don't support the notion of "Users" should leave this blank.
 +
 
 +
      A Partition implementation may choose to blank-out the value of this stateVariable,
 +
      after any time period that seems reasonable, to meet local security requirements.
 +
    -->
 +
    <stateVariable sendEvents="yes" allowRepeats="yes">
 +
      <name>LastUser</name>
 +
      <dataType>string</dataType>
 +
      <shortCode>lastuser</shortCode>
 +
      <defaultValue></defaultValue>
 +
    </stateVariable>
 +
 
 +
 
 +
    <!-- The Vendor Status (label) indicated by the Partition.
 +
 
 +
      An Alarm/Vendor-specific string representing the Human readable "Status" last indicated
 +
      by the Partition.
 +
 
 +
      This string may also show the Last status (label) of the Alarm Panel, and can be used
 +
      by UPnP Clients to display "progress" or current state.
 +
 
 +
      eg. "Password not valid", "George's home is Arming", "Zones in Bypass 003, 004"
 +
 
 +
      A Partition implementation may choose to blank-out the value of this stateVariable,
 +
      after any time period that seems reasonable, to meet local security requirements.
 +
 
 +
      The string value is intended to be Human readable, as it may be presented within
 +
      a UPnP client's native display.
 +
    -->
 +
    <stateVariable sendEvents="yes" allowRepeats="yes">
 +
      <name>VendorStatus</name>
 +
      <dataType>string</dataType>
 +
      <shortCode>vendorstatus</shortCode>
 +
      <defaultValue></defaultValue>
 +
    </stateVariable>
 +
 
 +
 
 +
    <!-- The Vendor Status Code indicated by the Partition.
 +
 
 +
      An Alarm/Vendor-specific string representing the internal Status "code" last
 +
      indicated by the Partition.
 +
 
 +
      This string may also show the Last status (label) of the Alarm Panel, and can be used
 +
      by UPnP Clients to display "progress" or current state.
 +
 
 +
      These can also be used by "events" to provide Partition-specific mechanisms to
 +
      trigger things like "Fail to Arm" events and the like.
 +
 
 +
      eg. "1378" (Elk) - "Rule Triggered Voice Telephone Dial"
 +
      eg. "658" (DSC) - "Keypad Lock-out"
 +
      eg. "040" (Paradox) - "Fail to Communicate on telephone Number"
 +
 
 +
      A Partition implementation may choose to blank-out the value of this stateVariable,
 +
      after any time period that seems reasonable, to meet local security requirements.
 +
 
 +
      The string value is intended to be used for Vendor specific scripting purposes.  Consult
 +
      your specific Vendor for the set of Valid Vendor Status codes.
 +
    -->
 +
    <stateVariable sendEvents="yes" allowRepeats="yes">
 +
      <name>VendorStatusCode</name>
 +
      <dataType>string</dataType>
 +
      <shortCode>vendorstatuscode</shortCode>
 +
    </stateVariable>
 +
 
 +
 
 +
    <!-- The Vendor Status Data for the Vendor Status Code.
 +
 
 +
      An Alarm/Vendor-specific string representing the internal state "data", associated with
 +
      the Vendor Status Code above.
 +
 
 +
      The string value is intended to be used for Vendor specific scripting purposes.  Consult
 +
      your specific Vendor for the set of Valid Vendor Status data.
 +
    -->
 +
    <stateVariable sendEvents="yes" allowRepeats="yes">
 +
      <name>VendorStatusData</name>
 +
      <dataType>string</dataType>
 +
      <shortCode>vendorstatusdata</shortCode>
 +
    </stateVariable>
 +
  </serviceStateTable>
 +
<actionList>
 +
    <!-- Request the Partition move into a named Arming mode, using a specific PIN Code..
 +
 
 +
      There is no guarantee that requesting "Stay" mode wont result in the
 +
      State becoming "Armed", as some Panels do not differentiate the Stay Armed
 +
      status.
 +
 
 +
      The following values must be accepted for the Arming mode, but Vendor specific values
 +
      may be input as well.  If a particular Vendor doesn't support the mode requested
 +
      it is free to "promote" the mode to an equivalent, or higher, mode within it's own
 +
      set.
 +
 
 +
      eg. Requested State "Night" -> Executed State "Stay"
 +
 
 +
      Disarmed - The Partition is disarmed.
 +
      Armed - The Partition is currently armed, or in an "away" mode.
 +
      Stay - The Partition is in an "at-home" mode, delays are permitted on Entry doors.
 +
      StayInstant - The Partition is in an "at-home" mode, Entry doors trigger Alarm immediately.
 +
      Night - The Partition is in an "at-home, at-night" mode, delays are permitted on Entry doors.
 +
      NightInstant - The Partition is in an "at-home, at-night" mode, Entry doors trigger Alarm immediately.
 +
      Force - The Partition is in an "away" mode, but one or more Zones are open.
 +
      Vacation - The Partition is currently armed, or in an "away" mode.
 +
    -->
 +
    <action>
 +
      <name>RequestArmMode</name>
 +
      <argumentList>
 +
        <argument>
 +
          <name>State</name>
 +
          <direction>in</direction>
 +
          <relatedStateVariable>DetailedArmMode</relatedStateVariable>
 +
        </argument>
 +
        <argument>
 +
          <name>PINCode</name>
 +
          <direction>in</direction>
 +
          <relatedStateVariable>ui4</relatedStateVariable>
 +
        </argument>
 +
      </argumentList>
 +
    </action>
 +
 
 +
 
 +
    <!-- Request the Partition move into a named Arming mode (No PIN Code).
 +
 
 +
      The following values must be accepted for the Arming mode, but Vendor specific values
 +
      may be input as well.  If a particular Vendor doesn't support the mode requested
 +
      it is free to "promote" the mode to an equivalent, or higher, mode within it's own
 +
      set.
 +
 
 +
      eg. Requested State "Night" -> Executed State "Stay"
 +
 
 +
      Disarmed - The Partition is disarmed.
 +
      Armed - The Partition is currently armed, or in an "away" mode.
 +
      Stay - The Partition is in an "at-home" mode, delays are permitted on Entry doors.
 +
      StayInstant - The Partition is in an "at-home" mode, Entry doors trigger Alarm immediately.
 +
      Night - The Partition is in an "at-home, at-night" mode, delays are permitted on Entry doors.
 +
      NightInstant - The Partition is in an "at-home, at-night" mode, Entry doors trigger Alarm immediately.
 +
      Force - The Partition is in an "away" mode, but one or more Zones are open.
 +
      Vacation - The Partition is currently armed, or in an "away" mode.
 +
    -->
 +
    <action>
 +
      <name>RequestQuickArmMode</name>
 +
      <argumentList>
 +
        <argument>
 +
          <name>State</name>
 +
          <direction>in</direction>
 +
          <relatedStateVariable>DetailedArmMode</relatedStateVariable>
 +
        </argument>
 +
      </argumentList>
 +
    </action>
 +
 
 +
 
 +
    <!-- Request the initiation of a named Panic mode.
 +
 
 +
      The following values must be accepted for the Panic mode, but Vendor specific values
 +
      may be input as well. If a particular named mode doesn't exist, then the Vendor
 +
      implementation is free to map this in a Vendor-specific manner.
 +
 
 +
      Police - The Police Panic mode
 +
      Fire - The Fire Panic mode
 +
      Medical - The Medical Panic mode
 +
    -->
 +
    <action>
 +
      <name>RequestPanicMode</name>
 +
      <argumentList>
 +
        <argument>
 +
          <name>State</name>
 +
          <direction>in</direction>
 +
          <relatedStateVariable>string</relatedStateVariable>
 +
        </argument>
 +
      </argumentList>
 +
    </action>
 +
  </actionList>
 +
</scpd>

Revision as of 10:07, 24 May 2011

Contents

S_AlarmPartition2.xml

Download file (latest version): S_AlarmPartition2.xml

Required UPnP variables

ArmMode

Type: string

Allowed values:

  • Disarmed
  • Armed

Description:

The High Level State of the Partition, representing whether it's Armed or Disarmed.

Partition implementations are only required to implement the "Armed" and "Disarmed" states since not every Panel provides the ability to "see" the other statuses and reflect them to the UPnP consumer.

Disarmed - The Partition is in an un-armed state, and ready to be Armed.

Armed - The Partition is currently armed, or in an "away" state.

DetailedArmMode

Type: string

Allowed values:

  • Disarmed
  • Armed
  • Stay
  • StayInstant
  • Night
  • NightInstant
  • Force
  • Ready
  • Vacation
  • NotReady
  • FailedToArm
  • EntryDelay
  • ExitDelay

Description:

The Detailed state of the Partition, representing whether it's Armed, Disarmed or one of the common intermediary states.

Partition implementations are required to implement the "Armed" and "Disarmed" states, corresponding to the State variable above. Not every Panel provides the required API to "see" the other statuses and reflect them to the UPnP consumer.

Note that some implementations may consider the "ExitDelay" state to be "Armed" whilst others may consider them to be "Disarmed". No association between DetailedArmMode and State variables should be assumed by UPnP clients, due to this potential difference.

Some of the states may be transitional, and no guarantees are provided that the Panel will complete any subsequent transition to a corresponding permanent state. UPnP clients should make no assumptions about the "next state" from what is immediately presented, since this may be Vendor and/or Implementation specific.

Some of the states, like Night/NightInstant and Vacation, are included for specific Panel vendors like the Elk and may not be present on other Panels. Control Point authors should be prepared to display these DetailedArmMode using an CP-specific visualization (an Icon, Translated Text and so-on)

Disarmed - The Partition is disarmed.

Armed - The Partition is currently armed, or in an "away" state.

Stay - The Partition is in an "at-home" state, delays are permitted on Entry doors.

StayInstant - The Partition is in an "at-home" state, Entry doors trigger Alarm immediately.

Night - The Partition is in an "at-home, at-night" state, delays are permitted on Entry doors.

NightInstant - The Partition is in an "at-home, at-night" state, Entry doors trigger Alarm immediately.

Force - The Partition is in an "away" state, but one or more Zones are open.

Ready - The Partition is in an un-armed state, and ready to be Armed.

Vacation - The Partition is currently armed, or in an "away" state.

NotReady - The Partition is in an un-armed state, but one or more Zones are open.

FailedToArm - The Partition is in an un-armed state, and an arming attempt just failed.

EntryDelay - The Partition is currently moving towards the Disarmed state.

ExitDelay - The Partition is currently moving towards the Armed state.

Alarm

Type: string

Allowed values:

  • None
  • Active

Description:

An indicator of whether the Partition is in Alarm state or not.

Partition implementations are only required to implement the "None" and "Active" states.

Many alarm systems will "automatically" clear a Alarm state after some, often legally mandated, period of time. If this happens, the Partition should move to the "None" state, but also has the option of setting the "AlarmMemory" state.

None - The Partition is not currently in Alarm, and no prior record of Alarm.

Active - The Partition is currently showing as an Alarm actively going off.

   <stateVariable sendEvents="yes">
     <name>ChimeEnabled</name>
     <dataType>boolean</dataType>
     <shortCode>chimeenabled</shortCode>
     <defaultValue>false</defaultValue>
   </stateVariable>


   <stateVariable sendEvents="yes" allowRepeats="yes">
     <name>AlarmMemory</name>
     <dataType>boolean</dataType>
     <shortCode>alarmmemory</shortCode>
   </stateVariable>


   <stateVariable sendEvents="yes">
     <name>LastAlarmActive</name>
     <dataType>ui4</dataType>
     <shortCode>lastalarmactive</shortCode>
     <defaultValue>0</defaultValue>
   </stateVariable>


   <stateVariable sendEvents="yes" allowRepeats="yes">
     <name>LastUser</name>
     <dataType>string</dataType>
     <shortCode>lastuser</shortCode>
     <defaultValue></defaultValue> 
   </stateVariable>


   <stateVariable sendEvents="yes" allowRepeats="yes">
     <name>VendorStatus</name>
     <dataType>string</dataType>
     <shortCode>vendorstatus</shortCode>
     <defaultValue></defaultValue>
   </stateVariable>


   <stateVariable sendEvents="yes" allowRepeats="yes">
     <name>VendorStatusCode</name>
     <dataType>string</dataType>
     <shortCode>vendorstatuscode</shortCode>
   </stateVariable>


   <stateVariable sendEvents="yes" allowRepeats="yes">
     <name>VendorStatusData</name>
     <dataType>string</dataType>
     <shortCode>vendorstatusdata</shortCode>
   </stateVariable>
 </serviceStateTable>
<actionList>
   <action>
     <name>RequestArmMode</name>
     <argumentList>
       <argument>
         <name>State</name>
         <direction>in</direction>
         <relatedStateVariable>DetailedArmMode</relatedStateVariable>
       </argument>
       <argument>
         <name>PINCode</name>
         <direction>in</direction>
         <relatedStateVariable>ui4</relatedStateVariable>
       </argument>
     </argumentList>
   </action>


   <action>
     <name>RequestQuickArmMode</name>
     <argumentList>
       <argument>
         <name>State</name>
         <direction>in</direction>
         <relatedStateVariable>DetailedArmMode</relatedStateVariable>
       </argument>
     </argumentList>
   </action>


   <action>
     <name>RequestPanicMode</name>
     <argumentList>
       <argument>
         <name>State</name>
         <direction>in</direction>
         <relatedStateVariable>string</relatedStateVariable>
       </argument>
     </argumentList>
   </action>
 </actionList>

</scpd>

Personal tools