phonelib 0.6.2 → 0.6.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (141) hide show
  1. checksums.yaml +4 -4
  2. data/{README.rdoc → README.md} +116 -75
  3. data/data/extended_data.dat +0 -0
  4. data/data/libphonenumber/FALSEHOODS.md +16 -0
  5. data/data/libphonenumber/FAQ.md +8 -0
  6. data/data/libphonenumber/README.md +1 -1
  7. data/data/libphonenumber/cpp/src/phonenumbers/alternate_format.cc +108 -100
  8. data/data/libphonenumber/cpp/src/phonenumbers/lite_metadata.cc +10070 -10016
  9. data/data/libphonenumber/cpp/src/phonenumbers/metadata.cc +10938 -10884
  10. data/data/libphonenumber/cpp/src/phonenumbers/short_metadata.cc +2481 -2455
  11. data/data/libphonenumber/java/carrier/pom.xml +26 -4
  12. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/255_en +0 -0
  13. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/374_en +0 -0
  14. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/374_ru +0 -0
  15. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/421_en +0 -0
  16. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/66_en +0 -0
  17. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/91_en +0 -0
  18. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/93_fa +0 -0
  19. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/973_en +0 -0
  20. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/98_fa +0 -0
  21. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/992_en +0 -0
  22. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/994_en +0 -0
  23. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/config +0 -0
  24. data/data/libphonenumber/java/demo/pom.xml +6 -6
  25. data/data/libphonenumber/java/geocoder/pom.xml +26 -4
  26. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/1747_en +0 -0
  27. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/1934_en +0 -0
  28. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/371_en +0 -0
  29. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/44_en +0 -0
  30. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/504_en +0 -0
  31. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_bg +0 -0
  32. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_ca +0 -0
  33. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_el +0 -0
  34. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_es +0 -0
  35. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_fi +0 -0
  36. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_hi +0 -0
  37. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_hu +0 -0
  38. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_iw +0 -0
  39. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_ja +0 -0
  40. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_tr +0 -0
  41. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/91_en +0 -0
  42. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/93_en +0 -0
  43. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/93_fa +0 -0
  44. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/98_en +0 -0
  45. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/98_fa +0 -0
  46. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/992_en +0 -0
  47. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/994_en +0 -0
  48. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/config +0 -0
  49. data/data/libphonenumber/java/internal/prefixmapper/pom.xml +25 -3
  50. data/data/libphonenumber/java/libphonenumber/pom.xml +23 -2
  51. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/MetadataLoader.java +2 -1
  52. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/MultiFileMetadataSourceImpl.java +63 -70
  53. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_595 +0 -0
  54. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AZ +0 -0
  55. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BD +0 -0
  56. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BG +0 -0
  57. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BH +0 -0
  58. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CI +0 -0
  59. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CN +0 -0
  60. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HK +0 -0
  61. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HN +0 -0
  62. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IN +0 -0
  63. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KN +0 -0
  64. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KW +0 -0
  65. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LV +0 -0
  66. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PY +0 -0
  67. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SK +0 -0
  68. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SN +0 -0
  69. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TC +0 -0
  70. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TH +0 -0
  71. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TJ +0 -0
  72. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TZ +0 -0
  73. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_US +0 -0
  74. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AE +0 -0
  75. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AR +0 -0
  76. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BR +0 -0
  77. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GB +0 -0
  78. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IN +0 -0
  79. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NO +0 -0
  80. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SK +0 -0
  81. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ZA +0 -0
  82. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/SingleFilePhoneNumberMetadataProto +0 -0
  83. data/data/libphonenumber/java/libphonenumber/test/com/google/i18n/phonenumbers/MultiFileMetadataSourceImplTest.java +25 -5
  84. data/data/libphonenumber/java/pom.xml +2 -2
  85. data/data/libphonenumber/java/release_notes.txt +45 -0
  86. data/data/libphonenumber/javascript/i18n/phonenumbers/demo-compiled.js +72 -70
  87. data/data/libphonenumber/javascript/i18n/phonenumbers/metadata.js +38 -32
  88. data/data/libphonenumber/javascript/i18n/phonenumbers/metadatalite.js +38 -32
  89. data/data/libphonenumber/resources/PhoneNumberAlternateFormats.xml +16 -0
  90. data/data/libphonenumber/resources/PhoneNumberMetadata.xml +232 -96
  91. data/data/libphonenumber/resources/ShortNumberMetadata.xml +188 -44
  92. data/data/libphonenumber/resources/carrier/en/255.txt +2 -0
  93. data/data/libphonenumber/resources/carrier/en/374.txt +3 -3
  94. data/data/libphonenumber/resources/carrier/en/421.txt +1 -0
  95. data/data/libphonenumber/resources/carrier/en/66.txt +1 -0
  96. data/data/libphonenumber/resources/carrier/en/91.txt +419 -253
  97. data/data/libphonenumber/resources/carrier/en/973.txt +1 -0
  98. data/data/libphonenumber/resources/carrier/en/992.txt +1 -0
  99. data/data/libphonenumber/resources/carrier/en/994.txt +3 -0
  100. data/data/libphonenumber/resources/carrier/fa/93.txt +24 -0
  101. data/data/libphonenumber/resources/carrier/fa/98.txt +30 -0
  102. data/data/libphonenumber/resources/carrier/ru/374.txt +28 -0
  103. data/data/libphonenumber/resources/geocoding/bg/82.txt +34 -0
  104. data/data/libphonenumber/resources/geocoding/ca/82.txt +34 -0
  105. data/data/libphonenumber/resources/geocoding/el/82.txt +28 -0
  106. data/data/libphonenumber/resources/geocoding/en/1.txt +2 -0
  107. data/data/libphonenumber/resources/geocoding/en/371.txt +3 -0
  108. data/data/libphonenumber/resources/geocoding/en/44.txt +19 -1
  109. data/data/libphonenumber/resources/geocoding/en/504.txt +19 -0
  110. data/data/libphonenumber/resources/geocoding/en/91.txt +1 -5
  111. data/data/libphonenumber/resources/geocoding/en/93.txt +52 -0
  112. data/data/libphonenumber/resources/geocoding/en/98.txt +0 -2
  113. data/data/libphonenumber/resources/geocoding/en/992.txt +77 -0
  114. data/data/libphonenumber/resources/geocoding/en/994.txt +98 -0
  115. data/data/libphonenumber/resources/geocoding/es/82.txt +33 -0
  116. data/data/libphonenumber/resources/geocoding/fa/93.txt +53 -0
  117. data/data/libphonenumber/resources/geocoding/fa/98.txt +0 -2
  118. data/data/libphonenumber/resources/geocoding/fi/82.txt +34 -0
  119. data/data/libphonenumber/resources/geocoding/hi/82.txt +36 -0
  120. data/data/libphonenumber/resources/geocoding/hu/82.txt +35 -0
  121. data/data/libphonenumber/resources/geocoding/iw/82.txt +37 -0
  122. data/data/libphonenumber/resources/geocoding/ja/82.txt +35 -0
  123. data/data/libphonenumber/resources/geocoding/tr/82.txt +35 -0
  124. data/data/libphonenumber/tools/java/common/pom.xml +2 -0
  125. data/data/libphonenumber/tools/java/cpp-build/pom.xml +4 -0
  126. data/data/libphonenumber/tools/java/data/pom.xml +1 -11
  127. data/data/libphonenumber/tools/java/java-build/pom.xml +2 -0
  128. data/data/phone_data.dat +0 -0
  129. data/lib/phonelib.rb +7 -6
  130. data/lib/phonelib/core.rb +116 -68
  131. data/lib/phonelib/data_importer.rb +23 -19
  132. data/lib/phonelib/data_importer_helper.rb +16 -16
  133. data/lib/phonelib/phone.rb +47 -137
  134. data/lib/phonelib/phone_analyzer.rb +27 -25
  135. data/lib/phonelib/phone_analyzer_helper.rb +16 -9
  136. data/lib/phonelib/phone_extended_data.rb +27 -17
  137. data/lib/phonelib/phone_formatter.rb +131 -0
  138. data/lib/phonelib/version.rb +2 -3
  139. data/lib/tasks/phonelib_tasks.rake +0 -2
  140. data/lib/validators/phone_validator.rb +24 -14
  141. metadata +42 -3
