Alarm Panel Standardization

From MiOS
(Difference between revisions)
Jump to: navigation, search
m
m
Line 12: Line 12:
 
* Disarmed
 
* Disarmed
 
* Armed
 
* Armed
 +
 +
'''Default value''': Disarmed
  
 
'''Description''':
 
'''Description''':
Line 43: Line 45:
 
* EntryDelay
 
* EntryDelay
 
* ExitDelay
 
* ExitDelay
 +
 +
'''Default value''': Ready
  
 
'''Description''':
 
'''Description''':
Line 100: Line 104:
 
* None
 
* None
 
* Active
 
* Active
 +
 +
'''Default value''': None
  
 
'''Description''':
 
'''Description''':
Line 119: Line 125:
  
 
'''Type''': boolean
 
'''Type''': boolean
 
'''Allowed values''':
 
* None
 
* Active
 
  
 
'''Default value''': false
 
'''Default value''': false
Line 144: Line 146:
 
''false'' - Chimes are disabled.  No chime/sound will occur when a Zone is opened.
 
''false'' - Chimes are disabled.  No chime/sound will occur when a Zone is opened.
  
 +
==== AlarmMemory ====
  
 +
'''Type''': boolean
  
 +
'''Description''':
  
    <!-- An indicator of whether the Partition has previously been in an Alarm state.
+
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
+
Each Panel, has a Panel-specific mechanism through which it will transition/clear
      it's "AlarmMemory" state.
+
it's "AlarmMemory" state.
  
      true - A prior Alarm state occurred, but it has since cleared
+
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>
+
  
 +
false - No prior Alarm state is known, or the Prior Alarm condition has been cleared.
  
    <!-- An indicator of when the Partition last entered "Active" state.
+
==== LastAlarmActive ====
  
      Not all Alarm systems support the information necessary to know that a Alarm has been
+
'''Type''': ui4
      "reset" distinctly from it being "cleared" by some automated means.
+
  
      If any implementation returns "Memory", for Alarm, then it must supply a non-Zero
+
'''Default value''': 0
      value for this StateVariable.
+
  
      0 - Default value if "Memory" is not supported, or if no prior record of Alarm.
+
'''Description''':
      TODO: represented as seconds past epoch???
+
    -->
+
    <stateVariable sendEvents="yes">
+
      <name>LastAlarmActive</name>
+
      <dataType>ui4</dataType>
+
      <shortCode>lastalarmactive</shortCode>
+
      <defaultValue>0</defaultValue>
+
    </stateVariable>
+
  
 +
An indicator of when the Partition last entered "Active" state.
  
    <!-- The Last User to initiate an event against the Partition.
+
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.
  
      An Alarm-specific string representing the "User" who last initiated a command against
+
If any implementation returns "Memory", for Alarm, then it must supply a non-Zero
      the Partition (typically, but not necessarily) via a Keypad input to the Panel.
+
value for this StateVariable.
  
      Partitions that don't support the notion of "Users" should leave this blank.
+
0 - Default value if "Memory" is not supported, or if no prior record of Alarm.
  
      A Partition implementation may choose to blank-out the value of this stateVariable,
+
==== LastUser ====
      after any time period that seems reasonable, to meet local security requirements.
+
 
    -->
+
'''Type''': string
    <stateVariable sendEvents="yes" allowRepeats="yes">
+
 
      <name>LastUser</name>
+
'''Description''':
      <dataType>string</dataType>
+
 
      <shortCode>lastuser</shortCode>
+
The Last User to initiate an event against the Partition.
      <defaultValue></defaultValue>
+
 
    </stateVariable>
+
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.
 +
 
 +
==== VendorStatus ====
 +
 
 +
'''Type''': string
 +
 
 +
'''Description''':
  
 +
The Vendor Status (label) indicated by the Partition.
  
    <!-- The Vendor Status (label) indicated by the Partition.
+
An Alarm/Vendor-specific string representing the Human readable "Status" last indicated
 +
by the Partition.
  
      An Alarm/Vendor-specific string representing the Human readable "Status" last indicated
+
This string may also show the Last status (label) of the Alarm Panel, and can be used
      by the Partition.
+
by UPnP Clients to display "progress" or current state.
  
      This string may also show the Last status (label) of the Alarm Panel, and can be used
+
eg. "Password not valid", "George's home is Arming", "Zones in Bypass 003, 004"
      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.
  
      A Partition implementation may choose to blank-out the value of this stateVariable,
+
The string value is intended to be Human readable, as it may be presented within
      after any time period that seems reasonable, to meet local security requirements.
+
a UPnP client's native display.
  
      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">
 
     <stateVariable sendEvents="yes" allowRepeats="yes">
 
       <name>VendorStatus</name>
 
       <name>VendorStatus</name>

Revision as of 10:20, 24 May 2011

Contents

S_AlarmPartition2.xml

Download file (latest version): S_AlarmPartition2.xml

Required UPnP variables

ArmMode

Type: string

Allowed values:

  • Disarmed
  • Armed

Default value: Disarmed

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

Default value: Ready

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

Default value: None

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.

ChimeEnabled

Type: boolean

Default value: false

Description:

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.

AlarmMemory

Type: boolean

Description:

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.

LastAlarmActive

Type: ui4

Default value: 0

Description:

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.

LastUser

Type: string

Description:

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.

VendorStatus

Type: string

Description:

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>


   <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