phonelib 0.2.7 → 0.2.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (61) hide show
  1. checksums.yaml +7 -0
  2. data/Rakefile +22 -22
  3. data/data/PhoneNumberMetaData.xml +486 -373
  4. data/data/phone_data.dat +0 -0
  5. data/lib/phonelib/phone.rb +7 -2
  6. data/lib/phonelib/phone_analyzer.rb +10 -7
  7. data/lib/phonelib/version.rb +1 -1
  8. data/lib/tasks/phonelib_tasks.rake +8 -0
  9. metadata +33 -166
  10. data/test/dummy/README.rdoc +0 -261
  11. data/test/dummy/Rakefile +0 -8
  12. data/test/dummy/app/assets/javascripts/application.js +0 -13
  13. data/test/dummy/app/assets/javascripts/phones.js +0 -2
  14. data/test/dummy/app/assets/stylesheets/application.css +0 -13
  15. data/test/dummy/app/assets/stylesheets/phones.css +0 -4
  16. data/test/dummy/app/assets/stylesheets/scaffold.css +0 -56
  17. data/test/dummy/app/controllers/application_controller.rb +0 -3
  18. data/test/dummy/app/controllers/phones_controller.rb +0 -83
  19. data/test/dummy/app/helpers/application_helper.rb +0 -2
  20. data/test/dummy/app/helpers/phones_helper.rb +0 -2
  21. data/test/dummy/app/models/phone.rb +0 -6
  22. data/test/dummy/app/views/layouts/application.html.erb +0 -14
  23. data/test/dummy/app/views/phones/_form.html.erb +0 -25
  24. data/test/dummy/app/views/phones/edit.html.erb +0 -6
  25. data/test/dummy/app/views/phones/index.html.erb +0 -25
  26. data/test/dummy/app/views/phones/new.html.erb +0 -5
  27. data/test/dummy/app/views/phones/show.html.erb +0 -14
  28. data/test/dummy/config.ru +0 -4
  29. data/test/dummy/config/application.rb +0 -59
  30. data/test/dummy/config/boot.rb +0 -10
  31. data/test/dummy/config/database.yml +0 -25
  32. data/test/dummy/config/environment.rb +0 -5
  33. data/test/dummy/config/environments/development.rb +0 -37
  34. data/test/dummy/config/environments/production.rb +0 -67
  35. data/test/dummy/config/environments/test.rb +0 -37
  36. data/test/dummy/config/initializers/backtrace_silencers.rb +0 -7
  37. data/test/dummy/config/initializers/inflections.rb +0 -15
  38. data/test/dummy/config/initializers/mime_types.rb +0 -5
  39. data/test/dummy/config/initializers/secret_token.rb +0 -7
  40. data/test/dummy/config/initializers/session_store.rb +0 -8
  41. data/test/dummy/config/initializers/wrap_parameters.rb +0 -14
  42. data/test/dummy/config/locales/en.yml +0 -5
  43. data/test/dummy/config/routes.rb +0 -60
  44. data/test/dummy/db/development.sqlite3 +0 -0
  45. data/test/dummy/db/migrate/20130121173847_create_phones.rb +0 -9
  46. data/test/dummy/db/migrate/20130122075331_add_possible_number_to_phone.rb +0 -5
  47. data/test/dummy/db/schema.rb +0 -23
  48. data/test/dummy/db/test.sqlite3 +0 -0
  49. data/test/dummy/log/development.log +0 -19
  50. data/test/dummy/log/test.log +0 -2667
  51. data/test/dummy/public/404.html +0 -26
  52. data/test/dummy/public/422.html +0 -26
  53. data/test/dummy/public/500.html +0 -25
  54. data/test/dummy/public/favicon.ico +0 -0
  55. data/test/dummy/script/rails +0 -6
  56. data/test/dummy/test/fixtures/phones.yml +0 -16
  57. data/test/dummy/test/functional/phones_controller_test.rb +0 -51
  58. data/test/dummy/test/unit/helpers/phones_helper_test.rb +0 -4
  59. data/test/dummy/test/unit/phone_test.rb +0 -47
  60. data/test/phonelib_test.rb +0 -314
  61. data/test/test_helper.rb +0 -18
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 0ff01b459bd1e85094346f7d122ecd50c4767dc8
4
+ data.tar.gz: 437a1259ac26e6aa385dd5e1135eac3c11416f3c
5
+ SHA512:
6
+ metadata.gz: 034361056395d337e3e0762bb039d46db01b930c50859b65f15cfa1f4b4b9384588934f909450abdeabd6220eb5bd1a34972221639e6ffa095608c442d46c81d
7
+ data.tar.gz: c29cd9f483a4cb2e0418e48faf7e63df5e6811006f93f61a4841bede73c3a0862c0865ef8ac0e03804a7915f4d36ba8d8941f7d0a975fc7214099d816b4e372b
data/Rakefile CHANGED
@@ -1,36 +1,36 @@
1
- #!/usr/bin/env rake
2
1
  begin
3
2
  require 'bundler/setup'
4
3
  rescue LoadError
5
4
  puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
6
5
  end
6
+ Bundler.require
7
+
7
8
  begin
9
+ # can't do anything to make build pass on ruby 1.9.2
8
10
  require 'rdoc/task'
9
- rescue LoadError
10
- require 'rdoc/rdoc'
11
- require 'rake/rdoctask'
12
- RDoc::Task = Rake::RDocTask
13
- end
14
-
15
- RDoc::Task.new(:rdoc) do |rdoc|
16
- rdoc.rdoc_dir = 'rdoc'
17
- rdoc.title = 'Phonelib'
18
- rdoc.options << '--line-numbers'
19
- rdoc.rdoc_files.include('README.rdoc')
20
- rdoc.rdoc_files.include('lib/**/*.rb')
11
+ RDoc::Task.new(:rdoc) do |rdoc|
12
+ rdoc.rdoc_dir = 'rdoc'
13
+ rdoc.title = 'Phonelib'
14
+ rdoc.options << '--line-numbers'
15
+ rdoc.rdoc_files.include('README.rdoc')
16
+ rdoc.rdoc_files.include('lib/**/*.rb')
17
+ end
18
+ rescue
19
+ puts 'Running without rdoc tasks'
21
20
  end
22
21
 
23
22
  Bundler::GemHelper.install_tasks
24
23
 
25
- require 'rake/testtask'
26
-
27
- Rake::TestTask.new(:test) do |t|
28
- t.libs << 'lib'
29
- t.libs << 'test'
30
- t.pattern = 'test/**/*_test.rb'
31
- t.verbose = false
24
+ require 'rspec/core/rake_task'
25
+ RSpec::Core::RakeTask.new(:spec) do |t|
26
+ if defined? Rails
27
+ puts 'Rails found! Running tests with Rails'
28
+ t.pattern = 'spec/**/*_spec.rb'
29
+ else
30
+ puts 'Rails not found! Running tests without Rails'
31
+ t.pattern = 'spec/*_spec.rb'
32
+ end
32
33
  end
33
-
34
- task :default => :test
34
+ task :default => :spec
35
35
 
36
36
  load 'tasks/phonelib_tasks.rake'
@@ -13,7 +13,6 @@
13
13
  limitations under the License.
14
14
 
15
15
  @author: Shaopeng Jia
16
- @author: Lara Rennie
17
16
 
18
17
  Metadata on Phone Number Plan and formatting rules
19
18
  Note: Territories are in alphabetical order by their IDs, which are based on ISO 3166-1
@@ -309,6 +308,7 @@
309
308
  <nationalNumberPattern>
310
309
  8(?:
311
310
  00|
311
+ 44|
312
312
  55|
313
313
  66|
314
314
  77|
@@ -383,6 +383,7 @@
383
383
  <nationalNumberPattern>
384
384
  8(?:
385
385
  00|
386
+ 44|
386
387
  55|
387
388
  66|
388
389
  77|
@@ -938,11 +939,6 @@
938
939
  <format>$1</format>
939
940
  <intlFormat>NA</intlFormat>
940
941
  </numberFormat>
941
- <numberFormat pattern="(\d{2})" nationalPrefixFormattingRule="$NP$FG">
942
- <leadingDigits>0</leadingDigits>
943
- <format>$1</format>
944
- <intlFormat>NA</intlFormat>
945
- </numberFormat>
946
942
  </availableFormats>
947
943
  <generalDesc>
948
944
  <nationalNumberPattern>
@@ -1130,6 +1126,7 @@
1130
1126
  <nationalNumberPattern>
1131
1127
  8(?:
1132
1128
  00|
1129
+ 44|
1133
1130
  55|
1134
1131
  66|
1135
1132
  77|
@@ -1466,10 +1463,11 @@
1466
1463
  [0-2]\d|
1467
1464
  3[0-57-9]|
1468
1465
  4[47-9]|
1469
- 5[0-35-9]|
1466
+ 5[0-25-9]|
1470
1467
  6[6-9]|
1471
- [79][07-9]|
1472
- 8[17-9]
1468
+ 7[0457-9]|
1469
+ 8[17-9]|
1470
+ 9[07-9]
1473
1471
  )\d{6}
1474
1472
  </nationalNumberPattern>
1475
1473
  <possibleNumberPattern>\d{9}</possibleNumberPattern>
@@ -1859,6 +1857,7 @@
1859
1857
  <nationalNumberPattern>
1860
1858
  8(?:
1861
1859
  00|
1860
+ 44|
1862
1861
  55|
1863
1862
  66|
1864
1863
  77|
@@ -2043,7 +2042,7 @@
2043
2042
  3|
2044
2043
  4\d
2045
2044
  )
2046
- )|
2045
+ )
2047
2046
  )\d{3}|
