Topics...

Security

Purpose

Provide event notification services for a security system. This schema is modelled on the capabilities of Comfort

Targeted Schema

The following commands may be explicitly directed at a security system.


class=comfort.command

SecurityMode
{
state= home|away|vacation|night
}

Auth
{
pin=xxxx
action=login|logout
}

Reporting
{
action=on|off
}

SendIR
{
zone=xx
code=xx
}

SendX10
{
device=A1...
value=... | action=on|off
}

SetOutput
{
zone=xx
value=xx
}

DoResponse
{
response=xxxxxx
}

DoAction
{
action=xxxxxxx
}

Security System Notification Schema

The security system may generate the following notifications. The notification message comprises two sections, one containing the raw serial data received from Comfort (with control characters stripped) and  the second section containing a high-level interpretation of the event. Applications should work with the high-level event; inclusion of the raw data is intended primarily to aid debugging.

A complete message might look this:

xap-header
{
v=12
hop=1
uid=FF000600
class=comfort.status
source=Rocket.Comfort.Home
}
comfort.raw
{
command=XT
param=A0405
}
comfort.x10.transmit
{
desc=X10 Transmit report: device A04 on
house=A
unit=04
function=05
}

 The following high level notifications are supported:

comfort.alarm
{
desc=<...>
type=<...>
status=  <...>

 comfort.report
{
desc=<...>
type=<...>
zone=<...>
time=<...>

 comfort.alarm.restore
{
desc=<...>
}

 comfort.event.doorbell
{
desc=<...>
id=<...>
}

 comfort.event.phone.dialup
{
desc=<...>
}


 comfort.eventlog
{
desc=<...>
}

 comfort.status.input
{
desc=<...>
zone=<...>
status=<...>}

 comfort.ir.transmit
{
desc=<...>
zone=<...>
code=<...>
time=<...>
}

 comfort.ir.receive
{
desc=<...>
code=<...>
}

 comfort.auth.login
{
desc=<...>
user=<...>
time=<...>
}

 comfort.ack.error
{
desc=<...>
type=NA
}

 comfort.ack.ok
{
desc=<...>
}

 comfort.event.output
{
desc=<...>
zone=<...>
status=<...>
}

 comfort.event.virtual
{
desc=<...>
type=<...>
}

 comfort.event.mode
{
desc=<...>
mode=<...>
user=<...>
time=<...>
}

 comfort.event.pulse
{
desc=<...>
}

 comfort.action.return
{
desc=<...>
value<...>
}

 comfort.event.phone.ring
{
desc=<...>
time=<...>
}

 comfort.alarm.trouble.alarm
{
desc=<...>
}

 comfort.alarm.trouble.restore
{
desc=<...>
}

 comfort.x10.receive
{
desc=<...>
house=<...>
unit=<...>
function=<...>
}

 comfort.x10.transmit
{
desc=<...>
house=<...>
unit=<...>
function=<...>
}

 comfort.auth.login
{
desc=<...>
}

 comfort.error.checksum
{
desc=<...>
}

 comfort.error.unknown
{
desc=<...>
command=<...>
param=<...>
}

Related...

 

Copyright (c) 2002-2006 Patrick Lidstone unless otherwise stated.
All rights reserved.