Event framework?

I dabble in home automation and am looking for a framework that would
allow me to monitor and react to serial port events. I'm a long-time
Perl user and if anyone is familiar with POE, that's the type of
framework I'm looking for (an Inversion-of-Control framework where I
have agents running in separate threads monitoring serial ports,
triggering events in the main code). I've perused RAA and seen a few
possibilities, but don't see anything recently maintained. Is there a
good match for the type of thing I'm looking to do?

There are several new home automation technologies available now and
they don't yet have serial drivers, so I figure it would be a good time
to attempt the switch to Ruby. Besides, I'm moving to Ruby, VA next
month, so I figure I'd better start learning the language! :slight_smile:

- Mark.

IIRC there was a discussion about this recently. You might find it by searching the archives at http://blade.nagaokaut.ac.jp/ruby/ruby-talk/index.shtml

Kind regards

    robert

···

Mark Thomas <mrt@thomaszone.com> wrote:

I dabble in home automation and am looking for a framework that would
allow me to monitor and react to serial port events. I'm a long-time
Perl user and if anyone is familiar with POE, that's the type of
framework I'm looking for (an Inversion-of-Control framework where I
have agents running in separate threads monitoring serial ports,
triggering events in the main code). I've perused RAA and seen a few
possibilities, but don't see anything recently maintained. Is there a
good match for the type of thing I'm looking to do?

There are several new home automation technologies available now and
they don't yet have serial drivers, so I figure it would be a good
time to attempt the switch to Ruby. Besides, I'm moving to Ruby, VA
next month, so I figure I'd better start learning the language! :slight_smile:

- Mark.

If you don't complain about the language Python community has Twisted Matrix
- http://www.twistedmatrix.com - that seems just what are you looking for.

···

Il 2006-01-03, Mark Thomas <mrt@thomaszone.com> ha scritto:

I dabble in home automation and am looking for a framework that would
allow me to monitor and react to serial port events. I'm a long-time
Perl user and if anyone is familiar with POE, that's the type of
framework I'm looking for (an Inversion-of-Control framework where I
have agents running in separate threads monitoring serial ports,
triggering events in the main code). I've perused RAA and seen a few
possibilities, but don't see anything recently maintained. Is there a
good match for the type of thing I'm looking to do?

There are several new home automation technologies available now and
they don't yet have serial drivers, so I figure it would be a good time
to attempt the switch to Ruby. Besides, I'm moving to Ruby, VA next
month, so I figure I'd better start learning the language! :slight_smile:

--
Lawrence - http://www.oluyede.org/blog
"Anyone can freely use whatever he wants but the light at the end
of the tunnel for most of his problems is Python"

Robert Klemme wrote:

> I dabble in home automation and am looking for a framework that would
> allow me to monitor and react to serial port events. I'm a long-time
> Perl user and if anyone is familiar with POE, that's the type of
> framework I'm looking for (an Inversion-of-Control framework where I
> have agents running in separate threads monitoring serial ports,
> triggering events in the main code). I've perused RAA and seen a few
> possibilities, but don't see anything recently maintained. Is there a
> good match for the type of thing I'm looking to do?
>
> There are several new home automation technologies available now and
> they don't yet have serial drivers, so I figure it would be a good
> time to attempt the switch to Ruby. Besides, I'm moving to Ruby, VA
> next month, so I figure I'd better start learning the language! :slight_smile:
>
> - Mark.

IIRC there was a discussion about this recently. You might find it by
searching the archives at
http://blade.nagaokaut.ac.jp/ruby/ruby-talk/index.shtml

From this, I have gleaned the following:

- Ruby/Event is now dead.
- IO::Reactor has been stuck at 0.0.6 since 2003 (effectively dead)
- event-loop looks promising.
- there are a few others, mostly in alpha stages, that focus on file
descriptors
- I have asked a similar question before (Sorry, forgot!) but
event-loop wasn't announced at that time.

I think I'll try out event-loop.

Thanks,
- Mark.

···

Mark Thomas <mrt@thomaszone.com> wrote:

Yes, I considered Twisted. But it evidently has a VERY steep learning
curve; many experienced Python people are put off by it. If I had to
resort to a non-Ruby solution I'd use POE, but really I'd like to find
a Ruby solution.

Thanks,
- Mark.

Mark Thomas wrote:

Yes, I considered Twisted. But it evidently has a VERY steep learning
curve; many experienced Python people are put off by it. If I had to
resort to a non-Ruby solution I'd use POE, but really I'd like to find
a Ruby solution.

Thanks,
- Mark.

There's another wa;y to register callbacks etc which i haven't tried
http://phrogz.net/RubyLibs/rdoc/classes/EventTarget.html

also, have you looked at the new Oreilly Twisted book. It has a nice
cookbook-y feel to setting up clients and servers for existing
protocols, rather than rolling your own, altho Amazon review noted it's
a slim book and testing gets short shrift.