HylaFAX The world's
most advanced open source fax server
|
|
[
Date Prev][
Date Next][
Thread Prev][
Thread Next]
[
Date Index]
[
Thread Index]
PERL OO interface
Folks,
I'd had a few people ask about the status of the HylaFax interface that I
was working on...unfortunately, I've been stuck with a bunch of other
stuff, so the interface has been mouldering in a pre-alpha state, where it
will remain for another two or three weeks until I have no choice but to
finish it ;)
In any case, here it is for those who are feeling brave. As mentioned
above, it's in a pre-alpha state, so any or all of the interface will
probably change as I bring it up to production quality and it starts to
solidify. Comments on the code, the method of attack, etc, will be
appreciated.
Enjoy,
David.
-----
Currently, documentation is in the head of the file. A few quick release
notes:
- You'll find the code at http://www.chelsea.net/~davidb/Hylafax.pm, and a
sample application (a fax-broadcaster) at
http://www.chelsea.net/~davidb/sendfax-multi.
- The Hylafax.pm module has a bit of simple documentation at the front.
Don't expect to understand it unless you're fairly familiar with PERL and
with HylaFax. Sorry....
- In order to save time, inprove performance, and simplify the attribute
routines...well, OK, because I'm lazy, I have a great deal of information
about the different variables and such that can be set by Hylafax in
associative arrays within the PERL code. I don't find this to be
particularly attractive or portable, so it will almost certainly change
and be derived at install time from the appropriate Hylafax .h files.
- More on that subject of caching...I don't know how Hylafax works
internally, but I've noticed it acting erratically, particularly when you
try to cancel, suspend, or otherwise muck with jobs. I get a lot of
errors "Scheduler NAK'd request" and other things, particularly if you die
while leaving a job half-way instantiated. Very difficult to deal with -
I hope somebody who is involved in the coding of hfaxd can change it to
give back a more helpful error message, and also make it possible to
manipulate a job, even if the job description file is missing a required
field or is "insane", as currently those jobs cannot be deleted or even
accessed through the hfax interface. They have to be rm'd from the spool.
- The Document object doesn't do anything yet...but, I suspect it will
have a Retrieve routine at some point.
- Hylafax.pm is designed as a useful interface to the Hylafax server, and
as such, it has routines designed for convenience of writing Hylafax
tools, not necessarily to mirror the functionality of the interface (as
Net::FTP and others do). However, it's very possible that at some point,
I will choose to split this into a Net::HYLA and Hylafax module, and make
Net::HYLA follow the interface more or less exactly, and move all of the
higher level routines into Hylafax for those who don't care how those
commands are sent to the FTP server....