7 our @EXPORT = qw( hex2bytes as_hex hex_tag );
9 use Data::Dump qw(dump);
13 RFID::Biblio - perl tools to use different RFID readers for library use
17 our $VERSION = '0.02';
24 Main idea is to develop simple API to reader, and than provide useful
25 abstractions on top of it to quickly write applications to respond on
26 tags which come in range of RFID reader using L<RFID::Biblio::Reader>.
28 Writing support for new RFID readers should be easy.
29 L<RFID::Biblio::Reader::API> provides documentation on writing support
30 for different readers.
32 Currently, two serial RFID readers based on L<RFID::Biblio::Reader::Serial>
39 L<RFID::Biblio::Reader::3M810>
43 L<RFID::Biblio::Reader::CPRM02>
47 There is also simple read-only reader using shell commands in
48 L<RFID::Biblio::Reader::librfid>.
50 For implementing application take a look at L<RFID::Biblio::Reader>
52 C<scripts/RFID-JSONP-server.pl> is example of such application. It's local
53 interface to RFID reader and JSONP REST server.
55 C<examples/koha-rfid.js> is jQuery based JavaScript code which can be inserted
56 in Koha Library System to provide overlay with tags in range and
57 check-in/check-out form-fill functionality.
61 Formatting functions are exported
65 my $bytes = hex2bytes($hex);
70 my $str = shift || die "no str?";
77 warn "## str2bytes( $str ) => $b => ",as_hex($bytes) if $debug;
83 print as_hex( $bytes );
89 foreach my $str ( @_ ) {
90 my $hex = uc unpack( 'H*', $str );
91 $hex =~ s/(..)/$1 /g if length( $str ) > 2;
95 return join(' | ', @out);
100 print hex_tag $8bytes;
104 sub hex_tag { uc(unpack('H16', shift)) }
107 =head1 SUPPORTED READERS
109 Support for different RFID readers is implemented in subclasses:
113 L<RFID::Biblio::Reader::3M810>
117 L<RFID::Biblio::Reader::CPRM02>
121 L<RFID::Biblio::Reader::librfid>
125 Dobrica Pavlinusic, C<< <dpavlin at rot13.org> >>
129 Please report any bugs or feature requests to C<bug-rfid-serial at rt.cpan.org>, or through
130 the web interface at L<http://rt.cpan.org/NoAuth/ReportBug.html?Queue=RFID-Biblio>. I will be notified, and then you'll
131 automatically be notified of progress on your bug as I make changes.
138 You can find documentation for this module with the perldoc command.
143 You can also look for information at:
147 =item * RT: CPAN's request tracker
149 L<http://rt.cpan.org/NoAuth/Bugs.html?Dist=RFID-Biblio>
151 =item * AnnoCPAN: Annotated CPAN documentation
153 L<http://annocpan.org/dist/RFID-Biblio>
157 L<http://cpanratings.perl.org/d/RFID-Biblio>
161 L<http://search.cpan.org/dist/RFID-Biblio/>
166 =head1 ACKNOWLEDGEMENTS
169 =head1 LICENSE AND COPYRIGHT
171 Copyright 2010 Dobrica Pavlinusic.
173 This program is free software; you can redistribute it and/or modify
174 it under the terms of the GNU General Public License as published by
175 the Free Software Foundation; version 2 dated June, 1991 or at your option
178 This program is distributed in the hope that it will be useful,
179 but WITHOUT ANY WARRANTY; without even the implied warranty of
180 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
181 GNU General Public License for more details.
183 A copy of the GNU General Public License is available in the source tree;
184 if not, write to the Free Software Foundation, Inc.,
185 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
190 1; # End of RFID::Biblio