@@ -111,12 +111,13 @@
111
111
  <!-- http://www.itu.int/oth/T02020000DC/en -->
112
112
  <territory id="AE">
113
113
  <generalDesc>
114
- <nationalNumberPattern>[19]\d{2}</nationalNumberPattern>
115
- <possibleNumberPattern>\d{3}</possibleNumberPattern>
114
+ <nationalNumberPattern>[149]\d{2,3}</nationalNumberPattern>
115
+ <possibleNumberPattern>\d{3,4}</possibleNumberPattern>
116
116
  </generalDesc>
117
117
  <shortCode>
118
118
  <nationalNumberPattern>
119
119
  112|
120
+ 4451|
120
121
  99[789]
121
122
  </nationalNumberPattern>
122
123
  <exampleNumber>112</exampleNumber>
@@ -128,6 +129,12 @@
128
129
  </nationalNumberPattern>
129
130
  <exampleNumber>112</exampleNumber>
130
131
  </emergency>
132
+ <smsServices>
133
+ <!-- As per online evidences, 4451 is an SMS-able short code. -->
134
+ <nationalNumberPattern>4451</nationalNumberPattern>
135
+ <possibleNumberPattern>\d{4}</possibleNumberPattern>
136
+ <exampleNumber>4451</exampleNumber>
137
+ </smsServices>
131
138
  </territory>
