Alarm Panel Standardization

From MiOS
(Difference between revisions)
Jump to: navigation, search
m
 
(6 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
[[Category:Development]]
 +
[[Category:Plugins]]
 +
 
== S_AlarmPartition2.xml ==
 
== S_AlarmPartition2.xml ==
  
Download file (latest version): [[Media:S_AlarmPartition2.xml|S_AlarmPartition2.xml]]
+
Download file (latest version): [http://code.mios.com/svn_public/mios_common-alarm-plugin-files/S_AlarmPartition2.xml S_AlarmPartition2.xml]
 +
 
 +
=== UPnP Variables ===
  
=== Required UPnP variables ===
 
  
 
==== ArmMode ====
 
==== ArmMode ====
Line 26: Line 30:
  
 
''Armed'' - The Partition is currently armed, or in an "away" state.
 
''Armed'' - The Partition is currently armed, or in an "away" state.
 +
  
 
==== DetailedArmMode ====  
 
==== DetailedArmMode ====  
Line 96: Line 101:
  
 
''ExitDelay'' - The Partition is currently moving towards the Armed state.
 
''ExitDelay'' - The Partition is currently moving towards the Armed state.
 +
  
 
==== Alarm ====
 
==== Alarm ====
Line 121: Line 127:
  
 
''Active'' - The Partition is currently showing as an Alarm actively going off.
 
''Active'' - The Partition is currently showing as an Alarm actively going off.
 +
  
 
==== ChimeEnabled ====
 
==== ChimeEnabled ====
Line 145: Line 152:
  
 
''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 ====
 
==== AlarmMemory ====
Line 160: Line 168:
  
 
''false'' - No prior Alarm state is known, or the Prior Alarm condition has been cleared.
 
''false'' - No prior Alarm state is known, or the Prior Alarm condition has been cleared.
 +
  
 
==== LastAlarmActive ====
 
==== LastAlarmActive ====
Line 178: Line 187:
  
 
''0'' - Default value if "Memory" is not supported, or if no prior record of Alarm.
 
''0'' - Default value if "Memory" is not supported, or if no prior record of Alarm.
 +
  
 
==== LastUser ====
 
==== LastUser ====
Line 194: Line 204:
 
A Partition implementation may choose to blank-out the value of this stateVariable,
 
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.
 
after any time period that seems reasonable, to meet local security requirements.
 +
  
 
==== VendorStatus ====
 
==== VendorStatus ====
Line 216: Line 227:
 
The string value is intended to be Human readable, as it may be presented within
 
The string value is intended to be Human readable, as it may be presented within
 
a UPnP client's native display.
 
a UPnP client's native display.
 +
  
 
==== VendorStatusCode ====
 
==== VendorStatusCode ====
Line 245: Line 257:
 
The string value is intended to be used for Vendor specific scripting purposes.  Consult
 
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.
 
your specific Vendor for the set of Valid Vendor Status codes.
 +
  
 
==== VendorStatusData ====
 
==== VendorStatusData ====
Line 260: Line 273:
 
your specific Vendor for the set of Valid Vendor Status data.
 
your specific Vendor for the set of Valid Vendor Status data.
  
=== Actions ===
 
  
<actionList>
+
=== UPnP Actions ===
    <!-- 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
+
==== RequestArmMode ====
      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"
+
'''Input arguments''':
 +
* State
 +
** Related state variable: DetailedArmMode
 +
* PINCode
 +
** Related state variable: ui4
  
      Disarmed - The Partition is disarmed.
+
'''Description''':
      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, using a specific PIN Code..
  
    <!-- Request the Partition move into a named Arming mode (No 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"
 +
 
 +
 
 +
==== RequestQuickArmMode ====
 +
 
 +
'''Input arguments''':
 +
* State
 +
** Related state variable: DetailedArmMode
 +
 
 +
'''Description''':
 +
 
 +
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"
 +
 
 +
 
 +
==== RequestPanicMode ====
 +
 
 +
'''Input arguments''':
 +
* State
 +
** Related state variable: string
 +
 
 +
'''Description''':
  
      The following values must be accepted for the Arming mode, but Vendor specific values
+
Request the initiation of a named Panic mode.
      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"
+
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.
  
      Disarmed - The Partition is disarmed.
+
''Police'' - The Police Panic mode
      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>
+
  
 +
''Fire'' - The Fire Panic mode
  
    <!-- Request the initiation of a named Panic mode.
+
''Medical'' - The Medical Panic mode
  
      The following values must be accepted for the Panic mode, but Vendor specific values
+
==Reference==
      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
+
Forum thread: http://forum.micasaverde.com/index.php?topic=3713.0
      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>
+

Latest revision as of 13:46, 24 May 2011


Contents

[edit] S_AlarmPartition2.xml

Download file (latest version): S_AlarmPartition2.xml

[edit] UPnP Variables

[edit] 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.


[edit] 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.


[edit] 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.


[edit] 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.


[edit] 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.


[edit] 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.


[edit] 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.


[edit] 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.


[edit] VendorStatusCode

Type: string

Description:

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.


[edit] VendorStatusData

Type: string

Description:

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.


[edit] UPnP Actions

[edit] RequestArmMode

Input arguments:

  • State
    • Related state variable: DetailedArmMode
  • PINCode
    • Related state variable: ui4

Description:

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"


[edit] RequestQuickArmMode

Input arguments:

  • State
    • Related state variable: DetailedArmMode

Description:

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"


[edit] RequestPanicMode

Input arguments:

  • State
    • Related state variable: string

Description:

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

[edit] Reference

Forum thread: http://forum.micasaverde.com/index.php?topic=3713.0

Personal tools