projects
/
Biblio-RFID.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
program only tag requested on command-line
[Biblio-RFID.git]
/
scripts
/
program.pl
diff --git
a/scripts/program.pl
b/scripts/program.pl
index
ec33b88
..
565bb2a
100755
(executable)
--- a/
scripts/program.pl
+++ b/
scripts/program.pl
@@
-29,25
+29,31
@@
GetOptions(
) || die $!;
my ( $sid, $content ) = @ARGV;
) || die $!;
my ( $sid, $content ) = @ARGV;
-die "usage: $0 [--reader regex_filter] [--afi 214] [--type 1] E0_RFID_SID [barcode]\n" unless $sid && ( $content | $afi | $blank );
+if ( $sid =~ m/.+,.+/ && ! defined $content ) {
+ ( $sid, $content ) = split(/,/, $sid);
+}
+
+die "usage: $0 [--reader regex_filter] [--afi 214] [--type 1] E0_RFID_SID [barcode]\n" unless $sid && ( $content || $afi || $blank );
$hash->{content} = $content if defined $content;
my $rfid = Biblio::RFID::Reader->new( $reader );
$Biblio::RFID::debug = $debug;
$hash->{content} = $content if defined $content;
my $rfid = Biblio::RFID::Reader->new( $reader );
$Biblio::RFID::debug = $debug;
-foreach my $tag ( $rfid->tags ) {
+foreach my $tag ( $rfid->tags
, $sid
) {
warn "visible $tag\n";
next unless $tag eq $sid;
warn "visible $tag\n";
next unless $tag eq $sid;
- if ( $blank ) {
-warn dump( $blank );
+ if ( grep { defined $_ } values %$blank ) {
my $type = ( grep { $blank->{$_} } keys %$blank )[0];
warn "BLANK $type $tag\n";
$rfid->write_blocks( $tag => Biblio::RFID::RFID501->$type );
my $type = ( grep { $blank->{$_} } keys %$blank )[0];
warn "BLANK $type $tag\n";
$rfid->write_blocks( $tag => Biblio::RFID::RFID501->$type );
- } els
e
{
+ } els
if ( $content )
{
warn "PROGRAM $tag with $content\n";
$rfid->write_blocks( $tag => Biblio::RFID::RFID501->from_hash($hash) );
warn "PROGRAM $tag with $content\n";
$rfid->write_blocks( $tag => Biblio::RFID::RFID501->from_hash($hash) );
- $rfid->write_afi( $tag => chr($afi) ) if $afi;
+ }
+ if ( $afi ) {
+ warn "AFI $tag with $afi\n";
+ $rfid->write_afi( $tag => chr($afi) );
}
}
}
}