Acme-Morse-Audible
view release on metacpan or search on metacpan
sub play{
local $_ = pop;
chomp;
s/^$hearable.{4}.+?\0{2}//;s/\0\xFF\x2F$//;
s/\xFF\x40(.+?)\x56\0/length($1)==7?1:0/ge;
pack 'b*', $_;
}
open 0 or die "Cannot hear '$0'.\n";
(my $telegram = do{local $/=undef;<0>}) =~ s/.*^\s*(use|no)\s+Acme::Morse::Audible\s*;\n//sm;
close 0;
if($1 eq 'use'){
if($telegram =~ /^$hearable/){
eval play $telegram;
}else{
open my $rec,'>',$0 or die "Cannot record '$0'.\n";
binmode($rec);
print $rec "use Acme::Morse::Audible;\n" . record $telegram;
close $rec;
( run in 0.889 second using v1.01-cache-2.11-cpan-d80b1682f3f )