The GET_REPORT was intended as a "trigger" much like the other report
triggers.  Perhaps its name should have been TRIGGER_REPORT. 


-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of
John R. Hogerhuis
Sent: Thursday, July 17, 2008 2:10 PM
To: LLRP Toolkit Development List
Subject: Re: [ltk-d] LTK Perl GET_REPORT message

On Thu, Jul 17, 2008 at 10:32 AM, Shiv Shankar Maurya
<[EMAIL PROTECTED]> wrote:
> Another info:
> I tried adding 61(message type for RO_ACCESS_REPORT)to
mids_with_status array in link.pm and now GET_REPORT works with transact
function.
>
> -Shiv
>
>

OK, I took a look at this. Thanks for raising this issue.

As you correctly surmised, the problem is that RO_ACCESS_REPORT has no
status code. transact() uses a simple algorithm for doing the
transaction: it sends whatever message you give it, and waits for the
first message that comes containing a status code.

Since RO_ACCESS_REPORT has no status code, transact() never recognizes
it as a response. So eventually it times out.

In fact, reading the LLRP spec it is not clear that a one-to-one
request-response paradigm is intended here. Maybe GET_REPORT is just a
'kick' to say "now would be a good time" to get an RO_ACCESS_REPORT.
It's an ugly bit of the spec IMHO.

It is what it is, though.

I think your original solution using send()/monitor() is perhaps
clumsy, but the best solution. I'd rather not admit this ambiguity to
transact(). What I will do is die() with a friendly policy message
that "GET_REPORT is not supported by transact(), use monitor()" if
someone tries to transact() on GET_REPORT. This will at least save the
next programmer some time scratching their head over this. It will
also save LTK-Perl users from binding to vendor-specific reader
behavior since this question hinges on some areas of the spec where
there is some freedom to interpret.

-- John.

------------------------------------------------------------------------
-
This SF.Net email is sponsored by the Moblin Your Move Developer's
challenge
Build the coolest Linux based applications with Moblin SDK & win great
prizes
Grand prize is a trip for two to an Open Source event anywhere in the
world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
llrp-toolkit-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/llrp-toolkit-devel


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
llrp-toolkit-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/llrp-toolkit-devel

Reply via email to