132
139
 
133
140
  <!-- Afghanistan -->
@@ -341,7 +348,7 @@
341
348
  <!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_Argentina#Public_utility_numbers -->
342
349
  <territory id="AR">
343
350
  <generalDesc>
344
- <nationalNumberPattern>[0189]\d{1,4}</nationalNumberPattern>
351
+ <nationalNumberPattern>[01389]\d{1,4}</nationalNumberPattern>
345
352
  <possibleNumberPattern>\d{2,5}</possibleNumberPattern>
346
353
  </generalDesc>
347
354
  <shortCode>
@@ -353,6 +360,7 @@
353
360
  2[15]|
354
361
  9
355
362
  )|
363
+ 3372|
356
364
  89338|
357
365
  911
358
366
  </nationalNumberPattern>
@@ -371,10 +379,15 @@
371
379
  <possibleNumberPattern>\d{2,3}</possibleNumberPattern>
372
380
  <exampleNumber>111</exampleNumber>
373
381
  </tollFree>
382
+ <!-- 911 is only available in select cities. Since it's not available everywhere
383
+ and is location specific adding this number here. -->
374
384
  <carrierSpecific>
375
385
  <!-- https://support.twitter.com/articles/20170024 -->
376
- <nationalNumberPattern>89338</nationalNumberPattern>
377
- <possibleNumberPattern>\d{5}</possibleNumberPattern>
386
+ <nationalNumberPattern>
387
+ 89338|
388
+ 911
389
+ </nationalNumberPattern>
390
+ <possibleNumberPattern>\d{3,5}</possibleNumberPattern>
378
391
  </carrierSpecific>
379
392
  <emergency>
380
393
  <!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_Argentina#Public_utility_numbers -->
@@ -393,8 +406,11 @@
393
406
  </expandedEmergency>
394
407
  <smsServices>
395
408
  <!-- https://support.twitter.com/articles/20170024 -->
396
- <nationalNumberPattern>89338</nationalNumberPattern>
397
- <possibleNumberPattern>\d{5}</possibleNumberPattern>
409
+ <nationalNumberPattern>
410
+ 3372|
411
+ 89338
412
+ </nationalNumberPattern>
413
+ <possibleNumberPattern>\d{4,5}</possibleNumberPattern>
398
414
  </smsServices>
