Navel Pondering Mantra

    numbering-plans

    2.7.0 • Public • Published

    Numbering plans

    Build Status

    Goals

    This project aims to build a list of international numbering plans for the purposes of:

    • building dialing plans for customers, preventing to flag missing routes where the customer actually misdialed;
    • helping to build LCR routing tables;
    • helping to build rating tables.

    It aims to be updated regularly to adapt to changes in international numbering plans. Contributions are welcome in the form of a Pull Request on github!

    Validating numbers

    var numbers = require('numbering-plans')
    
    numbers.validate('12123141212')
    # returns:
    # { min: 10, max: 10, mixed: true, geographic: true, name: 'NY',
    #   country: 'us', conterminous: true, national_name: 'NANPA',
    #   full_name: 'NY (NANPA)' }
    
    numbers.validate('33612341234')
    # { max: 9, min: 9, mobile: true, country: 'fr',
    #   national_name: 'France', full_name: 'France' }
    
    numbers.validate('33_112')
    # { max: 3, min: 3, special: true, emergency: true,
    #   country: 'fr', national_name: 'France', full_name: 'France' }
    
    numbers.validate('3397234713')
    # false → number is invalid
    
    numbers.validate('4372617278')
    # null → unable to decide
    

    Conventions

    Available fields, where applicable, are:

    • min: minimum length of national number
    • max: maximum lenght of national number

    One of:

    • block -- non-dialable, non-routable, etc.
    • fixed
    • mobile
    • 'mixed' -- could be fixed or mobile (e.g. NANPA)
    • special
    • value_added

    For mixed:

    • geographic might be true (e.g. US geographic numbers) or false (e.g. US non-geo)
    • corporate might be true

    For fixed:

    • geographic
    • corporate

    For value_added:

    • freephone
    • shared_cost
    • personal
    • premium
    • adult

    For special:

    • voicemail
    • test
    • vpn
    • emergency

    If a field is absent its value is assumed to be false.

    Other fields might be available for specific destinations.

    The numbering plans are established with the convention that national-only, short numbers, etc. are routed using _ as a separator between the country-code and the national number.

    Install

    npm i numbering-plans

    DownloadsWeekly Downloads

    22

    Version

    2.7.0

    License

    Unlicense

    Unpacked Size

    858 kB

    Total Files

    52

    Last publish

    Collaborators

    • shimaore