SMS::Ringtone::RTTTL::Parser module can parse and validate RTTTL strings.
SYNOPSIS
use SMS::Ringtone::RTTTL::Parser;
my $rtttl = 'Flntstn:d=4,o=5,b=200:g#,c#,8p,c#6,8a#,g#,c#,' .
'8p,g#,8f#,8f,8f,8f#,8g#,c#,d#,2f,2p,g#,c#,8p,' .
'c#6,8a#,g#,c#,8p,g#,8f#,8f,8f,8f#,8g#,c#,d#,2c#';
my $r = new SMS::Ringtone::RTTTL::Parser($rtttl);
....or....
my $r = new SMS::Ringtone::RTTTL::Parser($rtttl,{'STRICT_NOTE_PART_ORDER' => 0});
# Check for errors
if ($r->has_errors()) {
print "The following RTTTL errors were found:n";
foreach (@{$r->get_errors()}) {
print "$_n";
}
exit;
}
# Dump parse results to STDOUT
$r->puke();
SMS::Ringtone::RTTTL::Parser is a RTTTL string parser and validator. See http://members.tripod.lycos.nl/jupp/linux/soft/rtttl_player/EBNF.txt for RTTTL syntax in BNF.
Product's homepage
Requirements:
· Perl