Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fcevado/phone
Elixir phone number parser for numbers in international standard.
https://github.com/fcevado/phone
countries elixir international phone phone-number-parser telephone telephone-number telephone-number-parser
Last synced: about 1 month ago
JSON representation
Elixir phone number parser for numbers in international standard.
- Host: GitHub
- URL: https://github.com/fcevado/phone
- Owner: fcevado
- License: other
- Created: 2016-03-26T21:28:39.000Z (over 8 years ago)
- Default Branch: main
- Last Pushed: 2024-08-21T08:16:26.000Z (4 months ago)
- Last Synced: 2024-10-02T11:47:16.940Z (2 months ago)
- Topics: countries, elixir, international, phone, phone-number-parser, telephone, telephone-number, telephone-number-parser
- Language: Elixir
- Size: 576 KB
- Stars: 105
- Watchers: 7
- Forks: 37
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- freaking_awesome_elixir - Elixir - A parser to get useful info from telephone numbers. (Miscellaneous)
- fucking-awesome-elixir - phone - A parser to get useful info from telephone numbers. (Miscellaneous)
- awesome-elixir - phone - A parser to get useful info from telephone numbers. (Miscellaneous)
README
# Phone
[![Build Status](https://travis-ci.org/fcevado/phone.svg?branch=master)](https://travis-ci.org/fcevado/phone)
[![Coverage Status](https://coveralls.io/repos/github/fcevado/phone/badge.svg?branch=master)](https://coveralls.io/github/fcevado/phone?branch=master)
[![Module Version](https://img.shields.io/hexpm/v/phone.svg)](https://hex.pm/packages/phone)
[![Hex Docs](https://img.shields.io/badge/hex-docs-lightgreen.svg)](https://hexdocs.pm/phone/)
[![Total Download](https://img.shields.io/hexpm/dt/phone.svg)](https://hex.pm/packages/phone)
[![License](https://img.shields.io/hexpm/l/phone.svg)](https://github.com/fcevado/phone/blob/master/LICENSE)
[![Last Updated](https://img.shields.io/github/last-commit/fcevado/phone.svg)](https://github.com/fcevado/phone/commits/master)Phone number parser for telephone numbers in international standard or missing international country code, for [Elixir](http://elixir-lang.org).
Note on version `0.4.0` onward: `Phone` was rebuild to increase performance, that may increase compilation time but made `Phone` 100 times faster.
* [Online Documentation](https://hexdocs.pm/phone/readme.html)
* [Hex](https://hex.pm/packages/phone)## About
What is, what isn't and what will be about Phone:
1. It isn't:
* Intended to work as libphonenumber.
* Prepared to format numbers.
* Necessary any information about the number if in international standard.
2. It is:
* A real parser, created to extract information based only in the number.
* Prepared to work with numbers not only in the international standard.
3. It will have:
* Area code info for every country that numbering plan has area codes.* Patterns:
* Countries without area code info:
```elixir
%{
country: "Country Name",
a2: "Alpha-2",
a3: "Alpha-3",
international_code: "1",
area_code: "yyy",
number: "xxxxxxx"
}
```* Countries with area code info:
```elixir
%{
country: "Country Name",
a2: "Alpha-2 code",
a3: "Alpha-3 code",
international_code: "1",
number: "xxxxxxx",
area_code: "yyy",
area_name: "Area Name",
area_type: "state",
area_abbreviation: "AN"
}
```## Area Codes
Countries that already has area code info:
* United States.
* Canada.
* Brazil.
* Spain.## Vocabulary
* a2: Alpha-2, two letters code for country names.
* a3: Alpha-3, three letters code for country names.
* NANP: North American Numbering Plan, numbering plan for countries with international code number 1.
* Numbering Plan: The rules and specifications of how telephone numbers works in a given country.## Installation
Add to your dependencies like any other hex package:
```elixir
defp deps do
[
{:phone, "0.5.0"}
]
end
```## License
Copyright (c) 2016 Flávio Moreira Vieira
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.