phonie 1.0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +1 -0
- data/Gemfile +5 -0
- data/Gemfile.lock +10 -0
- data/LICENSE +20 -0
- data/Rakefile +13 -0
- data/Readme.rdoc +153 -0
- data/lib/phonie.rb +7 -0
- data/lib/phonie/country.rb +120 -0
- data/lib/phonie/data/phone_countries.yml +1683 -0
- data/lib/phonie/phone.rb +215 -0
- data/lib/phonie/support.rb +78 -0
- data/lib/phonie/version.rb +3 -0
- data/phonie.gemspec +18 -0
- data/test/countries/ae_test.rb +15 -0
- data/test/countries/af_test.rb +12 -0
- data/test/countries/al_test.rb +12 -0
- data/test/countries/ar_test.rb +12 -0
- data/test/countries/at_test.rb +14 -0
- data/test/countries/au_test.rb +48 -0
- data/test/countries/ba_test.rb +9 -0
- data/test/countries/bd_test.rb +17 -0
- data/test/countries/be_test.rb +120 -0
- data/test/countries/bg_test.rb +13 -0
- data/test/countries/bo_test.rb +12 -0
- data/test/countries/br_test.rb +12 -0
- data/test/countries/bt_test.rb +9 -0
- data/test/countries/by_test.rb +12 -0
- data/test/countries/bz_test.rb +12 -0
- data/test/countries/ca_test.rb +20 -0
- data/test/countries/cr_test.rb +12 -0
- data/test/countries/cy_test.rb +12 -0
- data/test/countries/cz_test.rb +12 -0
- data/test/countries/de_test.rb +18 -0
- data/test/countries/dk_test.rb +12 -0
- data/test/countries/dz_test.rb +12 -0
- data/test/countries/ec_test.rb +12 -0
- data/test/countries/ee_test.rb +12 -0
- data/test/countries/eg_test.rb +9 -0
- data/test/countries/et_test.rb +11 -0
- data/test/countries/fi_test.rb +12 -0
- data/test/countries/fr_test.rb +22 -0
- data/test/countries/gb_test.rb +262 -0
- data/test/countries/ge_test.rb +12 -0
- data/test/countries/gh_test.rb +9 -0
- data/test/countries/gr_test.rb +9 -0
- data/test/countries/gt_test.rb +12 -0
- data/test/countries/gu_test.rb +9 -0
- data/test/countries/gy_test.rb +9 -0
- data/test/countries/hr_test.rb +75 -0
- data/test/countries/hu_test.rb +12 -0
- data/test/countries/il_test.rb +12 -0
- data/test/countries/in_test.rb +45 -0
- data/test/countries/ir_test.rb +13 -0
- data/test/countries/ke_test.rb +12 -0
- data/test/countries/lk_test.rb +9 -0
- data/test/countries/ng_test.rb +9 -0
- data/test/countries/nl_test.rb +383 -0
- data/test/countries/no_test.rb +12 -0
- data/test/countries/np_test.rb +15 -0
- data/test/countries/ph_test.rb +9 -0
- data/test/countries/pk_test.rb +9 -0
- data/test/countries/pt_test.rb +129 -0
- data/test/countries/qa_test.rb +9 -0
- data/test/countries/rs_test.rb +15 -0
- data/test/countries/sa_test.rb +9 -0
- data/test/countries/se_test.rb +478 -0
- data/test/countries/si_test.rb +19 -0
- data/test/countries/sv_test.rb +12 -0
- data/test/countries/to_test.rb +12 -0
- data/test/countries/ua_test.rb +17 -0
- data/test/countries/us_test.rb +24 -0
- data/test/countries/uy_test.rb +20 -0
- data/test/countries/za_test.rb +19 -0
- data/test/countries/zw_test.rb +12 -0
- data/test/country_test.rb +27 -0
- data/test/extension_test.rb +30 -0
- data/test/phone_test.rb +137 -0
- data/test/test_helper.rb +37 -0
- data/test_usa_phones_with_extensions.csv +99 -0
- metadata +130 -0
@@ -0,0 +1,19 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../test_helper')
|
2
|
+
|
3
|
+
## Slovenia
|
4
|
+
class SITest < Phonie::TestCase
|
5
|
+
def test_local
|
6
|
+
#Maribor
|
7
|
+
parse_test('+ 386 2 23 46 611', '386', '2', '2346611')
|
8
|
+
end
|
9
|
+
|
10
|
+
def test_local_2
|
11
|
+
# Koper
|
12
|
+
parse_test('+ 386 5 23 46 611', '386', '5', '2346611', "Slovenia", false)
|
13
|
+
end
|
14
|
+
|
15
|
+
def test_mobile
|
16
|
+
# Mobitel
|
17
|
+
parse_test('+386 51 258999', '386', '51', '258999', "Slovenia", true)
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../test_helper')
|
2
|
+
|
3
|
+
## El Salvador
|
4
|
+
class SVTest < Phonie::TestCase
|
5
|
+
def test_local
|
6
|
+
parse_test('+50321234567', '503', '2', '1234567', 'El Salvador', false)
|
7
|
+
end
|
8
|
+
|
9
|
+
def test_mobile
|
10
|
+
parse_test('+50371234567', '503', '7', '1234567', 'El Salvador', true)
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../test_helper')
|
2
|
+
|
3
|
+
## Tonga
|
4
|
+
class TOTest < Phonie::TestCase
|
5
|
+
def test_local
|
6
|
+
parse_test('+67679321', '676', '79', '321', "Tonga", false)
|
7
|
+
end
|
8
|
+
|
9
|
+
def test_mobile
|
10
|
+
parse_test('67688321', '676', '88', '321', "Tonga", true)
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../test_helper')
|
2
|
+
|
3
|
+
## Ukraine
|
4
|
+
class UATest < Phonie::TestCase
|
5
|
+
|
6
|
+
def test_local
|
7
|
+
parse_test('+380 57 711 22 33', '380', '57', '7112233', "Ukraine", false)
|
8
|
+
end
|
9
|
+
|
10
|
+
def test_mobile
|
11
|
+
parse_test('+380-50-111-22-33', '380', '50', '1112233', "Ukraine", true)
|
12
|
+
end
|
13
|
+
|
14
|
+
def test_mobile2
|
15
|
+
parse_test('+380-66-042-22-01', '380', '66', '0422201', "Ukraine", true)
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../test_helper')
|
2
|
+
|
3
|
+
## United States
|
4
|
+
class USTest < Phonie::TestCase
|
5
|
+
|
6
|
+
def test_local
|
7
|
+
parse_test('+1 251 123 4567', '1', '251', '1234567', 'United States')
|
8
|
+
end
|
9
|
+
|
10
|
+
def test_tollfree
|
11
|
+
parse_test('+1 800 555 3456', '1', '800', '5553456', 'United States')
|
12
|
+
end
|
13
|
+
|
14
|
+
def test_long_with_default_country_code
|
15
|
+
Phonie::Phone.default_country_code = '1'
|
16
|
+
parse_test('2069735100', '1', '206', '9735100', 'United States')
|
17
|
+
end
|
18
|
+
|
19
|
+
def test_short_with_default_country_code_and_area_code
|
20
|
+
Phonie::Phone.default_country_code = '1'
|
21
|
+
Phonie::Phone.default_area_code = '206'
|
22
|
+
parse_test('9735100', '1', '206', '9735100', 'United States')
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../test_helper')
|
2
|
+
|
3
|
+
## Uruguay
|
4
|
+
# source: http://en.wikipedia.org/wiki/Telephone_numbers_in_Uruguay
|
5
|
+
class UYTest < Phonie::TestCase
|
6
|
+
# 02 Montevideo
|
7
|
+
def test_montevideo
|
8
|
+
parse_test('+598 2 1234567', '598', '2', '1234567')
|
9
|
+
end
|
10
|
+
|
11
|
+
# 042 Maldonado
|
12
|
+
def test_maldonado
|
13
|
+
parse_test('+598 42 123456', '598', '42', '123456', "Uruguay", false)
|
14
|
+
end
|
15
|
+
|
16
|
+
# 09 Mobile phones
|
17
|
+
def test_mobile_phones
|
18
|
+
parse_test('+598 99 570110', '598', '99', '570110', "Uruguay", true)
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../test_helper')
|
2
|
+
|
3
|
+
## South Africa
|
4
|
+
class ZATest < Phonie::TestCase
|
5
|
+
def test_local
|
6
|
+
# Telkom
|
7
|
+
parse_test('+27 11 555 5555', '27', '11', '5555555', "South Africa", false)
|
8
|
+
end
|
9
|
+
|
10
|
+
def test_mobile
|
11
|
+
# Vodacom
|
12
|
+
parse_test('+27 82 555 5555', '27', '82', '5555555', "South Africa", true)
|
13
|
+
end
|
14
|
+
|
15
|
+
def test_tollfree
|
16
|
+
# Telkom
|
17
|
+
parse_test('+27 800 123 321', '27', '800', '123321', "South Africa", false)
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../test_helper')
|
2
|
+
|
3
|
+
## Zimbabwe
|
4
|
+
class ZWTest < Phonie::TestCase
|
5
|
+
def test_local
|
6
|
+
parse_test('+263454168409', '263', '4', '54168409', "Zimbabwe", false)
|
7
|
+
end
|
8
|
+
|
9
|
+
def test_mobile
|
10
|
+
parse_test('263774168409', '263', '77', '4168409', "Zimbabwe", true)
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/test_helper')
|
2
|
+
|
3
|
+
class CountryTest < Phonie::TestCase
|
4
|
+
def test_find_by_country_name
|
5
|
+
country = Phonie::Country.find_by_name('canada')
|
6
|
+
assert_equal country.name, "Canada"
|
7
|
+
|
8
|
+
country = Phonie::Country.find_by_name('Canada')
|
9
|
+
assert_equal country.name, "Canada"
|
10
|
+
|
11
|
+
assert_nil Phonie::Country.find_by_name(nil)
|
12
|
+
assert_nil Phonie::Country.find_by_country_code(nil)
|
13
|
+
assert_equal [], Phonie::Country.find_all_by_phone_code(nil)
|
14
|
+
end
|
15
|
+
|
16
|
+
def test_find_by_country_code
|
17
|
+
country = Phonie::Country.find_by_country_code('NO')
|
18
|
+
assert_equal country.name, "Norway"
|
19
|
+
end
|
20
|
+
|
21
|
+
def test_find_all_by_phone_code
|
22
|
+
countries = Phonie::Country.find_all_by_phone_code('47')
|
23
|
+
assert_equal countries.length, 1
|
24
|
+
assert_equal countries.first.name, "Norway"
|
25
|
+
end
|
26
|
+
|
27
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/test_helper')
|
2
|
+
|
3
|
+
class ExtensionTest < Test::Unit::TestCase
|
4
|
+
|
5
|
+
def test_parse_usa_long_with_simple_extension
|
6
|
+
pn = Phonie::Phone.parse "+1 2069735100 x143"
|
7
|
+
|
8
|
+
assert_not_nil pn, %Q{parse should pass}
|
9
|
+
assert_equal '9735100', pn.number
|
10
|
+
assert_equal '206', pn.area_code
|
11
|
+
assert_equal '1', pn.country_code
|
12
|
+
assert_equal '143', pn.extension
|
13
|
+
end
|
14
|
+
|
15
|
+
def test_to_s_with_extension
|
16
|
+
pn = Phonie::Phone.new '5125486', '91', '385', '143'
|
17
|
+
assert_equal '+385915125486x143', pn.format(:default_with_extension)
|
18
|
+
end
|
19
|
+
|
20
|
+
def test_format_with_extension
|
21
|
+
pn = Phonie::Phone.new '5125486', '91', '385', '143'
|
22
|
+
assert_equal '(091)/512-5486 x 143', pn.format('(%A)/%f-%l x %x')
|
23
|
+
end
|
24
|
+
|
25
|
+
def test_validation_keeps_extension
|
26
|
+
number = "555-555-1212 ext 1234"
|
27
|
+
Phonie::Phone.valid?(number)
|
28
|
+
assert_equal "555-555-1212 ext 1234", number
|
29
|
+
end
|
30
|
+
end
|
data/test/phone_test.rb
ADDED
@@ -0,0 +1,137 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/test_helper')
|
2
|
+
|
3
|
+
class PhoneTest < Phonie::TestCase
|
4
|
+
|
5
|
+
def test_is_mobile
|
6
|
+
assert Phonie::Phone.is_mobile?("918124452900")
|
7
|
+
end
|
8
|
+
|
9
|
+
def test_number_without_country_code_initialize
|
10
|
+
Phonie::Phone.default_country_code = nil
|
11
|
+
|
12
|
+
assert_raise RuntimeError do
|
13
|
+
pn = Phonie::Phone.new '5125486', '91'
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
def test_number_without_country_and_area_code_initialize
|
18
|
+
Phonie::Phone.default_country_code = nil
|
19
|
+
Phonie::Phone.default_area_code = nil
|
20
|
+
|
21
|
+
assert_raise RuntimeError do
|
22
|
+
pn = Phonie::Phone.new '451588'
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
def test_number_with_default_area_code_initialize
|
27
|
+
Phonie::Phone.default_country_code = '385'
|
28
|
+
Phonie::Phone.default_area_code = '47'
|
29
|
+
|
30
|
+
pn = Phonie::Phone.new '451588'
|
31
|
+
assert pn.number == '451588'
|
32
|
+
assert pn.area_code == '47'
|
33
|
+
assert pn.country_code == '385'
|
34
|
+
end
|
35
|
+
|
36
|
+
def test_number_with_default_country_code_initialize
|
37
|
+
Phonie::Phone.default_country_code = '386'
|
38
|
+
|
39
|
+
pn = Phonie::Phone.new '5125486', '91'
|
40
|
+
assert pn.number == '5125486'
|
41
|
+
assert pn.area_code == '91'
|
42
|
+
assert pn.country_code == '386'
|
43
|
+
end
|
44
|
+
|
45
|
+
def test_number_with_country_code_initialize
|
46
|
+
Phonie::Phone.default_country_code = '387'
|
47
|
+
|
48
|
+
pn = Phonie::Phone.new '5125486', '91', '385'
|
49
|
+
assert pn.number == '5125486'
|
50
|
+
assert pn.area_code == '91'
|
51
|
+
assert pn.country_code == '385'
|
52
|
+
end
|
53
|
+
|
54
|
+
def test_parse_empty
|
55
|
+
assert_equal Phonie::Phone.parse(''), nil
|
56
|
+
assert_equal Phonie::Phone.parse(nil), nil
|
57
|
+
end
|
58
|
+
|
59
|
+
def test_parse_short_without_special_characters_without_country
|
60
|
+
Phonie::Phone.default_country_code = nil
|
61
|
+
|
62
|
+
assert_nil Phonie::Phone.parse "0915125486"
|
63
|
+
|
64
|
+
assert_raise RuntimeError do
|
65
|
+
Phonie::Phone.parse! "0915125486"
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
69
|
+
def test_parse_short_with_special_characters_without_country
|
70
|
+
Phonie::Phone.default_country_code = nil
|
71
|
+
|
72
|
+
assert_nil Phonie::Phone.parse "091/512-5486"
|
73
|
+
|
74
|
+
assert_raise RuntimeError do
|
75
|
+
Phonie::Phone.parse! "091/512-5486"
|
76
|
+
end
|
77
|
+
end
|
78
|
+
|
79
|
+
def test_to_s
|
80
|
+
Phonie::Phone.default_country_code = nil
|
81
|
+
pn = Phonie::Phone.new '5125486', '91', '385'
|
82
|
+
assert pn.to_s == '+385915125486'
|
83
|
+
end
|
84
|
+
|
85
|
+
def test_to_s_without_country_code
|
86
|
+
Phonie::Phone.default_country_code = '385'
|
87
|
+
pn = Phonie::Phone.new '5125486', '91'
|
88
|
+
assert pn.format("0%a%n") == '0915125486'
|
89
|
+
end
|
90
|
+
|
91
|
+
def test_format_special_with_country_code
|
92
|
+
Phonie::Phone.default_country_code = nil
|
93
|
+
pn = Phonie::Phone.new '5125486', '91', '385'
|
94
|
+
assert pn.format("+ %c (%a) %n") == '+ 385 (91) 5125486'
|
95
|
+
end
|
96
|
+
|
97
|
+
def test_format_special_without_country_code
|
98
|
+
Phonie::Phone.default_country_code = '385'
|
99
|
+
pn = Phonie::Phone.new '5125486', '91'
|
100
|
+
assert_equal pn.format("%A/%f-%l"), '091/512-5486'
|
101
|
+
end
|
102
|
+
|
103
|
+
def test_format_with_symbol_specifier
|
104
|
+
Phonie::Phone.default_country_code = nil
|
105
|
+
pn = Phonie::Phone.new '5125486', '91', '385'
|
106
|
+
assert_equal pn.format(:europe), '+385 (0) 91 512 5486'
|
107
|
+
end
|
108
|
+
|
109
|
+
def test_valid
|
110
|
+
assert_equal Phonie::Phone.valid?('915125486', :country_code => '385'), true
|
111
|
+
assert_equal Phonie::Phone.valid?('385915125486'), true
|
112
|
+
end
|
113
|
+
|
114
|
+
def test_doesnt_validate
|
115
|
+
assert_equal Phonie::Phone.valid?('asdas'), false
|
116
|
+
assert_equal Phonie::Phone.valid?('38591512548678'), false
|
117
|
+
end
|
118
|
+
|
119
|
+
def test_comparison_true
|
120
|
+
pn1 = Phonie::Phone.new '5125486', '91', '385'
|
121
|
+
pn2 = Phonie::Phone.new '5125486', '91', '385'
|
122
|
+
assert pn1 == pn2
|
123
|
+
end
|
124
|
+
|
125
|
+
def test_comparison_false
|
126
|
+
pn1 = Phonie::Phone.new '5125486', '91', '385'
|
127
|
+
pn2 = Phonie::Phone.new '1234567', '91', '385'
|
128
|
+
assert pn1 != pn2
|
129
|
+
end
|
130
|
+
|
131
|
+
def test_parse_number_without_international_code
|
132
|
+
assert_equal (Phonie::Phone.parse "90123456"), nil
|
133
|
+
assert_equal (Phonie::Phone.parse "90123456", :country_code => '47').format(:default), "+4790123456"
|
134
|
+
assert_equal (Phonie::Phone.parse "90123456", :country_code => '47', :area_code => '').format(:default), "+4790123456"
|
135
|
+
end
|
136
|
+
|
137
|
+
end
|
data/test/test_helper.rb
ADDED
@@ -0,0 +1,37 @@
|
|
1
|
+
$:.unshift(File.dirname(__FILE__) + '/../lib')
|
2
|
+
|
3
|
+
require 'rubygems'
|
4
|
+
|
5
|
+
require 'test/unit'
|
6
|
+
require 'phonie'
|
7
|
+
|
8
|
+
def parse_test(raw, country_code, area_code, number, country_name = nil, is_mobile = nil)
|
9
|
+
pn = Phonie::Phone.parse(raw)
|
10
|
+
|
11
|
+
assert_not_nil pn, %Q{parse should pass}
|
12
|
+
assert_equal pn.country_code, country_code
|
13
|
+
assert_equal pn.area_code, area_code
|
14
|
+
assert_equal pn.number, number
|
15
|
+
if country_name
|
16
|
+
assert_equal pn.country.name, country_name
|
17
|
+
end
|
18
|
+
|
19
|
+
unless is_mobile.nil?
|
20
|
+
assert_equal is_mobile, pn.is_mobile?
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
|
25
|
+
class Phonie::TestCase < Test::Unit::TestCase
|
26
|
+
|
27
|
+
def setup
|
28
|
+
Phonie::Phone.default_country_code = nil
|
29
|
+
Phonie::Phone.default_area_code = nil
|
30
|
+
end
|
31
|
+
|
32
|
+
def default_test
|
33
|
+
klass = self.class.to_s
|
34
|
+
ancestors = (self.class.ancestors - [self.class]).collect { |ancestor| ancestor.to_s }
|
35
|
+
super unless klass =~ /TestCase/ or ancestors.first =~ /TestCase/
|
36
|
+
end
|
37
|
+
end
|
@@ -0,0 +1,99 @@
|
|
1
|
+
601-867-5000 ext 75292
|
2
|
+
(334)821-2223 Ext. 107
|
3
|
+
(863) 983-6171 ext: 0055
|
4
|
+
601-987-3995 ext 10
|
5
|
+
(512) 473-3200Ext2396
|
6
|
+
(727) 558-5010 ext: 0112
|
7
|
+
(904) 360-5611 ext: 5611
|
8
|
+
(937) 255-7204Ext337
|
9
|
+
228-374-5022 ext 5386
|
10
|
+
(205)987-3500 Ext. 205-32
|
11
|
+
(607) 273-8588x402
|
12
|
+
(205)328-3330 Ext. 802-59
|
13
|
+
(407) 251-2452 ext: 0146
|
14
|
+
502-564-8110 xt 312
|
15
|
+
(828) 698-3923x13
|
16
|
+
(608)836-7433 Ext. 5147
|
17
|
+
(1-808)935-3222 Ext. 2#
|
18
|
+
(770)420-3179 Ext. x 179
|
19
|
+
(415) 558-8669x218
|
20
|
+
(205)879-6330 Ext. 731-50
|
21
|
+
(205)987-5995 Ext. 802-58
|
22
|
+
(609) 924-2200Ext10
|
23
|
+
(312) 440-4373x12
|
24
|
+
(978) 369-9602x457
|
25
|
+
1-602-264-1774 # 135
|
26
|
+
502-564-8890 x4340
|
27
|
+
502-564-5550 x4569
|
28
|
+
(480)437-2600 Ext. VM123
|
29
|
+
(850) 245-4131 ext: 3506
|
30
|
+
601-354-6161 ext 103
|
31
|
+
(414)778-5400 Ext. 127
|
32
|
+
(262)338-4475 Ext. #16
|
33
|
+
(602) 264-1774 extention # 135
|
34
|
+
(314) 361-3221x107
|
35
|
+
(800) 255-5747x46
|
36
|
+
410-514-7336 TDDTTY + Voice
|
37
|
+
(617) 695-2300x393
|
38
|
+
1-334-386-8800 Ext. 107
|
39
|
+
(928)634-9536 Ext. 143
|
40
|
+
502-573-1555 x266
|
41
|
+
(978) 927-8000x246
|
42
|
+
(920) 887-4600Ext340
|
43
|
+
502-564-1404 x4536
|
44
|
+
(850) 245-6774 ext: 4774
|
45
|
+
(718) 852-3000 Ext 269
|
46
|
+
228-374-5022 ext 5022
|
47
|
+
502-564-0105 x10260
|
48
|
+
(850) 000-0000 ext: 00000000
|
49
|
+
(979) 233-1616x306
|
50
|
+
(207) 333-3267x224
|
51
|
+
(561) 625-5122 ext: 687
|
52
|
+
(386) 961-7414 ext: 7414
|
53
|
+
(262)549-2249 Ext. 104
|
54
|
+
(205)322-7500 Ext. BECKYS
|
55
|
+
(303)858-8100 Ext. n.a.
|
56
|
+
(937) 255-7204x337
|
57
|
+
601-944-4830 ext 104
|
58
|
+
228-432-1056 ext 104
|
59
|
+
(209) 586-1495Ext104
|
60
|
+
502-564-8139 : 4645
|
61
|
+
(602) 264-1774 ext is 135
|
62
|
+
(602) 264-1774Ext135
|
63
|
+
502-564-7822 x4212
|
64
|
+
(609) 921-8808Ext3
|
65
|
+
(703) 739-7900x222
|
66
|
+
(609) 758-2241x144
|
67
|
+
(970)223-6500 Ext. X6510
|
68
|
+
(734) 485-2000Ext255
|
69
|
+
(904) 620-4424 ext: 8614424
|
70
|
+
(904) 827-2520 ext: 2520
|
71
|
+
(978) 774-1050x251
|
72
|
+
(541) 343-0123x2269
|
73
|
+
(608)277-2752 Ext. 2752
|
74
|
+
(203) 869-6786x335
|
75
|
+
502-564-5981 x272
|
76
|
+
606-878-5908 x6085
|
77
|
+
502-564-2257 x3464
|
78
|
+
(205)871-1911 Ext. (205)
|
79
|
+
502-564-7770 x3965
|
80
|
+
(608)374-2130 Ext. 28
|
81
|
+
(850) 410-9660 ext: 9240
|
82
|
+
601-987-6837 ext 102
|
83
|
+
(414)529-1101 Ext. 153
|
84
|
+
(209) 586-1495x104
|
85
|
+
(520)408-1885 Ext. # 227
|
86
|
+
601-605-5388 ext 100
|
87
|
+
(352) 375-8484 ext: 0174
|
88
|
+
15025645981x225
|
89
|
+
(602) 264-1774 X 135
|
90
|
+
(205)803-1499 Ext. 414-03
|
91
|
+
(651) 459-4121x203
|
92
|
+
+61 3 9811 2400
|
93
|
+
(262)681-2020 Ext. 6682
|
94
|
+
601-944-4845 ext 118
|
95
|
+
384-1100 VOICE MAIL:3004
|
96
|
+
(205)251-1267 Ext. 802-09
|
97
|
+
(410) 280-2038Ext11
|
98
|
+
502-564-3170 x190
|
99
|
+
15025646734x4420
|