399
415
  </territory>
400
416
 
@@ -1306,9 +1322,12 @@
1306
1322
  330|
1307
1323
  878
1308
1324
  )|
1309
- 85959
1325
+ 85959?
1326
+ )|
1327
+ 4(?:
1328
+ 0404|
1329
+ 828
1310
1330
  )|
1311
- 40404|
1312
1331
  911
1313
1332
  </nationalNumberPattern>
1314
1333
  <exampleNumber>168</exampleNumber>
@@ -1320,9 +1339,10 @@
1320
1339
  1(?:
1321
1340
  00|
1322
1341
  81
1323
- )
1342
+ )|
1343
+ 4828
1324
1344
  </nationalNumberPattern>
1325
- <possibleNumberPattern>\d{3}</possibleNumberPattern>
1345
+ <possibleNumberPattern>\d{3,4}</possibleNumberPattern>
1326
1346
  <exampleNumber>181</exampleNumber>
1327
1347
  </tollFree>
1328
1348
  <standardRate>
@@ -1379,18 +1399,22 @@
1379
1399
  </carrierSelectionCodes>
1380
1400
  <smsServices>
1381
1401
  <!-- https://support.twitter.com/articles/20170024 -->
1382
- <!-- Added short code 285959 after a report that it is used for SMS services. -->
1402
+ <!-- Added short codes 28595, 285959 and 4828 after a report that it is used for SMS
1403
+ services. -->
1383
1404
  <nationalNumberPattern>
1384
1405
  2(?:
1385
1406
  7(?:
1386
1407
  330|
1387
1408
  878
1388
1409
  )|
1389
- 85959
1410
+ 85959?
1390
1411
  )|
1391
- 40404
1412
+ 4(?:
1413
+ 0404|
1414
+ 828
1415
+ )
1392
1416
  </nationalNumberPattern>
1393
- <possibleNumberPattern>\d{5,6}</possibleNumberPattern>
1417
+ <possibleNumberPattern>\d{4,6}</possibleNumberPattern>
1394
1418
  <exampleNumber>27878</exampleNumber>
1395
1419
  </smsServices>
1396
1420
  </territory>
@@ -3668,18 +3692,23 @@
3668
3692
  <!-- United Kingdom -->
3669
3693
  <territory id="GB">
3670
3694
  <generalDesc>
3671
- <nationalNumberPattern>[1-4679]\d{2,5}</nationalNumberPattern>
3695
+ <nationalNumberPattern>[1-467-9]\d{2,5}</nationalNumberPattern>
3672
3696
  <possibleNumberPattern>\d{3,6}</possibleNumberPattern>
3673
3697
  </generalDesc>
3674
3698
  <shortCode>
3675
- <!-- This is a list of the ones that can be called (as opposed to numbers used by text
3676
- delivery or data services). -->
3677
3699
  <nationalNumberPattern>
3678
3700
  1(?:
3679
3701
  0[01]|
3680
3702
  1(?:
3681
3703
  [12]|
3682
- [68]\d{3}
3704
+ 6(?:
3705
+ 000|
3706
+ 1(?:
3707
+ 11|
3708
+ 23
3709
+ )
3710
+ )|
3711
+ 8\d{3}
3683
3712
  )|
3684
3713
  2[123]|
3685
3714
  33|
@@ -3687,13 +3716,20 @@
3687
3716
  1|
3688
3717
  7\d
3689
3718
  )|
3690
- 5\d|
3691
- 70\d|
3719
+ 5(?:
3720
+ \d|
3721
+ 71
3722
+ )|
3723
+ 7(?:
3724
+ 0\d|
3725
+ [56]0
3726
+ )|
3692
3727
  800\d|
3693
3728
  9[15]
3694
3729
  )|
