The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Net::Radio::Modem - Independently access radio network modems (such as 3GPP)

SYNOPSIS

  use Net::Radio::Modem;
  my $modem = Net::Radio::Modem->new('Static', '/test_0' => {
      MNC => '262', MCC => '02', IMSI => '262020555017753',
      LAC => ...}, '/test_1' => { ... } ... );
  my @modems = $modem->get_modems(); # returns ('/test_0', 'test_1', ...)
  my $local_modem = grep {
         $modem->get_modem_property($_, 'MobileCountryCode') == 364
     } @modems; # find the one for Bahamas

  my $real_m = Net::Radio::Modem->new('oFono', {
      dbus_main_runs => 0 # fetch values, don't rely on dbus-signals
  });
  my @rm = $real_m->get_modems();
  my $o2sim = grep {
         $real_m->get_modem_property($_, 'MCC') == 262 # Germany
     and $real_m->get_modem_property($_, 'MNC') ~~ qw(07 08 11) # O2
     } @rf;

METHODS

new($imp;@impl_args)

Instantiates new modem accessor from package Net::Radio::Modem::Adapter::$impl. If no package Net::Radio::Modem::Adapter::$impl is available, Net::Radio::Modem::Adapter::Null is used.

@impl_args are passed to the initialisation of the implementation class.

get_modems()

Provides a list of modems available.

get_modem_property($modem,$property)

Provides the value of given property for specified modem. Property can be an Net::Radio::Modem::Adapter/Alias.

BUGS

Please report any bugs or feature requests to bug-net-radio-modem at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Net-Radio-Modem. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

If you think you've found a bug then please read "How to Report Bugs Effectively" by Simon Tatham: http://www.chiark.greenend.org.uk/~sgtatham/bugs.html.

SUPPORT

You can find documentation for this module with the perldoc command.

    perldoc Net::Radio::Modem

You can also look for information at:

Where can I go for help with a concrete version?

Bugs and feature requests are accepted against the latest version only. To get patches for earlier versions, you need to get an agreement with a developer of your choice - who may or not report the issue and a suggested fix upstream (depends on the license you have chosen).

Business support and maintenance

For business support you can contact Jens via his CPAN email address rehsackATcpan.org. Please keep in mind that business support is neither available for free nor are you eligible to receive any support based on the license distributed with this package.

ACKNOWLEDGEMENTS

ROADMAP

Following things will be nice to have:

  • List of features useful in a perl module (excluding NIH features)

  • Class hierarchy with wrapper implementation of required functions using a configurable adapter class hierarchy.

  • Implement Composite and Mediator pattern to allow mocking of specific values and/or fallback values ...

  • Patches

AUTHOR

Jens Rehsack, <rehsack at cpan.org>

LICENSE AND COPYRIGHT

Copyright 2012 Jens Rehsack.

This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.

1 POD Error

The following errors were encountered while parsing the POD:

Around line 99:

alternative text 'Net::Radio::Modem::Adapter/Alias' contains non-escaped | or /