Module: Arafa::PhoneNumber
- Defined in:
- lib/arafa/phone_number.rb
Overview
Normalizes Kenyan MSISDNs into the 2547XXXXXXXX / 2541XXXXXXXX form
that both provider APIs expect, accepting local (07.../01...),
international with a leading + (+254...), and already-normalized
(254...) input.
Constant Summary collapse
- LOCAL_FORMAT =
/\A0(7|1)\d{8}\z/- INTERNATIONAL_FORMAT =
/\A\+?254(7|1)\d{8}\z/
Class Method Summary collapse
Class Method Details
.normalize(value) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/arafa/phone_number.rb', line 12 def self.normalize(value) digits = value.to_s.strip case digits when LOCAL_FORMAT "254#{digits[1..]}" when INTERNATIONAL_FORMAT digits.delete_prefix("+") else digits end end |