3695
3730
  2(?:
3696
- 02|
3731
+ 02(?:02)?|
3732
+ 1300|
3697
3733
  2(?:
3698
3734
  02|
3699
3735
  11|
@@ -3701,9 +3737,13 @@
3701
3737
  )|
3702
3738
  3(?:
3703
3739
  02|
3740
+ 336|
3704
3741
  45
3705
3742
  )|
3706
- 425
3743
+ 4(?:
3744
+ 25|
3745
+ 8
3746
+ )
3707
3747
  )|
3708
3748
  3[13]3|
3709
3749
  4(?:
@@ -3712,8 +3752,19 @@
3712
3752
  44[45]|
3713
3753
  5\d
3714
3754
  )|
3715
- 650|
3716
- 789|
3755
+ 6(?:
3756
+ 50|
3757
+ \d{4}
3758
+ )|
3759
+ 7(?:
3760
+ 0\d{3}|
3761
+ 8(?:
3762
+ 9|
3763
+ \d{3}
3764
+ )|
3765
+ 9\d{3}
3766
+ )|
3767
+ 8\d{4}|
3717
3768
  9(?:
3718
3769
  01|
3719
3770
  99
@@ -3742,19 +3793,56 @@
3742
3793
  <possibleNumberPattern>\d{6}</possibleNumberPattern>
3743
3794
  <exampleNumber>116000</exampleNumber>
3744
3795
  </expandedEmergency>
3796
+ <!-- http://www.short-codes.com/codes/browse/70000-70999/100_1 says that the service is not
3797
+ available as voice for any of these prefixes for at least some carriers; for carriers
3798
+ where it is listed as possible it isn't actually activated for any short-code at this
3799
+ time. This is the same for the 78, 79, 80 and 81 prefixes. -->
3800
+ <smsServices>
3801
+ <nationalNumberPattern>
3802
+ 2(?:
3803
+ 0202|
3804
+ 1300
3805
+ )|
3806
+ 7\d{4}|
3807
+ 8[01]\d{3}
3808
+ </nationalNumberPattern>
3809
+ <possibleNumberPattern>\d{5}</possibleNumberPattern>
3810
+ <exampleNumber>20202</exampleNumber>
3811
+ </smsServices>
3745
3812
  <tollFree>
3746
3813
  <nationalNumberPattern>
3747
- 116(?:
3748
- 000|
3749
- 1(?:
3750
- 11|
3751
- 23
3752
- )
3753
- )
3814
+ 1(?:
3815
+ 16\d{3}|
3816
+ 7[56]0|
3817
+ 8000
3818
+ )|
3819
+ 2(?:
3820
+ 202|
3821
+ 48
3822
+ )|
3823
+ 4444
3754
3824
  </nationalNumberPattern>
3755
- <possibleNumberPattern>\d{6}</possibleNumberPattern>
3825
+ <possibleNumberPattern>\d{3,6}</possibleNumberPattern>
3756
3826
  <exampleNumber>116000</exampleNumber>
3757
3827
  </tollFree>
3828
+ <carrierSpecific>
3829
+ <nationalNumberPattern>
3830
+ 1(?:
3831
+ 571|
3832
+ 7[56]0
3833
+ )|
3834
+ 2(?:
3835
+ 02(?:02)?|
3836
+ 1300|
3837
+ 3336|
3838
+ 48
3839
+ )|
3840
+ 4444|
3841
+ 901
3842
+ </nationalNumberPattern>
3843
+ <possibleNumberPattern>\d{3,5}</possibleNumberPattern>
3844
+ <exampleNumber>1571</exampleNumber>
3845
+ </carrierSpecific>
3758
3846
  </territory>
3759
3847
 
3760
3848
  <!-- Grenada -->
@@ -4731,8 +4819,8 @@
4731
4819
  <!-- http://en.wikipedia.org/wiki/%2B91 -->
4732
4820
  <territory id="IN">
4733
4821
  <generalDesc>
4734
- <nationalNumberPattern>[125]\d{2,4}</nationalNumberPattern>
4735
- <possibleNumberPattern>\d{3,5}</possibleNumberPattern>
4822
+ <nationalNumberPattern>[125]\d{2,6}</nationalNumberPattern>
4823
+ <possibleNumberPattern>\d{3,7}</possibleNumberPattern>
4736
4824
  </generalDesc>
4737
4825
  <shortCode>
4738
4826
  <nationalNumberPattern>
@@ -4742,7 +4830,11 @@
4742
4830
  298
4743
4831
  )|
