The UK Home Automation Archive

Archive Home
Group Home
Search Archive


Advanced Search

The UKHA-ARCHIVE IS CEASING OPERATIONS 31 DEC 2024


[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]

xAP BSC Associations (mapper) schema




Moved over from xap_automation

Edward Pearson wrote:

> The connector contains an implementation of BSCMapper which can map
> several BSC devices to one 'actual' device. There's no UI for the
> mapper, it's all driven by xAP messages and can be configured using a
> xAP Network Configuration application that I have under development.
> Since the schema definitions for mapper (and groups) are still being
> defined, I turned these functions off in the release code.

Mark Harrison wrote:

> Do you have documentation for the mapper schema (or does it use the
> schema I suggested last year?)

> If so, then I think we need to move to document this ASAP - that way I
> can port BSC mapper over to being a GUI for this schema, and thus
> properly support distributed intelligence.Edward Pearson wrote:

> Yes, it was based on your original suggestion. I did it as an
> experiment but didn't progress it further as I realised I should be
> focussing on releasing a production quality BSC X10 connector rather
> than adding extended functionality. I'll document the schema used and
> post to the developer group.

And here it is:

Messages received

xAPBSC.Assoc.Create
target={address of local device(s) (wildcarded)}
assoc.[n]
target={address of remote device}
operation=[identity, invert] (optional)

xAPBSC.Assoc.Delete
target={address of local device(s) (wildcarded)}
assoc.[n]
target={address of remote device}

xAPBSC.Assoc.Query
target={address of local device(s) (wildcarded)}

Messages sent

class=xAPBSC.assoc.event
source={address of local device}
assoc
{
action=[create,delete]
displayText={description of addition or deletion}
target={address of remote device}
}

class=xAPBSC.assoc.info
source={address of local device}
assoc
{
displayText={description current association}
target={address of remote device}
}

Example

Network configuration application requests an association to be created
from two lighswitchs to an X10 device

xap-header
{
v=12
hop=1
uid=FFABCD00
class=xAPBSC.Assoc.Create
source=ERSP.xAPConfigurator.baltic
target=ERSP.X10.*:workroom.desklights
}
assoc.1
{
target=Acme.Lightswitch.workroom:left
}
assoc.2
{
target=Acme.Lightswitch.hallway:right
}

X10 connector responds

xap-header
{
v=12
hop=1
uid=FF123404
class=xAPBSC.Assoc.Event
source=ERSP.X10.pacific:Workroom.DeskLights
}
assoc
{
action=create
displaytext=Created association from Acme.Lightswitch.hallway:right to
workroom deskLights
}

xap-header
{
v=12
hop=1
uid=FF123404
class=xAPBSC.Assoc.Event
source=ERSP.X10.pacific:Workroom.DeskLights
}
assoc
{
action=create
displaytext=Created association from Acme.Lightswitch.workroom:left to
workroom deskLights
}

Comments

The body parameter 'target' is confusingly named and gave me a real
headache
writing the code. The remote device is acting more like a source but that's
just as confusing. Maybe it sould be 'remote'. Suggestions welcome.







xAP_Development Main Index | xAP_Development Thread Index | xAP_Development Home | Archives Home

Comments to the Webmaster are always welcomed, please use this contact form . Note that as this site is a mailing list archive, the Webmaster has no control over the contents of the messages. Comments about message content should be directed to the relevant mailing list.