NAME

WWW::FleXtel - Manipulate FleXtel phone number redirection

SYNOPSIS

     use strict;
     use WWW::FleXtel qw();
     use Data::Dumper qw(Dumper);

my $flextel = WWW::FleXtel->new(

             number   => "0701776655",
             pin      => "1234",
             account  => "A99999", # not required
             password => "password", # not required
         );

printf("Diverted to %s\n", $flextel->get_destination);

     printf("Diverted to %s\n", $flextel->set_destination(
             destination => "01923001122"
         );

print Dumper($flextel->get_phonebook);

DESCRIPTION

This module provides a very basic OO interface to FleXtel telephone number redirection webpage.

METHODS
new

     my $flextel = WWW::FleXtel->new(
             number   => "0701776655",
             pin      => "1234",
             account  => "A99999", # not required
             password => "password", # not required
         );

Create a new WWW::FleXtel object. Currently the account and password parameters are unsed and therefor do not need to be passed to this constructor method.

This method does have any mandatory parameters. However values passed this constructor method will be used as default fallback values if they are not passed to the subsequent accessor methods detailed below.

number

        Specifies the default FleXtel number to use for all subsequent
        queries.

pin Specifies the default PIN to use for all subsqeuent queries.

account

        Specifies the default FleXtel account number to use for all
        subsequent queries. This parameter is not currently used, but may be
        used in future releases.

password

        Specifies the default account password to use for all subsequent
        queries. This parameter is not currently use, but may be used in
        future releases.

timeout

        Specifies (in seconds) the timeout for all HTTP connections. By
        default this is set to 15 seconds.

cache_ttl

        Specifies (in seconds) the TTL for values to be cached internally
        within the WWW::FleXtel object. By default this is set to 5 seconds.

get_destination

     my $destination = $flextel->get_destination;
     print "Diverted to $destination\n";

Retrieves the destination telephone number that your FleXtel number is currently diverted to.

set_destination

     my $destination = $flextel->set_destination(destination => "01923001122");
     print "Diverted to $destination\n";

Sets the destination telephone number that your FleXtel number is diverted to.

get_phonebook

     my $phonebook = $flextel->get_phonebook;
     use Data::Dumper qw(Dumper);
     print Dumper($phonebook);

my $destination = $flextel->get_destination;

     my ($person) = grep(/\S/, map {
             $_->{title} if defined $_ && $_->{number} eq $destination
         } @{$phonebook}); $person ||= "not recorded";
     print "$destination is $person in your phonebook\n";

This method extracts the indexes, names and numbers from your FleXtel number's phonebook.

get_icd

my $icd = $flextel->get_icd;

get_email

my $notification_address = $flextel->get_email;

TODO

Add support for retrieving a list of all FleXtel phone numbers attached to an account number.

SEE ALSO

<http://www.flextel.ltd.uk>

VERSION

$Id: FleXtel.pm 942 2007-02-06 18:51:21Z nicolaw $

AUTHOR

Nicola Worthington <nicolaw@cpan.org>

<http://perlgirl.org.uk>

If you like this software, why not show your appreciation by sending the author something nice from her Amazon wishlist? ( http://www.amazon.co.uk/gp/registry/1VZXC59ESWYK0?sort=priority )

ACKNOWLEDGEMENTS

Special thanks to Kevin Archer at FleXtel and the FleXtel support and development team for implementing the simple CVS access methods to their website.

See CREDITS in the distribution tarball.

COPYRIGHT

Copyright 2007 Nicola Worthington.

This software is licensed under The Apache Software License, Version 2.0.

<http://www.apache.org/licenses/LICENSE-2.0>