4744
4832
  2611|
4745
- 53000
4833
+ 5(?:
4834
+ 143[46]|
4835
+ 3000|
4836
+ 757555
4837
+ )
4746
4838
  </nationalNumberPattern>
4747
4839
  <exampleNumber>108</exampleNumber>
4748
4840
  </shortCode>
@@ -4751,6 +4843,17 @@
4751
4843
  <nationalNumberPattern>53000</nationalNumberPattern>
4752
4844
  <possibleNumberPattern>\d{5}</possibleNumberPattern>
4753
4845
  </carrierSpecific>
4846
+ <standardRate>
4847
+ <!-- Cost of SMS to 51434, 51436 and 5757555 is of standard rate. -->
4848
+ <nationalNumberPattern>
4849
+ 5(?:
4850
+ 143[46]|
4851
+ 757555
4852
+ )
4853
+ </nationalNumberPattern>
4854
+ <possibleNumberPattern>\d{5,7}</possibleNumberPattern>
4855
+ <exampleNumber>5757555</exampleNumber>
4856
+ </standardRate>
4754
4857
  <emergency>
4755
4858
  <nationalNumberPattern>
4756
4859
  1(?:
@@ -4763,6 +4866,15 @@
4763
4866
  <possibleNumberPattern>\d{3,4}</possibleNumberPattern>
4764
4867
  <exampleNumber>108</exampleNumber>
4765
4868
  </emergency>
4869
+ <smsServices>
4870
+ <nationalNumberPattern>
4871
+ 5(?:
4872
+ 143[46]|
4873
+ 757555
4874
+ )
4875
+ </nationalNumberPattern>
4876
+ <possibleNumberPattern>\d{5,7}</possibleNumberPattern>
4877
+ </smsServices>
4766
4878
  </territory>
4767
4879
 
4768
4880
  <!-- British Indian Ocean Territory / Diego Garcia -->
@@ -7287,17 +7399,29 @@
7287
7399
  <!-- Norway -->
7288
7400
  <!-- Country calling code shared with Svalbard. -->
7289
7401
  <!-- http://www.npt.no/npt/numsys/E.164.pdf -->
7402
+ <!-- http://www.nkom.no/npt/numsys/E.1643sifret_en.pdf -->
7290
7403
  <territory id="NO">
7291
7404
  <generalDesc>
7292
7405
  <nationalNumberPattern>1\d{2,5}</nationalNumberPattern>
7293
7406
  <possibleNumberPattern>\d{3,6}</possibleNumberPattern>
7294
7407
  </generalDesc>
7295
7408
  <shortCode>
7409
+ <!-- 143 is assigned but not visible to end users, no other online evidence
7410
+ found, hence not included -->
7296
7411
  <nationalNumberPattern>
7297
- 11(?:
7298
- [023]|
7299
- 6117
7300
- )
7412
+ 1(?:
7413
+ 1(?:
7414
+ [0239]|
7415
+ 6117
7416
+ )|
7417
+ 2[048]|
7418
+ 4(?:
7419
+ 12|
7420
+ [59]
7421
+ )|
7422
+ 7[57]|
7423
+ 90
7424
+ )
7301
7425
  </nationalNumberPattern>
7302
7426
  <exampleNumber>112</exampleNumber>
7303
7427
  </shortCode>
@@ -7312,7 +7436,12 @@
7312
7436
  <exampleNumber>112</exampleNumber>
7313
7437
  </emergency>
7314
7438
  <expandedEmergency>
7315
- <nationalNumberPattern>116117</nationalNumberPattern>
7439
+ <nationalNumberPattern>
7440
+ 1(?:
7441
+ 16117|
7442
+ 412
7443
+ )
7444
+ </nationalNumberPattern>
7316
7445
  <possibleNumberPattern>\d{6}</possibleNumberPattern>
7317
7446
  <exampleNumber>116117</exampleNumber>
7318
7447
  </expandedEmergency>
@@ -8371,7 +8500,8 @@
8371
8500
  111
8372
8501
  )
