et-phone
v1.2.0
Published
A phone number validation function for Ethiopian Ethio-telecom and Safaricom numbers.
Downloads
14
Maintainers
Readme
Installing
Package manager
Using npm:
$ npm install et-phone
Using yarn:
$ yarn add et-phone
Once the package is installed, you can import the library using import
or require
approach:
import etPhone from 'et-phone';
[Since the function is exported using default export, you can use any name instead of 'etPhone' as the name for the imported function.]
Examples
etPhone("0911 23 45 67")
// { isValid: true, phoneNumber: "+251911234567", provider: "Ethio telecom", phoneType: "Mobile" }
etPhone("0711 23 45 67")
// { isValid: true, phoneNumber: "+251711234567", provider: "Safaricom", phoneType: "Mobile" }
etPhone("+251 911 23 45 67")
// { isValid: true, phoneNumber: "+251911234567", provider: "Ethio telecom", phoneType: "Mobile" }
etPhone("+251 711 23 45 67")
// { isValid: true, phoneNumber: "+251711234567", provider: "Safaricom", phoneType: "Mobile" }
etPhone("+(251) 911 23 45 67")
// { isValid: true, phoneNumber: "+251911234567", provider: "Ethio telecom", phoneType: "Mobile" }
etPhone("+(251) 711 23 45 67")
// { isValid: true, phoneNumber: "+251711234567", provider: "Safaricom", phoneType: "Mobile" }
etPhone("911234567")
// { isValid: true, phoneNumber: "+251711234567", provider: "Ethio telecom", phoneType: "Mobile" }
etPhone("711234567")
// { isValid: true, phoneNumber: "+251711234567", provider: "Safaricom", phoneType: "Mobile",}
etPhone(911234567)
// { isValid: true, phoneNumber: "+251711234567", provider: "Ethio telecom", phoneType: "Mobile" }
etPhone(711234567)
// { isValid: true, phoneNumber: "+251711234567", provider: "Safaricom", phoneType: "Mobile" }
etPhone("0911234567", ["all"])
// { isValid: true, phoneNumber: "+251711234567", provider: "Ethio telecom", phoneType: "Mobile" }
etPhone("0911234567", ["fixedLine"])
// { isValid: false }
etPhone("0111111234", ["fixedLine"])
// { isValid: true, phoneNumber: "+2519111111234", provider: "Ethio telecom", phoneType: "Fixed-line" }
etPhone("0111111234", ["special", "mobile"])
// { isValid: false }
etPhone("909", ["shortCode"])
// {isValid: true, phoneNumber: "909", provider: "Ethio telecom", phoneType: "Short Code" }
etPhone("8004", ["special"])
// {isValid: true, phoneNumber: "8004", provider: "Ethio telecom", phoneType: "Special" }
etPhone("0911234567", ["all"], ["ethioTelecom"])
// {"isValid": true, "phoneNumber": "+251911234567", "provider": "Ethio telecom", "phoneType": "Mobile"}
etPhone("0911234567", ["all"], ["safaricom"])
// {isValid: false}
etPhone("0711234567", ["all"], ["safaricom"])
// {isValid: true, phoneNumber: '+251711234567', provider: 'Safaricom', phoneType: 'Mobile'}
Test
npm test
FAQ
- Does
et-phone
validate the existence and activeness of the phone number?
No, et-phone
does not perform validation on the existence and activeness of the phone number. Currently, et-phone
only validates whether the digit belongs to the correct Ethiopian telecom provider and phone type. It does not verify if the phone number is currently active or whether it exists in the telecommunication network.
- Why is
et-phone
returning an object withisValid: false
despite the phone number being correct?
Please ensure that you provide the other parameters, such as 'phone type' and 'provider', correctly.
Resources
License
et-phone
is freely distributable under the terms of the MIT license.