GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
Device::Gsm::Pdu(3) User Contributed Perl Documentation Device::Gsm::Pdu(3)

Device::Gsm::Pdu - library to manage PDU encoded data for GSM messaging

   This is C<BETA> software, still needs extensive testing and
   support for custom GSM commands, so use it at your own risk,
   and without C<ANY> warranty! Have fun.

    This module is meant to be used internally by C<Device::Gsm> class,
    so you probably do not want to use it directly.

  use Device::Gsm::Pdu;

  # DA is destination address
  $DA = Device::Gsm::Pdu::encode_address('+39347101010');
  $number = Device::Gsm::Pdu::decode_address( $DA );

  # Encode 7 bit text to send messages
  $text = Device::Gsm::Pdu::encode_text7('hello');

"Device::Gsm::Pdu" module includes a few basic functions to deal with SMS in PDU mode, such as encoding GSM addresses (phone numbers) and, for now only, 7 bit text.

Takes a PDU encoded address and decodes into human-readable mobile number. If number type is international, result will be prepended with a `+' sign.

Clearly, it is intended as an internal function.

Example

    print Device::Gsm::Pdu::decode_address( '0B919343171010F0' );
    # prints `+39347101010';

Takes a mobile number and encodes it as DA (destination address). If it begins with a `+', as in `+39328101010', it is treated as an international number.

Example

    print Device::Gsm::Pdu::encode_address( '+39347101010' );
    # prints `0B919343171010F0'

Encodes some text ASCII string in 7 bits PDU format, including a header byte which tells the length is septets. This is the only 100% supported mode to encode text.

Example

    print Device::Gsm::Pdu::encode_text7( 'hellohello' );
    # prints `0AE832...'

Converts a PDU (without the initial length octet) into a latin1 string.

Example

    my $pdu = 'CAFA9C0E0ABBDF7474590E8296E56C103A3C5E97E5';
    print Device::Gsm::Pdu::pdu_to_latin1($pdu);
    # prints `Just another Perl hacker'

Converts a text string in latin1 encoding (ISO-8859-1) into a PDU string.

Example

    my $text = "Just another Perl hacker";
    print Device::Gsm::Pdu::latin1_to_pdu($text);
    # prints `CAFA9C0E0ABBDF7474590E8296E56C103A3C5E97E5'

Cosimo Streppone, cosimo@cpan.org

This library is free software; you can redistribute it and/or modify it only under the terms of Perl itself.

Device::Gsm(3), perl(1)
2015-12-18 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.