8373
8502
  )|
8374
- 5[058]
8503
+ 5[058]|
8504
+ 8\d{3}
8375
8505
  )
8376
8506
  </nationalNumberPattern>
8377
8507
  <possibleNumberPattern>\d{3,6}</possibleNumberPattern>
@@ -9589,9 +9719,11 @@
9589
9719
  <!-- South Africa -->
9590
9720
  <!-- http://www.itu.int/dms_pub/itu-t/oth/02/02/T02020000C10001PDFE.pdf -->
9591
9721
  <!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_South_Africa -->
9722
+ <!-- Check http://smscode.co.za/index.asp for verification of short codes and cost
9723
+ information. -->
9592
9724
  <territory id="ZA">
9593
9725
  <generalDesc>
9594
- <nationalNumberPattern>1\d{2,4}</nationalNumberPattern>
9726
+ <nationalNumberPattern>[14]\d{2,4}</nationalNumberPattern>
9595
9727
  <possibleNumberPattern>\d{3,5}</possibleNumberPattern>
9596
9728
  </generalDesc>
9597
9729
  <shortCode>
@@ -9602,10 +9734,16 @@
9602
9734
  77
9603
9735
  )|
9604
9736
  12
9605
- )
9737
+ )|
9738
+ 47751
9606
9739
  </nationalNumberPattern>
9607
9740
  <exampleNumber>10111</exampleNumber>
9608
9741
  </shortCode>
9742
+ <standardRate>
9743
+ <nationalNumberPattern>47751</nationalNumberPattern>
9744
+ <possibleNumberPattern>\d{5}</possibleNumberPattern>
9745
+ <exampleNumber>47751</exampleNumber>
9746
+ </standardRate>
9609
9747
  <emergency>
9610
9748
  <nationalNumberPattern>
9611
9749
  1(?:
@@ -9618,6 +9756,12 @@
9618
9756
  </nationalNumberPattern>
9619
9757
  <exampleNumber>10111</exampleNumber>
9620
9758
  </emergency>
9759
+ <smsServices>
9760
+ <!-- Added SMS service short code 47751 as per online evidences found. -->
9761
+ <nationalNumberPattern>47751</nationalNumberPattern>
9762
+ <possibleNumberPattern>\d{5}</possibleNumberPattern>
9763
+ <exampleNumber>47751</exampleNumber>
9764
+ </smsServices>
9621
9765
  </territory>
9622
9766
 
9623
9767
  <!-- Zambia -->
@@ -12,12 +12,14 @@
12
12
  # See the License for the specific language governing permissions and
13
13
  # limitations under the License.
14
14
 
15
+ 25561|Dovetel
15
16
  25562|Viettel
16
17
  25565|tiGO
17
18
  25566|SMILE
18
19
  25567|tiGO
19
20
  25568|Airtel
20
21
  25571|tiGO
22
+ 25572|Mycel
21
23
  25573|Tanzania Telecom
22
24
  25574|Vodacom
23
25
  25575|Vodacom
@@ -15,15 +15,15 @@
15
15
  # Data from Wikipedia:
16
16
  # http://en.wikipedia.org/wiki/Telephone_numbers_in_Armenia#Mobile_network_codes
17
17
 
18
- 37441|Orange
18
+ 37441|Ucom
19
19
  37443|Beeline
20
20
  37449|VivaCell-MTS
21
- 37455|Orange
21
+ 37455|Ucom
22
22
  37477|VivaCell-MTS
23
23
  37491|Beeline
24
24
  37493|VivaCell-MTS
25
25
  37494|VivaCell-MTS
26
- 37495|Orange
26
+ 37495|Ucom
27
27
  37496|Beeline
28
28
  37498|VivaCell-MTS
29
29
  37499|Beeline