[Message Prev][Message
Next][Thread Prev][Thread Next][Message
Index][Thread Index]
Re: Protocol questions
- Subject: Re: Protocol questions
- From: Mark Hindess <xpl@xxxxxxxxxxxxxxxxx>
- Date: Tue, 25 Oct 2005 22:12:27 +0100
On 25 October 2005 at 0:30, "Ian Lowe" <ianlowe@xxxxxxx>
wrote:
>
> Some time not long before that I wrote:
> >
> > I have a couple of things I'd like to clarify.
>
> Sure, happy to help.
Much appreciated.
> [snipped comments about character sets]
I'll update my code to assume the character set 'a'-'z' '0'-'9' and '-'.
(Being more liberal on receipt of course.)
> The order is significant - elements should be present in the order
> specified.
Fair enough. (It seems slightly crazy that order should be significant
when it actually imparts no useful information, but I can see the
advantage for embedded devices.)
> [snipped comments about minor confusing inconsistencies]
>
> I'll endeavour to get that fixed, however the documentation is in the
> process of being moved across to the new Wiki - wiki.xplorject.org.uk
I'll check that out. Thanks.
> Hope that helps.
It does.
> Ps> so - the big question - what are you going to be developing
then
> Mark?
I thought I'd write the usual: a logger, a clock and a hub. ;-)
But more seriously ...
I'm a Linux and Perl hacker. I moved house five months ago and
some automation was in order. I chose to use Jabber as a transport
for messages. Partly because I was familiar with the protocol and
partly because I like the idea of using a chat style interface for
configuration and querying my house.
One reason I dismissed xPL was that until my structured cabling (well
maybe that's overstating it at little) was installed I had about six
different subnets and xPL's broadcast nature didn't seem to fit this
topology very well. However, I think I'm ready to look at this again
now the network is beginning to take shape. (Having said that I'm still
interested in how xPL is intended to work in this sort of environment?
Multicasts perhaps or perhaps just some simple variant of a hub to bridge
networks?)
I've written agents for things like:
* a VIOM for inputs (pressure pads in the sofa!) and outputs (curtains
and blinds),
* X10 (using heyu),
* callerid from an ancient USR modem,
* DMX lighting using a Milford transmitter,
* a UPS (using apcupsd),
* a 1-wire network,
* a simple myth notifier, etc.
I've written a (very) simple web interface and an agent to manage
configuration. The configuration agent also handles simple rules.
Timers and rules to "convert" between different messages - x10
unit on
to viom output to control a curtain for instance.
You can aggregate these so you might have a timer that is triggered,
using a "crontab"-like syntax, to go off at 6:25 every weekday
morning
that triggers a new temporary timer that sends a message to slightly
brighten my bedroom light every two minutes 11 times. (I have to do
something to make getting up that early easier.)
I've kept the messaging quite separate and I'm now wondering about
"transplanting" what I've written to work using xPL.
I'm spending a few evenings putting together a prototype toolkit in
Perl. I'm aware of John B's toolkit but I really want something more
structured with a well-defined API - modules that can be inheritted to
produce new agents, strong-typing of messages to make it robust, etc.
(Incidentally, I assume you are allowed to use '{' and/or '}' in the
values? The existing Perl toolkit would barf on this since it uses
the characters to parse messages - rather that using '\n{\n' which is
significantly safer.)
I'm making good progress with code. However, my employer owns my code
(yes, even though I am writing it in my own time) and I am in the
process of trying to get them to relinquish rights to it so I could
release it. I am optimistic that this will happen but I wouldn't like
to guess how long it might take.
Comments very welcome - but preferably not related to the last
paragraph.
Regards,
Mark.
xPL Main Index |
xPL Thread Index |
xPL Home |
Archives Home
|