2048
2047
  4(?:
2049
2048
  0(?:
@@ -2303,7 +2302,7 @@
2303
2302
  <numberFormat pattern="([15-8]\d)(\d{2})(\d{2})(\d{2})">
2304
2303
  <leadingDigits>
2305
2304
  [156]|
2306
- 7[0178]|
2305
+ 7[018]|
2307
2306
  8(?:
2308
2307
  0[1-9]|
2309
2308
  [1-79]
@@ -2326,21 +2325,17 @@
2326
2325
  <possibleNumberPattern>\d{8,9}</possibleNumberPattern>
2327
2326
  </generalDesc>
2328
2327
  <fixedLine>
2329
- <!-- Note that 80 is a valid area code, so we explicitly check for this case that the third
2330
- digit begins with 1-9 -->
2328
+ <!-- According to the published Excel document the third digit must be 1-9. -->
2331
2329
  <nationalNumberPattern>
2332
2330
  (?:
2333
2331
  1[0-69]|
2334
- [23][2-8]|
2335
2332
  [49][23]|
2336
2333
  5\d|
2337
2334
  6[013-57-9]|
2338
- 71
2339
- )\d{6}|
2340
- 8(?:
2341
- 0[1-9]|
2342
- [1-79]\d
2343
- )\d{5}
2335
+ 71|
2336
+ 8[0-79]
2337
+ )[1-9]\d{5}|
2338
+ [23][2-8]\d{6}
2344
2339
  </nationalNumberPattern>
2345
2340
  <possibleNumberPattern>\d{8}</possibleNumberPattern>
2346
2341
  <exampleNumber>12345678</exampleNumber>
@@ -2365,9 +2360,9 @@
2365
2360
  <premiumRate>
2366
2361
  <nationalNumberPattern>
2367
2362
  (?:
2368
- 90|
2369
- 7[07]
2370
- )\d{6}
2363
+ 70[2-7]|
2364
+ 90\d
2365
+ )\d{5}
2371
2366
  </nationalNumberPattern>
2372
2367
  <possibleNumberPattern>\d{8}</possibleNumberPattern>
2373
2368
  <exampleNumber>90123456</exampleNumber>
@@ -2398,11 +2393,6 @@
2398
2393
  <possibleNumberPattern>\d{8}</possibleNumberPattern>
2399
2394
  </generalDesc>
2400
2395
  <fixedLine>
2401
- <!-- The prefix 50 48 has been added based on numbers found online, while 40 49 has been
2402
- deleted since we haven't found any numbers with this prefix and it is not mentioned in
2403
- the Onatel document.
2404
- IMPORTANT: Note that the ITU documents of Mar/Apr 2013 seem to have major errors in the
2405
- fixed-line table, so we have not changed our patterns based on these. -->
2406
2396
  <nationalNumberPattern>
2407
2397
  (?:
2408
2398
  20(?:
@@ -2411,11 +2401,14 @@
2411
2401
  9[016-9]
2412
2402
  )|
2413
2403
  40(?:
2414
- 4[56]|
2404
+ 4[569]|
2415
2405
  5[4-6]|
2416
2406
  7[0179]
2417
2407
  )|
2418
- 50[34]\d
2408
+ 50(?:
2409
+ [34]\d|
2410
+ 50
2411
+ )
2419
2412
  )\d{4}
2420
2413
  </nationalNumberPattern>
2421
2414
  <exampleNumber>20491234</exampleNumber>
@@ -2423,9 +2416,9 @@
2423
2416
  <mobile>
2424
2417
  <nationalNumberPattern>
2425
2418
  6(?:
2426
- [0-24-6]\d|
2427
- 8[0-5]|
2428
- 3[0-3]|
2419
+ [0-24-68]\d|
2420
+ 3[0-7]|
2421
+ 70
2429
2422
  )\d{5}|
2430
2423
  7\d{7}
2431
2424
  </nationalNumberPattern>
@@ -2554,7 +2547,6 @@
2554
2547
 
2555
2548
  <!-- Bahrain -->
2556
2549
  <!-- http://www.itu.int/oth/T0202000011/en -->
2557
- <!-- http://www.tra.org.bh/en/pdf/National_Numbering_Plan_2.pdf -->
2558
2550
  <!-- http://www.tra.org.bh/en/marketNumbering.aspx -->
2559
2551
  <!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_Bahrain -->
2560
2552
  <territory id="BH" countryCode="973" internationalPrefix="00" mobileNumberPortableRegion="true">
@@ -2567,11 +2559,12 @@
2567
2559
  <nationalNumberPattern>[136-9]\d{7}</nationalNumberPattern>
2568
2560
  <possibleNumberPattern>\d{8}</possibleNumberPattern>
2569
2561
  </generalDesc>
2570
- <!-- Universal Service numbers are under both Mobile and Fixed-Line, as they can be assigned
2571
- to either. -->
2562
+ <!-- Some ranges were previously described as "universal", but in subsequent versions of the
2563
+ ITU doc they have been specified to be mobile or fixed-line. We follow the ITU
2564
+ designations, even though some publications still refer to them as universal. -->
2572
2565
  <!-- According to http://en.wikipedia.org/wiki/Telephone_numbers_in_Bahrain, the ranges
2573
- "6966-6969, 6996, 6999" are assigned to Rapid. However this contradicts our ranges of
2574
- "6966, 6969, 6996-6999". TODO: Investigate this further. -->
2566
+ "6966-6969, 6996, 6999" are assigned to Rapid. However this contradicts the ITU doc
2567
+ which lists "6966, 6969, 6996, 6999". We follow ITU here. -->
2575
2568
  <fixedLine>
2576
2569
  <nationalNumberPattern>
2577
2570
  (?:
@@ -2582,16 +2575,14 @@
2582
2575
  )\d|
2583
2576
  6(?:
2584
2577
  1[16]\d|
2578
+ 500|
2585
2579
  6(?:
2586
2580
  0\d|
2587
2581
  3[12]|
2588
2582
  44|
2589
2583
  88
2590
2584
  )|
2591
- 9(?:
2592
- 6[69]|
2593
- 9[6-9]
2594
- )
2585
+ 9[69][69]
2595
2586
  )|
2596
2587
  7(?:
2597
2588
  7\d{2}|
@@ -2601,41 +2592,27 @@
2601
2592
  </nationalNumberPattern>
2602
2593
  <exampleNumber>17001234</exampleNumber>
2603
2594
  </fixedLine>
2604
- <!-- Previously 6644 was assigned to Universal Service, along with 6111, 6160, 6500, 6600,
2605
- 6688, 6969, 6996, 6999, and 77. These were put under both Mobile and Fixed-Line, as they
2606
- could be assigned to either. However, in the new document these are assigned to
2607
- Fixed-Line only (with the exception of 6644 which was removed). For now we are keeping
2608
- these number in both sections.
2609
- Note also that 31 is not listed in the ITU document and could probably be removed.
2610
- TODO: Check above ranges and move/remove ranges where necessary.-->
2595
+ <!-- 31 is assigned to Royal Court, as per documents on Bahrain's own telecom site, even
2596
+ though it is omitted from the ITU document. -->
2611
2597
  <mobile>
2612
2598
  <nationalNumberPattern>
2613
2599
  (?:
2614
2600
  3(?:
2615
2601
  [1-4679]\d|
2616
2602
  5[0135]|
2617
- 8[348]
2603
+ 8[0-48]
2618
2604
  )\d|
2619
2605
  6(?:
2620
- 1[16]\d|
2621
2606
  3(?:
2622
2607
  00|
2623
2608
  33|
2624
2609
  6[16]
2625
2610
  )|
2626
- 500|
2627
2611
  6(?:
2628
- [069]\d|
2629
- 3[03-9]|
2630
- 44|
2631
- 88
2632
- )|
2633
- 9(?:
2634
- 6[69]|
2635
- 9[6-9]
2612
+ [69]\d|
2613
+ 3[03-9]
2636
2614
  )
2637
- )|
2638
- 77\d{2}
2615
+ )
2639
2616
  )\d{4}
2640
2617
  </nationalNumberPattern>
2641
2618
  <exampleNumber>36001234</exampleNumber>
@@ -2843,6 +2820,7 @@
2843
2820
  <nationalNumberPattern>
2844
2821
  8(?:
2845
2822
  00|
2823
+ 44|
2846
2824
  55|
2847
2825
  66|
2848
2826
  77|
@@ -2956,7 +2934,7 @@
2956
2934
  <nationalNumberPattern>
2957
2935
  (?:
2958
2936
  318[023]|
2959
- 416[0239]|
2937
+ 416[023]|
2960
2938
  7(?:
2961
2939
  1[578]|
2962
2940
  50
@@ -2968,13 +2946,14 @@
2968
2946
  <mobile>
2969
2947
  <nationalNumberPattern>
2970
2948
  (?:
2971
- 318[1456]|
2972
- 416[15-8]|
2949
+ 318[14-68]|
2950
+ 416[15-9]|
2973
2951
  7(?:
2974
2952
  0[01]|
2953
+ 7[07]|
2975
2954
  [89]\d
2976
2955
  )\d
2977
- )\d{3}|
2956
+ )\d{3}
2978
2957
  </nationalNumberPattern>
2979
2958
  <exampleNumber>3181234</exampleNumber>
2980
2959
  </mobile>
@@ -3079,34 +3058,24 @@
3079
3058
  </nationalNumberPattern>
3080
3059
  <exampleNumber>1123456789</exampleNumber>
3081
3060
  </fixedLine>
3082
- <!-- Also includes the new 11-digit mobile numbers that are being rolled out since 2012,
3083
- which are added at the end. -->
3084
3061
  <mobile>
3085
- <nationalNumberPattern>
3086
- 1(?:
3087
- 1(?:
3088
- 5[347]|
3089
- [6-9]\d|
3090
- )|
3091
- [2-9][6-9]\d
3092
- )\d{6}|
3062
+ <!-- Since 2012, Brazil has been migrating from 10 to 11 digits by inserting a 9 before the
3063
+ last 8 digits. The following pattern is divided into 3 sections: ranges for which the
3064
+ migration has been completed, ranges which are in transition, and ranges which are
3065
+ still in the old format. (Ranges which were supposed to have been deprecated in
3066
+ Oct. 2013 are still working as of Jan. 2014.) -->
3067
+ <nationalNumberPattern>
3068
+ 1[1-9]9\d{8}|
3069
+ 2[12478]9?[6-9]\d{7}|
3093
3070
  (?:
3094
- 2[12478]|
3095
3071
  3[1-578]|
3096
3072
  [4689][1-9]|
3097
3073
  5[13-5]|
3098
3074
  7[13-579]
3099
- )[6-9]\d{7}|
3100
- (?:
3101
- 1(?:
3102
- 19\d|
3103
- [2-9]9[6-9]
3104
- )|
3105
- 2[12478]9[6-9]
3106
- )\d{7}
3075
+ )[6-9]\d{7}
3107
3076
  </nationalNumberPattern>
3108
3077
  <possibleNumberPattern>\d{10,11}</possibleNumberPattern>
3109
- <exampleNumber>1161234567</exampleNumber>
3078
+ <exampleNumber>11961234567</exampleNumber>
3110
3079
  </mobile>
3111
3080
  <tollFree>
3112
3081
  <nationalNumberPattern>800\d{6,7}</nationalNumberPattern>
@@ -3192,6 +3161,7 @@
3192
3161
  242300\d{4}|
3193
3162
  8(?:
3194
3163
  00|
3164
+ 44|
3195
3165
  55|
3196
3166
  66|
3197
3167
  77|
@@ -3362,9 +3332,93 @@
3362
3332
  nationalPrefix="8" mobileNumberPortableRegion="true">
3363
3333
  <availableFormats>
3364
3334
  <numberFormat nationalPrefixFormattingRule="$NP 0$FG"
3365
- pattern="([1-4]\d)(\d{3})(\d{4})">
3366
- <leadingDigits>[1-4]</leadingDigits>
3367
- <format>$1 $2 $3</format>
3335
+ pattern="(\d{2})(\d{3})(\d{2})(\d{2})">
3336
+ <leadingDigits>
3337
+ 17[0-3589]|
3338
+ 2[4-9]|
3339
+ [34]
3340
+ </leadingDigits>
3341
+ <leadingDigits>
3342
+ 17(?:
3343
+ [02358]|
3344
+ 1[0-2]|
3345
+ 9[0189]
3346
+ )|
3347
+ 2[4-9]|
3348
+ [34]
3349
+ </leadingDigits>
3350
+ <format>$1 $2-$3-$4</format>
3351
+ </numberFormat>
3352
+ <numberFormat nationalPrefixFormattingRule="$NP 0$FG"
3353
+ pattern="(\d{3})(\d{2})(\d{2})(\d{2})">
3354
+ <leadingDigits>
3355
+ 1(?:
3356
+ 5[24]|
3357
+ 6[235]|
3358
+ 7[467]
3359
+ )|
3360
+ 2(?:
3361
+ 1[246]|
3362
+ 2[25]|
3363
+ 3[26]
3364
+ )
3365
+ </leadingDigits>
3366
+ <leadingDigits>
3367
+ 1(?:
3368
+ 5[24]|
3369
+ 6(?:
3370
+ 2|
3371
+ 3[04-9]|
3372
+ 5[0346-9]
3373
+ )|
3374
+ 7(?:
3375
+ [46]|
3376
+ 7[37-9]
3377
+ )
3378
+ )|
3379
+ 2(?:
3380
+ 1[246]|
3381
+ 2[25]|
3382
+ 3[26]
3383
+ )
3384
+ </leadingDigits>
3385
+ <format>$1 $2-$3-$4</format>
3386
+ </numberFormat>
3387
+ <numberFormat nationalPrefixFormattingRule="$NP 0$FG"
3388
+ pattern="(\d{4})(\d{2})(\d{3})">
3389
+ <leadingDigits>
3390
+ 1(?:
3391
+ 5[169]|
3392
+ 6[3-5]|
3393
+ 7[179]
3394
+ )|
3395
+ 2(?:
3396
+ 1[35]|
3397
+ 2[34]|
3398
+ 3[3-5]
3399
+ )
3400
+ </leadingDigits>
3401
+ <leadingDigits>
3402
+ 1(?:
3403
+ 5[169]|
3404
+ 6(?:
3405
+ 3[1-3]|
3406
+ 4|
3407
+ 5[125]
3408
+ )|
3409
+ 7(?:
3410
+ 1[3-9]|
3411
+ 7[0-24-6]|
3412
+ 9[2-7]
3413
+ )
3414
+ )|
3415
+ 2(?:
3416
+ 1[35]|
3417
+ 2[34]|
3418
+ 3[3-5]
3419
+ )
3420
+ </leadingDigits>
3421
+ <format>$1 $2-$3</format>
3368
3422
  </numberFormat>
3369
3423
  <numberFormat nationalPrefixFormattingRule="$NP $FG"
3370
3424
  pattern="([89]\d{2})(\d{3})(\d{4})">
@@ -3392,8 +3446,8 @@
3392
3446
  <noInternationalDialling>
3393
3447
  <nationalNumberPattern>
3394
3448
  8(?:
3395
- [01]|
3396
- 20
3449
+ [013]|
3450
+ [12]0
3397
3451
  )\d{8}|
3398
3452
  902\d{7}
3399
3453
  </nationalNumberPattern>
@@ -3406,7 +3460,7 @@
3406
3460
  1(?:
3407
3461
  5(?:
3408
3462
  1[1-5]|
3409
- 2\d|
3463
+ [24]\d|
3410
3464
  6[2-4]|
3411
3465
  9[1-7]
3412
3466
  )|
@@ -3427,10 +3481,10 @@
3427
3481
  4[0-8]
3428
3482
  )|
3429
3483
  3(?:
3430
- 2\d|
3484
+ [26]\d|
3431
3485
  3[02-79]|
3432
3486
  4[024-7]|
3433
- 5[0-7]
3487
+ 5[03-7]
3434
3488
  )
3435
3489
  )
3436
3490
  )\d{5}
@@ -3634,6 +3688,8 @@
3634
3688
  <nationalNumberPattern>
3635
3689
  8(?:
3636
3690
  00|
3691
+ 44|
3692
+ 55|
3637
3693
  66|
3638
3694
  77|
3639
3695
  88
@@ -3948,7 +4004,7 @@
3948
4004
  </numberFormat>
3949
4005
  </availableFormats>
3950
4006
  <generalDesc>
3951
- <nationalNumberPattern>[02-6]\d{7}</nationalNumberPattern>
4007
+ <nationalNumberPattern>[02-7]\d{7}</nationalNumberPattern>
3952
4008
  <possibleNumberPattern>\d{8}</possibleNumberPattern>
3953
4009
  </generalDesc>
3954
4010
  <fixedLine>
@@ -3973,13 +4029,17 @@
3973
4029
  </fixedLine>
3974
4030
  <mobile>
3975
4031
  <!-- Added the prefixes 4[0-2] (Moov), 5[5-9] & 6[15] because SMS messages have been
3976
- successfully delivered. Supported by numbers found on the internet. -->
3977
- <nationalNumberPattern>
4032
+ successfully delivered. Supported by numbers found on the internet. The prefix 56 was
4033
+ assigned to MTN in July 2013:
4034
+ http://www.atci.ci/images/stories/pdf/decisions-dg/decision_002.pdf
4035
+ 50 has been removed since Warid seems to have stopped operation in Côte d'Ivoire. -->
4036
+ <nationalNumberPattern>
3978
4037
  (?:
3979
4038
  0[1-9]|
3980
4039
  4[0-24-9]|
3981
- 5[05-9]|
3982
- 6[015679]
4040
+ 5[4-9]|
4041
+ 6[015-79]|
4042
+ 77
3983
4043
  )\d{6}
3984
4044
  </nationalNumberPattern>
3985
4045
  <exampleNumber>01234567</exampleNumber>
@@ -4235,10 +4295,11 @@
4235
4295
  <leadingDigits>[48]00</leadingDigits>
4236
4296
  <format>$1 $2 $3</format>
4237
4297
  </numberFormat>
4238
- <!-- 100xx and 95xxx(x) numbers. Without this rule, the numbers will be formatted
4239
- incorrectly by the AsYouTypeFormatter because they overlap with area codes 010, 095x.
4240
- Note although ITU says the format is more like 95 xxx, in reality no space is used
4241
- when writing such numbers in China -->
4298
+ <!-- 100xx and 95xxx(x) short numbers without area codes. Without this rule, these short
4299
+ numbers will be formatted incorrectly by the AsYouTypeFormatter because they overlap
4300
+ with area codes 010, 095x. These numbers are defined in ShortNumberMetadata.xml but
4301
+ must be accounted for here. Note although ITU says the format is more like 95 xxx, in
4302
+ reality no space is used when writing such numbers in China. -->
4242
4303
  <numberFormat pattern="(\d{5,6})">
4243
4304
  <leadingDigits>
4244
4305
  100|
@@ -4247,7 +4308,8 @@
4247
4308
  <format>$1</format>
4248
4309
  <intlFormat>NA</intlFormat>
4249
4310
  </numberFormat>
4250
- <!-- 100xx and 95xxx(x) numbers with area codes. -->
4311
+ <!-- 100xx and 95xxx(x) numbers with area codes (these numbers without an area code are now
4312
+ dealt with by ShortNumberMetadata.xml). -->
4251
4313
  <numberFormat nationalPrefixFormattingRule="$NP$FG" pattern="(\d{2})(\d{5,6})"
4252
4314
  carrierCodeFormattingRule="$CC $FG">
4253
4315
  <leadingDigits>
@@ -4436,33 +4498,22 @@
4436
4498
  </availableFormats>
4437
4499
  <generalDesc>
4438
4500
  <nationalNumberPattern>
4439
- 1(?:
4440
- 00\d{2}|
4441
- \d{6,11}
4442
- )|
4443
- [2-7]\d{6,11}|
4501
+ [1-7]\d{6,11}|
4444
4502
  8[0-357-9]\d{6,9}|
4445
- 9(?:
4446
- 5\d{3,4}|
4447
- \d{9}
4448
- )
4503
+ 9\d{9}
4449
4504
  </nationalNumberPattern>
4450
4505
  <possibleNumberPattern>\d{4,12}</possibleNumberPattern>
4451
4506
  </generalDesc>
4452
4507
  <noInternationalDialling>
4453
- <!-- 100xx and 95xxx(x) numbers have been verified to be unreachable from overseas by
4454
- placing actual calls. -->
4455
4508
  <nationalNumberPattern>
4456
- 100\d{2}|
4457
4509
  (?:
4458
4510
  4|
4459
4511
  (?:
4460
4512
  10
4461
4513
  )?8
4462
- )00\d{7}|
4463
- 95\d{3,4}
4514
+ )00\d{7}
4464
4515
  </nationalNumberPattern>
4465
- <possibleNumberPattern>\d{5,12}</possibleNumberPattern>
4516
+ <possibleNumberPattern>\d{10,12}</possibleNumberPattern>
4466
4517
  <exampleNumber>4001234567</exampleNumber>
4467
4518
  </noInternationalDialling>
4468
4519
  <fixedLine>
@@ -4589,9 +4640,9 @@
4589
4640
  <mobile>
4590
4641
  <nationalNumberPattern>
4591
4642
  1(?:
4592
- 3\d|
4643
+ [38]\d|
4593
4644
  4[57]|
4594
- [58][0-35-9]
4645
+ 5[0-35-9]
4595
4646
  )\d{8}
4596
4647
  </nationalNumberPattern>
4597
4648
  <possibleNumberPattern>\d{11}</possibleNumberPattern>
@@ -4616,36 +4667,18 @@
4616
4667
  <exampleNumber>16812345</exampleNumber>
4617
4668
  </premiumRate>
4618
4669
  <sharedCost>
4619
- <!-- 95xxx(x) numbers are covered by the ITU doc, but the following doc contains more info:
4620
- http://baike.baidu.com/view/3269670.htm. They can be dialed nationwide and are always
4621
- routed to the local provider. Note they can also be used with area codes when one
4622
- specifically wants to reach an operator in a different region. That case is more
4623
- like fixed-line numbers and is covered under the fixed-line pattern. -->
4624
- <nationalNumberPattern>
4625
- 400\d{7}|
4626
- 95\d{3,4}
4627
- </nationalNumberPattern>
4628
- <possibleNumberPattern>\d{5,10}</possibleNumberPattern>
4670
+ <nationalNumberPattern>400\d{7}</nationalNumberPattern>
4671
+ <possibleNumberPattern>\d{10}</possibleNumberPattern>
4629
4672
  <exampleNumber>4001234567</exampleNumber>
4630
4673
  </sharedCost>
4631
- <uan>
4632
- <!-- 100xx numbers are mainly used for carrier services. They can be dialed nationwide and
4633
- are always routed to the local provider. They are free if called from a phone by the
4634
- same carrier, or charged at local rate if called from a phone by a different carrier.
4635
- Note they can also be used with area codes when one specifically wants to reach an
4636
- operator in a different region. That case is more like fixed-line numbers and is
4637
- covered under the fixed-line pattern.
4638
- -->
4639
- <nationalNumberPattern>100\d{2}</nationalNumberPattern>
4640
- <possibleNumberPattern>\d{5}</possibleNumberPattern>
4641
- <exampleNumber>10000</exampleNumber>
4642
- </uan>
4643
4674
  </territory>
4644
4675
 
4645
4676
  <!-- Colombia -->
4646
4677
  <!-- http://www.itu.int/oth/T020200002C/en -->
4647
4678
  <!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_Colombia -->
4648
- <territory id="CO" countryCode="57" internationalPrefix="00[579]|#555|#999"
4679
+ <!-- Extra international dialling prefixes from www.claro.com.co and www.tigo.com.co. -->
4680
+ <!-- 05 and 005 are for Orbitel: co.orbitel.com -->
4681
+ <territory id="CO" countryCode="57" internationalPrefix="00(?:4(?:[14]4|56)|[579])"
4649
4682
  nationalPrefix="0" nationalPrefixForParsing="0([3579]|4(?:44|56))?"
4650
4683
  mobileNumberPortableRegion="true">
4651
4684
  <availableFormats>
@@ -4711,12 +4744,11 @@
4711
4744
  <exampleNumber>12345678</exampleNumber>
4712
4745
  </fixedLine>
4713
4746
  <mobile>
4714
- <!-- Virgin Mobile Colombia have reported that they are now using the 319 prefix. -->
4715
4747
  <nationalNumberPattern>
4716
4748
  3(?:
4717
- 0[0-24]|
4749
+ 0[0-5]|
4718
4750
  1\d|
4719
- 2[01]
4751
+ [25][01]
4720
4752
  )\d{7}
4721
4753
  </nationalNumberPattern>
4722
4754
  <possibleNumberPattern>\d{10}</possibleNumberPattern>
@@ -4742,7 +4774,7 @@
4742
4774
  <!-- Costa Rica -->
4743
4775
  <!-- http://www.itu.int/oth/T0202000030/en -->
4744
4776
  <territory id="CR" countryCode="506" internationalPrefix="00"
4745
- nationalPrefixForParsing="(19(?:0[0-2468]|19|20|66|77))"
4777
+ nationalPrefixForParsing="(19(?:0[01468]|19|20|66|77))"
4746
4778
  carrierCodeFormattingRule="$CC $FG">
4747
4779
  <availableFormats>
4748
4780
  <numberFormat pattern="(\d{4})(\d{4})">
@@ -4772,7 +4804,11 @@
4772
4804
  0[0-4]|
4773
4805
  7[01]
4774
4806
  )\d{5}|
4775
- [67][0-2]\d{6}|
4807
+ 6(?:
4808
+ [0-2]\d|
4809
+ 30
4810
+ )\d{5}|
4811
+ 7[0-2]\d{6}|
4776
4812
  8[3-9]\d{6}
4777
4813
  </nationalNumberPattern>
4778
4814
  <possibleNumberPattern>\d{8}</possibleNumberPattern>
@@ -4797,10 +4833,7 @@
4797
4833
  0(?:
4798
4834
  [04]0\d{4}|
4799
4835
  10[0-3]\d{3}|
4800
- 2(?:
4801
- 00\d|
4802
- 900
4803
- )\d{2}|
4836
+ 2900\d{2}|
4804
4837
  3[01]\d{4}|
4805
4838
  5\d{5}|
4806
4839
  70[01]\d{3}|
@@ -4928,10 +4961,11 @@
4928
4961
  [48]\d{2}|
4929
4962
  50\d|
4930
4963
  7(?:
4931
- 2[0-2]|
4964
+ 2[0-24]|
4932
4965
  [34]\d|
4933
4966
  6[35-7]|
4934
- 77
4967
+ 77|
4968
+ 8[7-9]
4935
4969
  )
4936
4970
  )\d{4}
4937
4971
  </nationalNumberPattern>
@@ -4945,7 +4979,7 @@
4945
4979
  3[01]
4946
4980
  )|
4947
4981
  6(?:
4948
- [1679]\d|
4982
+ [16-9]\d|
4949
4983
  3[01]
4950
4984
  )
4951
4985
  )\d{4}
@@ -5626,6 +5660,7 @@
5626
5660
  <nationalNumberPattern>
5627
5661
  8(?:
5628
5662
  00|
5663
+ 44|
5629
5664
  55|
5630
5665
  66|
5631
5666
  77|
@@ -5728,6 +5763,7 @@
5728
5763
  <nationalNumberPattern>
5729
5764
  8(?:
5730
5765
  00|
5766
+ 44|
5731
5767
  55|
5732
5768
  66|
5733
5769
  77|
@@ -5884,8 +5920,8 @@
5884
5920
  <nationalNumberPattern>
5885
5921
  9(?:
5886
5922
  39|
5887
- [4-6][89]|
5888
- 7[7-9]|
5923
+ [45][89]|
5924
+ [67][7-9]|
5889
5925
  [89]\d
5890
5926
  )\d{6}
5891
5927
  </nationalNumberPattern>
@@ -6086,10 +6122,7 @@
6086
6122
  </numberFormat>
6087
6123
  <numberFormat pattern="(\d{2})(\d{6,7})">
6088
6124
  <leadingDigits>
6089
- 1(?:
6090
- 3|
6091
- 5[23]
6092
- )|
6125
+ 1[35]|
6093
6126
  [4-6]|
6094
6127
  [89][2-9]
6095
6128
  </leadingDigits>
@@ -6108,7 +6141,7 @@
6108
6141
  <fixedLine>
6109
6142
  <!-- Short numbers used for businesses (starting with 16 or 19) are covered here. Note also
6110
6143
  that the plan says numbers starting with 15 should be followed by seven digit
6111
- subscriber numbers, but all numbers we have found online are in fact six digit.
6144
+ subscriber numbers, but some numbers we have found online are in fact six digit.
6112
6145
  Subscriber numbers starting with 5 are also permitted for the area codes 040, with 5, 6
6113
6146
  and 7 for the area code 050, with 5 and 7 for 082, with 6 for 084, with 7 for 086 and
6114
6147
  092 and with 5 and 6 for 96. -->
@@ -6116,7 +6149,10 @@
6116
6149
  (?:
6117
6150
  1(
6118
6151
  3[23]\d|
6119
- 5[23]
6152
+ 5(?:
6153
+ [23]|
6154
+ 9\d
6155
+ )
6120
6156
  )|
6121
6157
  2[2-4]\d{2}|
6122
6158
  3\d{2}|
@@ -6195,15 +6231,12 @@
6195
6231
  <!-- The following sections are copied verbatim from Morocco to allow these non-geographical
6196
6232
  numbers to be recognized as available from within Western Sahara. -->
6197
6233
  <mobile>
6198
- <!-- Prefixes 60[1-578], 62[01457-9], 63[04-8] and 68[01] are from numbers found online,
6199
- bug-reports, and information provided directly by the carriers. -->
6200
6234
  <nationalNumberPattern>
6201
6235
  6(?:
6202
6236
  0[0-8]|
6203
- [124-7]\d|
6204
- 3[03-8]|
6237
+ [12-7]\d|
6205
6238
  8[01]|
6206
- 99
6239
+ 9[27-9]
6207
6240
  )\d{6}
6208
6241
  </nationalNumberPattern>
6209
6242
  <exampleNumber>650123456</exampleNumber>
@@ -6519,8 +6552,8 @@
6519
6552
  </numberFormat>
6520
6553
  <numberFormat pattern="(\d{2})(\d{4,10})">
6521
6554
  <leadingDigits>
6522
- 2[09]|
6523
6555
  [14]|
6556
+ 2[09]|
6524
6557
  50|
6525
6558
  7[135]
6526
6559
  </leadingDigits>
@@ -6666,12 +6699,12 @@
6666
6699
  <exampleNumber>3212345</exampleNumber>
6667
6700
  </fixedLine>
6668
6701
  <mobile>
6669
- <!-- Adding 7[67], 8[367], and 9[034678] from numbers found online and numbers where SMSs
6702
+ <!-- Adding 7[5-8], 8[0367], and 9[034678] from numbers found online and numbers where SMSs
6670
6703
  have been received from. Adding 9[15] and 84 from Vodafone Fiji IR21. -->
6671
6704
  <nationalNumberPattern>
6672
6705
  (?:
6673
- 7[0-467]|
6674
- 8[3467]|
6706
+ 7[0-8]|
6707
+ 8[03467]|
6675
6708
  9\d
6676
6709
  )\d{5}
6677
6710
  </nationalNumberPattern>
@@ -7533,6 +7566,7 @@
7533
7566
  <nationalNumberPattern>
7534
7567
  8(?:
7535
7568
  00|
7569
+ 44|
7536
7570
  55|
7537
7571
  66|
7538
7572
  77|
@@ -7888,8 +7922,15 @@
7888
7922
  </territory>
7889
7923
 
7890
7924
  <!-- Gibraltar -->
7925
+ <!-- http://www.gra.gi/index.php?topic=numbering+plan&section=legislation&site=communications -->
7891
7926
  <territory id="GI" countryCode="350" internationalPrefix="00">
7892
- <!-- No formatting rules - numbers are always formatted as a block. -->
7927
+ <availableFormats>
7928
+ <!-- Most numbers are formatted as a block -->
7929
+ <numberFormat pattern="(\d{3})(\d{5})">
7930
+ <leadingDigits>2</leadingDigits>
7931
+ <format>$1 $2</format>
7932
+ </numberFormat>
7933
+ </availableFormats>
7893
7934
  <generalDesc>
7894
7935
  <nationalNumberPattern>[2568]\d{7}</nationalNumberPattern>
7895
7936
  <possibleNumberPattern>\d{8}</possibleNumberPattern>
@@ -7898,8 +7939,14 @@
7898
7939
  <nationalNumberPattern>
7899
7940
  2(?:
7900
7941
  00\d|
7901
- 16[0-7]|
7902
- 22[2457]
7942
+ 1(?:
7943
+ 6[24-7]|
7944
+ 9\d
7945
+ )|
7946
+ 2(?:
7947
+ 00|
7948
+ 2[2457]
7949
+ )
7903
7950
  )\d{4}
7904
7951
  </nationalNumberPattern>
7905
7952
  <exampleNumber>20012345</exampleNumber>
@@ -7907,8 +7954,8 @@
7907
7954
  <mobile>
7908
7955
  <nationalNumberPattern>
7909
7956
  (?:
7910
- 5[4-8]|
7911
- 60
7957
+ 5[46-8]|
7958
+ 62
7912
7959
  )\d{6}
7913
7960
  </nationalNumberPattern>
7914
7961
  <exampleNumber>57123456</exampleNumber>
@@ -8008,7 +8055,7 @@
8008
8055
  <mobile>
8009
8056
  <nationalNumberPattern>
8010
8057
  (?:
8011
- 2[0-2]|
8058
+ 2[0-6]|
8012
8059
  [3679]\d
8013
8060
  )\d{5}
8014
8061
  </nationalNumberPattern>
@@ -8049,15 +8096,9 @@
8049
8096
  <exampleNumber>30241234</exampleNumber>
8050
8097
  </fixedLine>
8051
8098
  <mobile>
8052
- <!-- Limited to the new 9-digit mobile ranges, which came into effect March 29th 2013. -->
8053
- <nationalNumberPattern>
8054
- 6(?:
8055
- [03]1|
8056
- 2[128]|
8057
- 5[57]|
8058
- 6[2469]
8059
- )\d{6}
8060
- </nationalNumberPattern>
8099
+ <!-- Prefixes here match those assigned to carriers, as per the ITU communication Jan 23rd
8100
+ 2013. -->
8101
+ <nationalNumberPattern>6[02356]\d{7}</nationalNumberPattern>
8061
8102
  <possibleNumberPattern>\d{9}</possibleNumberPattern>
8062
8103
  <exampleNumber>601123456</exampleNumber>
8063
8104
  </mobile>
@@ -8201,20 +8242,21 @@
8201
8242
  2(?:
8202
8243
  1\d{2}|
8203
8244
  2(?:
8245
+ 2[1-46-9]|
8204
8246
  3[1-8]|
8205
8247
  4[1-7]|
8206
8248
  5[1-4]|
8207
8249
  6[1-8]|
8208
8250
  7[1-5]|
8209
- [289][1-9]
8251
+ [89][1-9]
8210
8252
  )|
8211
8253
  3(?:
8212
8254
  1\d|
8213
8255
  2[1-57]|
8214
- 3[1-4]|
8215
- [45][1-3]|
8256
+ [35][1-3]|
8257
+ 4[13]|
8216
8258
  7[1-7]|
8217
- 8[1-6]|
8259
+ 8[124-6]|
8218
8260
  9[1-79]
8219
8261
  )|
8220
8262
  4(?:
@@ -8227,13 +8269,14 @@
8227
8269
  )|
8228
8270
  5(?:
8229
8271
  1\d|
8230
- [239][1-4]|
8272
+ [29][1-4]|
8273
+ 3[1-5]|
8231
8274
  4[124]|
8232
8275
  5[1-6]
8233
8276
  )|
8234
8277
  6(?:
8235
8278
  1\d|
8236
- 3[124]|
8279
+ 3[1245]|
8237
8280
  4[1-7]|
8238
8281
  5[13-9]|
8239
8282
  [269][1-6]|
@@ -8246,14 +8289,14 @@
8246
8289
  3[1-6]|
8247
8290
  4[1-7]|
8248
8291
  5[1-57]|
8249
- 6[134]|
8250
- 9[15-7]
8292
+ 6[135]|
8293
+ 9[125-7]
8251
8294
  )|
8252
8295
  8(?:
8253
8296
  1\d|
8254
8297
  2[1-5]|
8255
8298
  [34][1-4]|
8256
- 9[1-7]
8299
+ 9[1-57]
8257
8300
  )
8258
8301
  )\d{6}
8259
8302
  </nationalNumberPattern>
@@ -8448,6 +8491,7 @@
8448
8491
  <nationalNumberPattern>
8449
8492
  8(?:
8450
8493
  00|
8494
+ 44|
8451
8495
  55|
8452
8496
  66|
8453
8497
  77|
@@ -8678,7 +8722,7 @@
8678
8722
  <possibleNumberPattern>\d{8}</possibleNumberPattern>
8679
8723
  </generalDesc>
8680
8724
  <fixedLine>
8681
- <!-- Extra prefixes 227[01389], 228X and 2292 were added from numbers found online. -->
8725
+ <!-- Extra prefixes 227[01389], 228X, 2292 & 260X were added from numbers found online. -->
8682
8726
  <nationalNumberPattern>
8683
8727
  2(?:
8684
8728
  2(?:
@@ -8704,8 +8748,8 @@
8704
8748
  74
8705
8749
  )|
8706
8750
  6(?:
8751
+ [056]\d|
8707
8752
  4[0-378]|
8708
- [56]\d|
8709
8753
  [78][0-8]|
8710
8754
  9[01]
8711
8755
  )|
@@ -9626,7 +9670,6 @@
9626
9670
  </territory>
9627
9671
 
9628
9672
  <!-- India -->
9629
- <!-- http://www.dot.gov.in/numbering_plan/numberplanindex.htm -->
9630
9673
  <!-- http://www.itu.int/oth/T0202000063/en -->
9631
9674
  <!-- http://en.wikipedia.org/wiki/%2B91 -->
9632
9675
  <!-- http://www.coai.in/msccodes.php -->
@@ -9644,9 +9687,8 @@
9644
9687
  2[0579]|
9645
9688
  3[057-9]|
9646
9689
  4[0-389]|
9647
- 5[024-9]|
9648
9690
  6[0-35-9]|
9649
- 7|
9691
+ [57]|
9650
9692
  8[0-79]
9651
9693
  )|
9652
9694
  8(?:
@@ -9655,7 +9697,7 @@
9655
9697
  2[2356-9]|
9656
9698
  3[0-57-9]|
9657
9699
  [45]|
9658
- 6[0245789]|
9700
+ 6[02457-9]|
9659
9701
  7[1-69]|
9660
9702
  8[0124-9]|
9661
9703
  9[02-9]
@@ -9684,21 +9726,19 @@
9684
9726
  8[389]
9685
9727
  )|
9686
9728
  5(?:
9687
- 0|
9688
- [47]9|
9689
- [25]0|
9690
- 6[6-9]|
9691
- [89][7-9]
9729
+ [034678]|
9730
+ 2[03-9]|
9731
+ 5[017-9]|
9732
+ 9[7-9]
9692
9733
  )|
9693
9734
  6(?:
9694
9735
  0[027]|
9695
- 12|
9696
- 20|
9736
+ 1[0-257-9]|
9737
+ 2[0-4]|
9697
9738
  3[19]|
9698
- 5[45]|
9699
- 6[5-9]|
9700
- 7[679]|
9701
- 9[1-46-9]
9739
+ 5[4589]|
9740
+ [679]|
9741
+ 8[0-589]
9702
9742
  )|
9703
9743
  7(?:
9704
9744
  0[2-9]|
@@ -9865,8 +9905,8 @@
9865
9905
  <numberFormat pattern="(\d{4})(\d{3})(\d{3})">
9866
9906
  <leadingDigits>
9867
9907
  1(?:
9868
- [2-579]|
9869
- [68][1-9]
9908
+ [23579]|
9909
+ [468][1-9]
9870
9910
  )|
9871
9911
  [2-8]
9872
9912
  </leadingDigits>
@@ -9890,6 +9930,11 @@
9890
9930
  <leadingDigits>18[06]0</leadingDigits>
9891
9931
  <format>$1 $2 $3</format>
9892
9932
  </numberFormat>
9933
+ <numberFormat nationalPrefixFormattingRule="$FG"
9934
+ pattern="(140)(\d{3})(\d{4})">
9935
+ <leadingDigits>140</leadingDigits>
9936
+ <format>$1 $2 $3</format>
9937
+ </numberFormat>
9893
9938
  <!-- Televoting numbers. Formatting information is from
9894
9939
  http://www.bsnl.co.in/service/telev.htm -->
9895
9940
  <numberFormat nationalPrefixFormattingRule="$FG"
@@ -9925,7 +9970,7 @@
9925
9970
  [12]\d{9}
9926
9971
  )
9927
9972
  )
9928
- )
9973
+ )
9929
9974
  </nationalNumberPattern>
9930
9975
  <possibleNumberPattern>\d{8,13}</possibleNumberPattern>
9931
9976
  <exampleNumber>1800123456</exampleNumber>
@@ -10120,8 +10165,8 @@
10120
10165
  <!-- A couple of additional prefixes found neither on the wikipedia page nor in the MSC
10121
10166
  codes list, are added because SMS messages have been successfully sent to these
10122
10167
  numbers. It seems almost impossible to know for some of these numbers whether they are
10123
- land-line or mobile, since the ranges overlap. Extra prefixes added: 8299, 8309.
10124
- New prefixes were added based on the document provided from mobile carriers:
10168
+ land-line or mobile, since the ranges overlap. Extra prefixes added: 76[89]5, 8299,
10169
+ 8309. New prefixes were also added based on the document provided from mobile carriers:
10125
10170
  https://code.google.com/p/libphonenumber/issues/detail?id=260 -->
10126
10171
  <nationalNumberPattern>
10127
10172
  (?:
@@ -10146,21 +10191,19 @@
10146
10191
  8[389]
10147
10192
  )|
10148
10193
  5(?:
10149
- 0\d|
10150
- [47]9|
10151
- [25]0|
10152
- 6[6-9]|
10153
- [89][7-9]
10194
+ [034678]\d|
10195
+ 2[03-9]|
10196
+ 5[017-9]|
10197
+ 9[7-9]
10154
10198
  )|
10155
10199
  6(?:
10156
10200
  0[027]|
10157
- 12|
10158
- 20|
10201
+ 1[0-257-9]|
10202
+ 2[0-4]|
10159
10203
  3[19]|
10160
- 5[45]|
10161
- 6[5-9]|
10162
- 7[679]|
10163
- 9[1-46-9]
10204
+ 5[4589]|
10205
+ [679]\d|
10206
+ 8[0-589]
10164
10207
  )|
10165
10208
  7(?:
10166
10209
  0[2-9]|
@@ -10234,10 +10277,19 @@
10234
10277
  <possibleNumberPattern>\d{13}</possibleNumberPattern>
10235
10278
  <exampleNumber>1861123456789</exampleNumber>
10236
10279
  </premiumRate>
10237
- <uan>
10280
+ <sharedCost>
10281
+ <!-- While described as "universal numbers" in the numbering plan, evidence suggests
10282
+ that 1860 number are best described as shared cost. See "Call Local Service" in:
10283
+ http://www.tatadocomo.com/corporates/toll-free.aspx -->
10238
10284
  <nationalNumberPattern>1860\d{7}</nationalNumberPattern>
10239
10285
  <possibleNumberPattern>\d{11}</possibleNumberPattern>
10240
10286
  <exampleNumber>18603451234</exampleNumber>
10287
+ </sharedCost>
10288
+ <uan>
10289
+ <!-- Telemarketing numbers: http://en.wikipedia.org/wiki/Telephone_numbers_in_India -->
10290
+ <nationalNumberPattern>140\d{7}</nationalNumberPattern>
10291
+ <possibleNumberPattern>\d{10}</possibleNumberPattern>
10292
+ <exampleNumber>1409305260</exampleNumber>
10241
10293
  </uan>
10242
10294
  </territory>
10243
10295
 
@@ -10559,7 +10611,7 @@
10559
10611
  <mobile>
10560
10612
  <!-- TETRA = TErrestrial Trunked RAdio is included under mobile. -->
10561
10613
  <nationalNumberPattern>
10562
- 38[59]\d{6}|
10614
+ 38[589]\d{6}|
10563
10615
  (?:
10564
10616
  6(?:
10565
10617
  1[0-8]|
@@ -10584,6 +10636,9 @@
10584
10636
  <exampleNumber>6101234</exampleNumber>
10585
10637
  </mobile>
10586
10638
  <tollFree>
10639
+ <!-- The UIFN numbers mentioned in the Excel document are not yet included since no real
10640
+ numbers can be found online, and it is not clear what these are; the standard
10641
+ definition would have them under the +800 country code instead of Iceland. -->
10587
10642
  <nationalNumberPattern>800\d{4}</nationalNumberPattern>
10588
10643
  <possibleNumberPattern>\d{7}</possibleNumberPattern>
10589
10644
  <exampleNumber>8001234</exampleNumber>
@@ -10600,7 +10655,6 @@
10600
10655
  </voip>
10601
10656
  <voicemail>
10602
10657
  <nationalNumberPattern>
10603
- 388\d{6}|
10604
10658
  (?:
10605
10659
  6(?:
10606
10660
  2[0-8]|
@@ -10616,7 +10670,8 @@
10616
10670
  95[48]
10617
10671
  )\d{4}
10618
10672
  </nationalNumberPattern>
10619
- <exampleNumber>388123456</exampleNumber>
10673
+ <possibleNumberPattern>\d{7}</possibleNumberPattern>
10674
+ <exampleNumber>6201234</exampleNumber>
10620
10675
  </voicemail>
10621
10676
  </territory>
10622
10677
 
@@ -11115,6 +11170,7 @@
11115
11170
  <nationalNumberPattern>
11116
11171
  8(?:
11117
11172
  00|
11173
+ 44|
11118
11174
  55|
11119
11175
  66|
11120
11176
  77|
@@ -11185,7 +11241,8 @@
11185
11241
  3[0-57-8]|
11186
11242
  4[24-7]|
11187
11243
  5[0-24-8]|
11188
- [6-9][02]
11244
+ [6-8][02]|
11245
+ 9[0-2]
11189
11246
  )|
11190
11247
  7(?:
11191
11248
  0[1-79]|
@@ -11201,11 +11258,13 @@
11201
11258
  1[1-35-7]|
11202
11259
  2[024-7]|
11203
11260
  3\d|
11204
- [457][02]|
11261
+ 4[0-2]|
11262
+ [57][02]|
11205
11263
  60
11206
11264
  )|
11207
11265
  53(?:
11208
- [013][02]|
11266
+ 0[0-2]|
11267
+ [13][02]|
11209
11268
  2[0-59]|
11210
11269
  49|
11211
11270
  5[0-35-9]|
@@ -11254,8 +11313,8 @@
11254
11313
  7(?:
11255
11314
  55|
11256
11315
  7[25-9]|
11257
- 8[5-9]|
11258
- 9[05-9]
11316
+ 8[05-9]|
11317
+ 9[015-9]
11259
11318
  )\d{6}
11260
11319
  </nationalNumberPattern>
11261
11320
  <possibleNumberPattern>\d{9}</possibleNumberPattern>
@@ -12571,36 +12630,42 @@
12571
12630
  <!-- Kiribati -->
12572
12631
  <!-- http://www.itu.int/oth/T0202000071/en -->
12573
12632
  <!-- We include the national prefix for parsing here just in case numbers can be dialled with a
12574
- leading 0 - the main ITU document says this is not the case and no numbers online have been
12575
- found formatted this way, but Kiribati's own document lists it as a national dialling
12576
- prefix. -->
12633
+ leading 0 - no numbers online have been found formatted this way, but the ITU document
12634
+ lists it as a national dialling prefix. -->
12577
12635
  <territory id="KI" countryCode="686" internationalPrefix="00"
12578
12636
  nationalPrefixForParsing="0">
12579
12637
  <!-- Numbers should be formatted as a block." -->
12580
12638
  <generalDesc>
12581
- <nationalNumberPattern>[2-689]\d{4}</nationalNumberPattern>
12582
- <possibleNumberPattern>\d{5}</possibleNumberPattern>
12639
+ <nationalNumberPattern>
12640
+ [2-58]\d{4}|
12641
+ 7\d{7}
12642
+ </nationalNumberPattern>
12643
+ <possibleNumberPattern>\d{5,8}</possibleNumberPattern>
12583
12644
  </generalDesc>
12584
12645
  <fixedLine>
12585
12646
  <nationalNumberPattern>
12586
12647
  (?:
12587
- [234]\d|
12648
+ [24]\d|
12649
+ 3[1-9]|
12588
12650
  50|
12589
- 8[1-5]
12651
+ 8[0-5]
12590
12652
  )\d{3}
12591
12653
  </nationalNumberPattern>
12654
+ <possibleNumberPattern>\d{5}</possibleNumberPattern>
12592
12655
  <exampleNumber>31234</exampleNumber>
12593
12656
  </fixedLine>
12594
12657
  <mobile>
12595
- <!-- Exclude 99[2349] from mobile since these are emergency numbers. -->
12658
+ <!-- North Tarawa is listed as 720XXXXX-729XXXXX but considering that this deviates from the
12659
+ pattern followed by every other place, we are assuming 731XXXXX-732XXXXX for now. -->
12596
12660
  <nationalNumberPattern>
12597
- 6\d{4}|
12598
- 9(?:
12599
- [0-8]\d|
12600
- 9[015-8]
12601
- )\d{2}
12661
+ 7(?:
12662
+ [24]\d|
12663
+ 3[1-9]|
12664
+ 8[0-5]
12665
+ )\d{5}
12602
12666
  </nationalNumberPattern>
12603
- <exampleNumber>61234</exampleNumber>
12667
+ <possibleNumberPattern>\d{8}</possibleNumberPattern>
12668
+ <exampleNumber>72012345</exampleNumber>
12604
12669
  </mobile>
12605
12670
  </territory>
12606
12671
 
@@ -12690,6 +12755,7 @@
12690
12755
  <nationalNumberPattern>
12691
12756
  8(?:
12692
12757
  00|
12758
+ 44|
12693
12759
  55|
12694
12760
  66|
12695
12761
  77|
@@ -13040,7 +13106,7 @@
13040
13106
  <nationalNumberPattern>
13041
13107
  (?:
13042
13108
  5(?:
13043
- 1[0-35]|
13109
+ 1[0-5]|
13044
13110
  [05]\d
13045
13111
  )|
13046
13112
  6(?:
@@ -13055,7 +13121,7 @@
13055
13121
  4[049]|
13056
13122
  6[069]|
13057
13123
  [79]\d|
13058
- 88
13124
+ 8[08]
13059
13125
  )
13060
13126
  )\d{5}
13061
13127
  </nationalNumberPattern>
@@ -13142,6 +13208,7 @@
13142
13208
  <nationalNumberPattern>
13143
13209
  8(?:
13144
13210
  00|
13211
+ 44|
13145
13212
  55|
13146
13213
  66|
13147
13214
  77|
@@ -13511,6 +13578,7 @@
13511
13578
  <nationalNumberPattern>
13512
13579
  8(?:
13513
13580
  00|
13581
+ 44|
13514
13582
  55|
13515
13583
  66|
13516
13584
  77|
@@ -14297,15 +14365,13 @@
14297
14365
  </fixedLine>
14298
14366
  <!-- Also duplicated in Western Sahara, please ensure you update both. -->
14299
14367
  <mobile>
14300
- <!-- Prefixes 60[1-578], 62[01457-9], 63[04-8] and 68[01], 698 are from numbers found
14301
- online, bug-reports, and information provided directly by the carriers. -->
14368
+ <!-- http://www.anrt.ma/sites/default/files/Blocs_de_numeros_par_operateur.pdf -->
14302
14369
  <nationalNumberPattern>
14303
14370
  6(?:
14304
14371
  0[0-8]|
14305
- [124-7]\d|
14306
- 3[013-8]|
14372
+ [12-7]\d|
14307
14373
  8[01]|
14308
- 9[89]
14374
+ 9[27-9]
14309
14375
  )\d{6}
14310
14376
  </nationalNumberPattern>
14311
14377
  <exampleNumber>650123456</exampleNumber>
@@ -14661,14 +14727,9 @@
14661
14727
  <mobile>
14662
14728
  <!-- The numbering plan suggests the third digit, Z, should be 24-9, but this is not borne
14663
14729
  out by reality. -->
14664
- <nationalNumberPattern>
14665
- 3(?:
14666
- [02-4]\d|
14667
- 90
14668
- )\d{6}
14669
- </nationalNumberPattern>
14730
+ <nationalNumberPattern>3[2-49]\d{7}</nationalNumberPattern>
14670
14731
  <possibleNumberPattern>\d{9}</possibleNumberPattern>
14671
- <exampleNumber>301234567</exampleNumber>
14732
+ <exampleNumber>321234567</exampleNumber>
14672
14733
  </mobile>
14673
14734
  <!-- Putting VSAT numbers here. -->
14674
14735
  <voip>
@@ -14771,9 +14832,11 @@
14771
14832
  <mobile>
14772
14833
  <nationalNumberPattern>
14773
14834
  7(?:
14774
- [0-25-8]\d|
14775
- 33
14776
- )\d{5}</nationalNumberPattern>
14835
+ [0-25-8]\d{2}|
14836
+ 32\d|
14837
+ 421
14838
+ )\d{4}
14839
+ </nationalNumberPattern>
14777
14840
  <exampleNumber>72345678</exampleNumber>
14778
14841
  </mobile>
14779
14842
  <tollFree>
@@ -14896,7 +14959,8 @@
14896
14959
  <numberFormat pattern="(9)(\d{3})(\d{4,5})">
14897
14960
  <leadingDigits>
14898
14961
  9(?:
14899
- [235-9]|
14962
+ 2[0-4]|
14963
+ [35-9]|
14900
14964
  4[13789]
14901
14965
  )
14902
14966
  </leadingDigits>
@@ -14906,13 +14970,19 @@
14906
14970
  <leadingDigits>94[0245]</leadingDigits>
14907
14971
  <format>$1 $2 $3</format>
14908
14972
  </numberFormat>
14973
+ <!-- Following majority of numbers found online. -->
14974
+ <numberFormat pattern="(9)(\d{3})(\d{3})(\d{3})">
14975
+ <leadingDigits>925</leadingDigits>
14976
+ <format>$1 $2 $3 $4</format>
14977
+ </numberFormat>
14909
14978
  </availableFormats>
14910
14979
  <generalDesc>
14911
14980
  <nationalNumberPattern>
14912
14981
  [14578]\d{5,7}|
14913
14982
  [26]\d{5,8}|
14914
14983
  9(?:
14915
- [258]|
14984
+ 2\d{0,2}|
14985
+ [58]|
14916
14986
  3\d|
14917
14987
  4\d{1,2}|
14918
14988
  [679]\d?
@@ -15002,7 +15072,10 @@
15002
15072
  <nationalNumberPattern>
15003
15073
  17[01]\d{4}|
15004
15074
  9(?:
15005
- 2[0-4]|
15075
+ 2(?:
15076
+ [0-4]|
15077
+ 5\d{2}
15078
+ )|
15006
15079
  3[136]\d|
15007
15080
  4(?:
15008
15081
  0[0-4]\d|
@@ -15239,6 +15312,7 @@
15239
15312
  <nationalNumberPattern>
15240
15313
  8(?:
15241
15314
  00|
15315
+ 44|
15242
15316
  55|
15243
15317
  66|
15244
15318
  77|
@@ -15381,6 +15455,7 @@
15381
15455
  <nationalNumberPattern>
15382
15456
  8(?:
15383
15457
  00|
15458
+ 44|
15384
15459
  55|
15385
15460
  66|
15386
15461
  77|
@@ -15427,6 +15502,7 @@
15427
15502
  2(?:
15428
15503
  0(?:
15429
15504
  1[0-6]|
15505
+ 3[1-4]|
15430
15506
  [69]\d
15431
15507
  )|
15432
15508
  [1-357]\d{2}
@@ -15435,6 +15511,8 @@
15435
15511
  <exampleNumber>21001234</exampleNumber>
15436
15512
  </fixedLine>
15437
15513
  <mobile>
15514
+ <!-- 7210 and 92XX come from the allocations listed on www.mca.org.mt, but they are not
15515
+ listed in the latest ITU document. -->
15438
15516
  <nationalNumberPattern>
15439
15517
  (?:
15440
15518
  7(?:
@@ -15552,7 +15630,7 @@
15552
15630
  )|
15553
15631
  7\d{2}|
15554
15632
  8(?:
15555
- [26]\d|
15633
+ [256]\d|
15556
15634
  7[15-8]
15557
15635
  )|
15558
15636
  9[0-8]\d
@@ -16009,7 +16087,8 @@
16009
16087
  <exampleNumber>123456789</exampleNumber>
16010
16088
  </mobile>
16011
16089
  <tollFree>
16012
- <nationalNumberPattern>1[38]00\d{6}</nationalNumberPattern>
16090
+ <!-- http://www.skmm.gov.my/skmmgovmy/media/General/pdf/Special_Service_Number.pdf -->
16091
+ <nationalNumberPattern>1[378]00\d{6}</nationalNumberPattern>
16013
16092
  <possibleNumberPattern>\d{10}</possibleNumberPattern>
16014
16093
  <exampleNumber>1300123456</exampleNumber>
16015
16094
  </tollFree>
@@ -16018,11 +16097,6 @@
16018
16097
  <possibleNumberPattern>\d{10}</possibleNumberPattern>
16019
16098
  <exampleNumber>1600123456</exampleNumber>
16020
16099
  </premiumRate>
16021
- <personalNumber>
16022
- <nationalNumberPattern>1700\d{6}</nationalNumberPattern>
16023
- <possibleNumberPattern>\d{10}</possibleNumberPattern>
16024
- <exampleNumber>1700123456</exampleNumber>
16025
- </personalNumber>
16026
16100
  <voip>
16027
16101
  <nationalNumberPattern>154\d{7}</nationalNumberPattern>
16028
16102
  <possibleNumberPattern>\d{10}</possibleNumberPattern>
@@ -16117,8 +16191,8 @@
16117
16191
  7\d?
16118
16192
  )|
16119
16193
  3(?:
16120
- 2\d|
16121
- 3[378]
16194
+ [01378]|
16195
+ 2\d
16122
16196
  )|
16123
16197
  4[01]|
16124
16198
  69|
@@ -16126,7 +16200,6 @@
16126
16200
  )|
16127
16201
  2(?:
16128
16202
  17|
16129
- 25|
16130
16203
  5(?:
16131
16204
  [0-36-8]|
16132
16205
  4\d?
@@ -16391,7 +16464,7 @@
16391
16464
  <leadingDigits>[129]</leadingDigits>
16392
16465
  <format>$1 $2 $3</format>
16393
16466
  </numberFormat>
16394
- <numberFormat pattern="([3-8]\d)(\d{3})(\d{2,3})">
16467
+ <numberFormat pattern="(\d{2})(\d{3})(\d{2,3})">
16395
16468
  <leadingDigits>
16396
16469
  [3-6]|
16397
16470
  7(?:
@@ -16402,10 +16475,11 @@
16402
16475
  </leadingDigits>
16403
16476
  <format>$1 $2 $3</format>
16404
16477
  </numberFormat>
16405
- <numberFormat pattern="([78]\d{2})(\d{3})(\d{3,4})">
16478
+ <numberFormat pattern="(\d{3})(\d{3})(\d{3,4})">
16406
16479
  <leadingDigits>
16407
16480
  70|
16408
- 8[01]
16481
+ 8[01]|
16482
+ 909
16409
16483
  </leadingDigits>
16410
16484
  <format>$1 $2 $3</format>
16411
16485
  </numberFormat>
@@ -16424,7 +16498,8 @@
16424
16498
  </availableFormats>
16425
16499
  <generalDesc>
16426
16500
  <nationalNumberPattern>
16427
- [1-69]\d{5,8}|
16501
+ [1-6]\d{5,8}|
16502
+ 9\d{5,9}|
16428
16503
  [78]\d{5,13}
16429
16504
  </nationalNumberPattern>
16430
16505
  <possibleNumberPattern>\d{5,14}</possibleNumberPattern>
@@ -16432,7 +16507,10 @@
16432
16507
  <fixedLine>
16433
16508
  <nationalNumberPattern>
16434
16509
  [12]\d{6,7}|
16435
- 9\d{7}|
16510
+ 9(?:
16511
+ 0[3-9]|
16512
+ [1-9]\d
16513
+ )\d{5}|
16436
16514
  (?:
16437
16515
  3\d|
16438
16516
  4[023568]|
@@ -16460,7 +16538,7 @@
16460
16538
  from Etisalat, 814 MTN and 811 from Glo. Furthermore, the fixed-line prefixes owned by
16461
16539
  Starcomms have apparently, according to the company, been used for mobile numbers too,
16462
16540
  despite the ITU plan, so we list them here as well. 701 has been added for Airtel/Zain.
16463
- -->
16541
+ 9091 has been added for Etisalat. -->
16464
16542
  <nationalNumberPattern>
16465
16543
  (?:
16466
16544
  1(?:
@@ -16542,7 +16620,8 @@
16542
16620
  8(?:
16543
16621
  0[2-9]|
16544
16622
  1\d
16545
- )\d
16623
+ )\d|
16624
+ 9091
16546
16625
  )\d{6}
16547
16626
  </nationalNumberPattern>
16548
16627
  <possibleNumberPattern>\d{8,10}</possibleNumberPattern>
@@ -16570,7 +16649,7 @@
16570
16649
  </numberFormat>
16571
16650
  </availableFormats>
16572
16651
  <generalDesc>
16573
- <nationalNumberPattern>[1258]\d{7}</nationalNumberPattern>
16652
+ <nationalNumberPattern>[12578]\d{7}</nationalNumberPattern>
16574
16653
  <possibleNumberPattern>\d{8}</possibleNumberPattern>
16575
16654
  </generalDesc>
16576
16655
  <fixedLine>
@@ -16579,9 +16658,14 @@
16579
16658
  </fixedLine>
16580
16659
  <mobile>
16581
16660
  <!-- Online users have reported seeing 5500 used by Claro; until we can find actual numbers
16582
- or any documentation about it, we restrict this pattern to this prefix exactly. -->
16661
+ or any documentation about it, we restrict this pattern to this prefix exactly. 57 and
16662
+ 78 were added from bug reports/numbers found online. -->
16583
16663
  <nationalNumberPattern>
16584
- 5500\d{4}|
16664
+ 5(?:
16665
+ 500\d{4}|
16666
+ 7\d{6}
16667
+ )|
16668
+ 78\d{6}|
16585
16669
  8\d{7}
16586
16670
  </nationalNumberPattern>
16587
16671
  <exampleNumber>81234567</exampleNumber>
@@ -17168,7 +17252,7 @@
17168
17252
  65|
17169
17253
  7[016-8]|
17170
17254
  8[58]|
17171
- 9[134]
17255
+ 9[1349]
17172
17256
  )|
17173
17257
  2(?:
17174
17258
  [0235679]\d|
@@ -17177,19 +17261,18 @@
17177
17261
  8[028]
17178
17262
  )|
17179
17263
  3(?:
17180
- 0[0-7]|
17264
+ [09]\d|
17181
17265
  1[14-7]|
17182
17266
  2[0-3]|
17183
17267
  3[03]|
17184
17268
  4[0457]|
17185
17269
  5[56]|
17186
17270
  6[068]|
17187
- 7[078]|
17188
- 80|
17189
- 9\d
17271
+ 7[06-8]|
17272
+ 8[089]
17190
17273
  )|
17191
17274
  4(?:
17192
- 3[013-59]|
17275
+ 3[013-69]|
17193
17276
  4\d|
17194
17277
  7[0-689]
17195
17278
  )|
@@ -17202,8 +17285,9 @@
17202
17285
  7(?:
17203
17286
  0[09]|
17204
17287
  2[0-267]|
17205
- [349]0|
17206
- 5[6-9]|
17288
+ 3[06]|
17289
+ [49]0|
17290
+ 5[06-9]|
17207
17291
  7[0-24-7]|
17208
17292
  8[89]
17209
17293
  )|
@@ -17213,10 +17297,10 @@
17213
17297
  8[02]
17214
17298
  )|
17215
17299
  9(?:
17216
- 0[78]|
17217
- 1[0178]|
17218
- 2[0378]|
17219
- 3[379]|
17300
+ 0[6-8]|
17301
+ 1[016-8]|
17302
+ 2[036-8]|
17303
+ 3[3679]|
17220
17304
  40|
17221
17305
  5[0489]|
17222
17306
  6[06-9]|
@@ -17242,10 +17326,9 @@
17242
17326
  )
17243
17327
  )\d{4}|
17244
17328
  6(?:
17245
- [04-9]\d|
17329
+ [024-9]\d|
17246
17330
  1[0-5]|
17247
- 2[0-7]|
17248
- 3[5-9]
17331
+ 3[04-9]
17249
17332
  )\d{5}
17250
17333
  </nationalNumberPattern>
17251
17334
  <exampleNumber>60012345</exampleNumber>
@@ -17872,8 +17955,7 @@
17872
17955
  0\d|
17873
17956
  1[1-5]|
17874
17957
  2[0-5]|
17875
- 3[1-6]|
17876
- 4[1-7]|
17958
+ [34][1-7]|
17877
17959
  55|
17878
17960
  64
17879
17961
  )\d{7}
@@ -18130,6 +18212,7 @@
18130
18212
  <nationalNumberPattern>
18131
18213
  8(?:
18132
18214
  00|
18215
+ 44|
18133
18216
  55|
18134
18217
  66|
18135
18218
  77|
@@ -19618,7 +19701,7 @@
19618
19701
  <numberFormat pattern="([3-7]\d)(\d{3})(\d{3})">
19619
19702
  <leadingDigits>
19620
19703
  [37][01]|
19621
- 4[019]|
19704
+ 4[0139]|
19622
19705
  51|
19623
19706
  6
19624
19707
  </leadingDigits>
@@ -19657,14 +19740,13 @@
19657
19740
  <exampleNumber>11234567</exampleNumber>
19658
19741
  </fixedLine>
19659
19742
  <mobile>
19660
- <!-- We include 049 here - it is VoIP in the plan, but SMS messages have been successfully
19661
- delivered - and it is run by Mobitel. There are also mobile numbers found on the
19662
- internet with this prefix - it is apparently used in Kosovo. Also
19663
- added 068, which is used by the mobile operator bob.si -->
19743
+ <!-- We include 043 and 049 here - it is VoIP in the plan, but is actually used to provide
19744
+ mobile coverage to Kosovo. Also added 068, which is used by the mobile operator bob.si
19745
+ -->
19664
19746
  <nationalNumberPattern>
19665
19747
  (?:
19666
19748
  [37][01]|
19667
- 4[019]|
19749
+ 4[0139]|
19668
19750
  51|
19669
19751
  6[48]
19670
19752
  )\d{6}
@@ -19964,29 +20046,37 @@
19964
20046
 
19965
20047
  <!-- Senegal -->
19966
20048
  <!-- http://www.itu.int/oth/T02020000B8/en -->
20049
+ <!-- http://www.artpsenegal.net -->
19967
20050
  <territory id="SN" countryCode="221" internationalPrefix="00">
19968
20051
  <availableFormats>
19969
20052
  <!-- Using yellow pages and online telecom company formatting, rather than that implied in
19970
20053
  the national numbering plan. -->
19971
20054
  <numberFormat pattern="(\d{2})(\d{3})(\d{2})(\d{2})">
20055
+ <leadingDigits>[37]</leadingDigits>
20056
+ <format>$1 $2 $3 $4</format>
20057
+ </numberFormat>
20058
+ <numberFormat pattern="(\d{3})(\d{2})(\d{2})(\d{2})">
20059
+ <leadingDigits>8</leadingDigits>
19972
20060
  <format>$1 $2 $3 $4</format>
19973
20061
  </numberFormat>
19974
20062
  </availableFormats>
19975
20063
  <generalDesc>
19976
- <nationalNumberPattern>[37]\d{8}</nationalNumberPattern>
20064
+ <nationalNumberPattern>[378]\d{8}</nationalNumberPattern>
19977
20065
  <possibleNumberPattern>\d{9}</possibleNumberPattern>
19978
20066
  </generalDesc>
19979
20067
  <fixedLine>
19980
20068
  <nationalNumberPattern>
19981
20069
  3(?:
19982
20070
  0(?:
19983
- 1[01]|
20071
+ 1[0-2]|
19984
20072
  80
19985
20073
  )|
20074
+ 211|
19986
20075
  3(?:
19987
20076
  8[1-9]|
19988
20077
  9[2-9]
19989
- )
20078
+ )|
20079
+ 90[1-5]
19990
20080
  )\d{5}
19991
20081
  </nationalNumberPattern>
19992
20082
  <exampleNumber>301012345</exampleNumber>
@@ -19994,36 +20084,34 @@
19994
20084
  <mobile>
19995
20085
  <nationalNumberPattern>
19996
20086
  7(?:
19997
- 0(?:
19998
- [01279]0|
19999
- 3[03]|
20000
- 4[05]|
20001
- 5[06]|
20002
- 6[03-5]|
20003
- 8[029]
20004
- )|
20005
- 6(?:
20006
- 1[23]|
20007
- 2[89]|
20008
- 3[3489]|
20009
- 4[6-9]|
20010
- 5\d|
20011
- 6[3-9]|
20012
- 7[45]|
20013
- 8[3-8]
20014
- )|
20015
- 7\d{2}|
20016
- 8(?:
20017
- 01|
20018
- 1[01]
20019
- )
20020
- )\d{5}
20087
+ [07]\d|
20088
+ 21|
20089
+ 6[1-9]|
20090
+ 8[0-26]|
20091
+ 90
20092
+ )\d{6}
20021
20093
  </nationalNumberPattern>
20022
- <exampleNumber>701012345</exampleNumber>
20094
+ <exampleNumber>701234567</exampleNumber>
20023
20095
  </mobile>
20096
+ <tollFree>
20097
+ <nationalNumberPattern>800\d{6}</nationalNumberPattern>
20098
+ <possibleNumberPattern>\d{9}</possibleNumberPattern>
20099
+ <exampleNumber>800123456</exampleNumber>
20100
+ </tollFree>
20101
+ <premiumRate>
20102
+ <!-- Revenu Partagé in the plan. -->
20103
+ <nationalNumberPattern>88[4689]\d{6}</nationalNumberPattern>
20104
+ <possibleNumberPattern>\d{9}</possibleNumberPattern>
20105
+ <exampleNumber>884123456</exampleNumber>
20106
+ </premiumRate>
20107
+ <sharedCost>
20108
+ <nationalNumberPattern>81[02468]\d{6}</nationalNumberPattern>
20109
+ <possibleNumberPattern>\d{9}</possibleNumberPattern>
20110
+ <exampleNumber>810123456</exampleNumber>
20111
+ </sharedCost>
20024
20112
  <voip>
20025
- <nationalNumberPattern>33301\d{4}</nationalNumberPattern>
20026
- <exampleNumber>333011234</exampleNumber>
20113
+ <nationalNumberPattern>391\d{6}</nationalNumberPattern>
20114
+ <exampleNumber>391011234</exampleNumber>
20027
20115
  </voip>
20028
20116
  </territory>
20029
20117
 
@@ -20104,7 +20192,7 @@
20104
20192
  7\d{2}|
20105
20193
  9(?:
20106
20194
  07|
20107
- [19]
20195
+ [13-9]
20108
20196
  )\d
20109
20197
  )\d{5}
20110
20198
  </nationalNumberPattern>
@@ -20151,12 +20239,14 @@
20151
20239
  <exampleNumber>211234</exampleNumber>
20152
20240
  </fixedLine>
20153
20241
  <mobile>
20154
- <!-- Adding 74 from numbers found online. -->
20155
20242
  <nationalNumberPattern>
20156
20243
  (?:
20157
- 7[1-57]|
20158
- 8[1-9]
20159
- )\d{5}
20244
+ 7(?:
20245
+ [1-357]\d|
20246
+ 4[0-5]
20247
+ )|
20248
+ 8[1-9]\d
20249
+ )\d{4}
20160
20250
  </nationalNumberPattern>
20161
20251
  <possibleNumberPattern>\d{7}</possibleNumberPattern>
20162
20252
  <exampleNumber>7412345</exampleNumber>
@@ -20310,6 +20400,7 @@
20310
20400
  <nationalNumberPattern>
20311
20401
  8(?:
20312
20402
  00|
20403
+ 44|
20313
20404
  55|
20314
20405
  66|
20315
20406
  77|
@@ -20504,7 +20595,7 @@
20504
20595
  3[1-389]|
20505
20596
  4[1-7]
20506
20597
  )|
20507
- 4[34][12]
20598
+ 4[34][1-3]
20508
20599
  )\d{4}
20509
20600
  </nationalNumberPattern>
20510
20601
  <possibleNumberPattern>\d{10}</possibleNumberPattern>
@@ -20514,6 +20605,7 @@
20514
20605
  <nationalNumberPattern>
20515
20606
  8(?:
20516
20607
  00|
20608
+ 44|
20517
20609
  55|
20518
20610
  66|
20519
20611
  77|
@@ -20933,8 +21025,9 @@
20933
21025
  <!-- According to feedback from users, the carrier Altyn Asyr is the only one currently
20934
21026
  operating, with the numbers 6[3-5]\d{6}. MTS used to operate the ranges 6[6-8] but this
20935
21027
  has been suspended. It is unclear whether it will resume. We support both ranges in the
20936
- meantime. -->
20937
- <nationalNumberPattern>6[3-8]\d{6}</nationalNumberPattern>
21028
+ meantime. The range 62 seems also now to be in use, according to numbers found online.
21029
+ -->
21030
+ <nationalNumberPattern>6[2-8]\d{6}</nationalNumberPattern>
20938
21031
  <exampleNumber>66123456</exampleNumber>
20939
21032
  </mobile>
20940
21033
  <!-- No tollFree or premiumRate information can be found. -->
@@ -20942,6 +21035,9 @@
20942
21035
 
20943
21036
  <!-- Tunisia -->
20944
21037
  <!-- http://www.itu.int/oth/T02020000D5/en -->
21038
+ <!-- http://www.tunisietelecom.tn/tt/wcm/connect/?MOD=PDMProxy&TYPE=personalization&ID=NONE&KEY=NONE&LIBRARY=%2FcontentRoot%2Ficm%3Alibraries%5B16%5D&FOLDER=%2F&DOC_NAME=%2FcontentRoot%2Ficm%3Alibraries%5B16%5D%2FOTTI+2011.pdf
21039
+ http://www.tunisietelecom.tn/tt/internet/fr/pme/fixe/numeros_acceuil
21040
+ -->
20945
21041
  <territory id="TN" countryCode="216" internationalPrefix="00">
20946
21042
  <availableFormats>
20947
21043
  <numberFormat pattern="(\d{2})(\d{3})(\d{3})">
@@ -20953,19 +21049,18 @@
20953
21049
  <possibleNumberPattern>\d{8}</possibleNumberPattern>
20954
21050
  </generalDesc>
20955
21051
  <fixedLine>
20956
- <!-- We support the whole 81 prefix here instead of just 81200 as
20957
- indicated in the ITU doc, as more real phone numbers have been
20958
- found online. -->
21052
+ <!-- 3[012] numbers are no longer listed in the ITU doc, but we support them based on
21053
+ online searches. -->
20959
21054
  <nationalNumberPattern>
20960
- (?:
20961
- 3[012]|
20962
- 7\d|
20963
- 81
20964
- )\d{6}
21055
+ 3[012]\d{6}|
21056
+ 7\d{7}|
21057
+ 81200\d{3}
20965
21058
  </nationalNumberPattern>
20966
21059
  <exampleNumber>71234567</exampleNumber>
20967
21060
  </fixedLine>
20968
21061
  <mobile>
21062
+ <!-- Numbers starting with 5 are no longer listed in the ITU doc, but we support them based
21063
+ on online searches and Wikipedia. -->
20969
21064
  <nationalNumberPattern>
20970
21065
  (?:
20971
21066
  [259]\d|
@@ -20974,12 +21069,24 @@
20974
21069
  </nationalNumberPattern>
20975
21070
  <exampleNumber>20123456</exampleNumber>
20976
21071
  </mobile>
20977
- <!-- These are listed as 'value added services' - pending further information, we add them
20978
- here for now. -->
21072
+ <tollFree>
21073
+ <!-- ITU lists 80 xx xx xx, but the document published by Tunisie Telecom has more specific
21074
+ information which is followed here. -->
21075
+ <nationalNumberPattern>8010\d{4}</nationalNumberPattern>
21076
+ <exampleNumber>80101234</exampleNumber>
21077
+ </tollFree>
20979
21078
  <premiumRate>
20980
- <nationalNumberPattern>8[028]\d{6}</nationalNumberPattern>
20981
- <exampleNumber>80123456</exampleNumber>
21079
+ <nationalNumberPattern>88\d{6}</nationalNumberPattern>
21080
+ <exampleNumber>88123456</exampleNumber>
20982
21081
  </premiumRate>
21082
+ <sharedCost>
21083
+ <!-- 8110xxxx numbers are listed as being "discounted non-geographical numbers" and are put
21084
+ here for now. In the future we might consider them as UAN.
21085
+ ITU lists 82 xx xx xx, but the document published by Tunisie Telecom has more specific
21086
+ information which is followed here. -->
21087
+ <nationalNumberPattern>8[12]10\d{4}</nationalNumberPattern>
21088
+ <exampleNumber>81101234</exampleNumber>
21089
+ </sharedCost>
20983
21090
  </territory>
20984
21091
 
20985
21092
  <!-- Tonga -->
@@ -21181,11 +21288,12 @@
21181
21288
  <exampleNumber>8682211234</exampleNumber>
21182
21289
  </fixedLine>
21183
21290
  <mobile>
21184
- <!-- Adding 48X & 70X from the IR21 published by TSTT. -->
21291
+ <!-- Adding 48X & 70X from the IR21 published by TSTT. 288 seems to be used based on numbers
21292
+ found online. -->
21185
21293
  <nationalNumberPattern>
21186
21294
  868(?:
21187
21295
  2(?:
21188
- 8[59]|
21296
+ 8[5-9]|
21189
21297
  9\d
21190
21298
  )|
21191
21299
  3(?:
@@ -21212,6 +21320,7 @@
21212
21320
  <nationalNumberPattern>
21213
21321
  8(?:
21214
21322
  00|
21323
+ 44|
21215
21324
  55|
21216
21325
  66|
21217
21326
  77|
@@ -21616,7 +21725,7 @@
21616
21725
  )|
21617
21726
  3[23]\d|
21618
21727
  5[0-4]\d|
21619
- 60\d|
21728
+ 6[03]\d|
21620
21729
  8[0-2]\d
21621
21730
  )\d{4}|
21622
21731
  [34]\d{8}
@@ -21702,7 +21811,7 @@
21702
21811
  3[014679]|
21703
21812
  47|
21704
21813
  5[12]|
21705
- 6[01]|
21814
+ 6[014]|
21706
21815
  8[056]
21707
21816
  )|
21708
21817
  4(?:
@@ -21741,7 +21850,7 @@
21741
21850
  7(?:
21742
21851
  0[1-46-8]|
21743
21852
  1[02-9]|
21744
- 2[047]|
21853
+ 2[0457]|
21745
21854
  3[1247]|
21746
21855
  4[07]|
21747
21856
  5[47]|
@@ -21794,7 +21903,7 @@
21794
21903
  3[014679]|
21795
21904
  47|
21796
21905
  5[12]|
21797
- 6[01]|
21906
+ 6[014]|
21798
21907
  8[056]
21799
21908
  )|
21800
21909
  4(?:
@@ -21833,7 +21942,7 @@
21833
21942
  7(?:
21834
21943
  0[1-46-8]|
21835
21944
  1[02-9]|
21836
- 2[047]|
21945
+ 2[0457]|
21837
21946
  3[1247]|
21838
21947
  4[07]|
21839
21948
  5[47]|
@@ -21869,6 +21978,7 @@
21869
21978
  <nationalNumberPattern>
21870
21979
  8(?:
21871
21980
  00|
21981
+ 44|
21872
21982
  55|
21873
21983
  66|
21874
21984
  77|
@@ -22375,6 +22485,7 @@
22375
22485
  <nationalNumberPattern>
22376
22486
  8(?:
22377
22487
  00|
22488
+ 44|
22378
22489
  55|
22379
22490
  66|
22380
22491
  77|
@@ -22519,6 +22630,7 @@
22519
22630
  <nationalNumberPattern>
22520
22631
  8(?:
22521
22632
  00|
22633
+ 44|
22522
22634
  55|
22523
22635
  66|
22524
22636
  77|
@@ -22639,6 +22751,7 @@
22639
22751
  <nationalNumberPattern>
22640
22752
  8(?:
22641
22753
  00|
22754
+ 44|
22642
22755
  55|
22643
22756
  66|
22644
22757
  77|