phonelib 0.6.3 → 0.6.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (92) hide show
  1. checksums.yaml +4 -4
  2. data/data/extended_data.dat +0 -0
  3. data/data/libphonenumber/README.md +1 -1
  4. data/data/libphonenumber/cpp/CMakeLists.txt +1 -1
  5. data/data/libphonenumber/cpp/src/phonenumbers/geocoding/phonenumber_offline_geocoder.cc +12 -2
  6. data/data/libphonenumber/cpp/src/phonenumbers/lite_metadata.cc +7951 -7937
  7. data/data/libphonenumber/cpp/src/phonenumbers/metadata.cc +8658 -8642
  8. data/data/libphonenumber/cpp/src/phonenumbers/phonenumberutil.cc +30 -3
  9. data/data/libphonenumber/cpp/src/phonenumbers/phonenumberutil.h +14 -5
  10. data/data/libphonenumber/cpp/src/phonenumbers/short_metadata.cc +1526 -1523
  11. data/data/libphonenumber/cpp/src/phonenumbers/test_metadata.cc +604 -590
  12. data/data/libphonenumber/cpp/test/phonenumbers/geocoding/phonenumber_offline_geocoder_test.cc +9 -0
  13. data/data/libphonenumber/cpp/test/phonenumbers/phonenumberutil_test.cc +24 -5
  14. data/data/libphonenumber/java/build.xml +0 -30
  15. data/data/libphonenumber/java/carrier/pom.xml +4 -4
  16. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/212_en +0 -0
  17. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/251_en +0 -0
  18. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/382_en +0 -0
  19. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/421_en +0 -0
  20. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/852_zh +0 -0
  21. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/852_zh_Hant +0 -0
  22. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/86_en +0 -0
  23. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/86_zh +0 -0
  24. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/86_zh_Hant +0 -0
  25. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/91_en +0 -0
  26. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/963_en +0 -0
  27. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/config +0 -0
  28. data/data/libphonenumber/java/demo/pom.xml +5 -5
  29. data/data/libphonenumber/java/geocoder/pom.xml +4 -4
  30. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoder.java +2 -13
  31. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/212_en +0 -0
  32. data/data/libphonenumber/java/geocoder/test/com/google/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoderTest.java +7 -0
  33. data/data/libphonenumber/java/geocoder/test/com/google/i18n/phonenumbers/geocoding/testing_data/82_en +0 -0
  34. data/data/libphonenumber/java/internal/prefixmapper/pom.xml +3 -3
  35. data/data/libphonenumber/java/lib/protobuf-javanano-3.0.0-alpha-7.jar +0 -0
  36. data/data/libphonenumber/java/lib/protobuf-javanano-readme.md +20 -0
  37. data/data/libphonenumber/java/libphonenumber/pom.xml +6 -43
  38. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/MetadataManager.java +66 -41
  39. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/MultiFileMetadataSourceImpl.java +9 -32
  40. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/PhoneNumberUtil.java +40 -11
  41. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/SingleFileMetadataSourceImpl.java +19 -51
  42. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CO +0 -0
  43. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EH +0 -0
  44. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ET +0 -0
  45. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IN +0 -0
  46. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JM +0 -0
  47. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MA +0 -0
  48. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ME +0 -0
  49. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SK +0 -0
  50. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SN +0 -0
  51. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SY +0 -0
  52. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZM +0 -0
  53. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IN +0 -0
  54. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ZA +0 -0
  55. data/data/libphonenumber/java/libphonenumber/test/com/google/i18n/phonenumbers/PhoneNumberUtilTest.java +14 -1
  56. data/data/libphonenumber/java/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_CN +0 -0
  57. data/data/libphonenumber/java/pom.xml +1 -1
  58. data/data/libphonenumber/java/release_notes.txt +25 -0
  59. data/data/libphonenumber/javascript/i18n/phonenumbers/demo-compiled.js +88 -88
  60. data/data/libphonenumber/javascript/i18n/phonenumbers/metadata.js +21 -19
  61. data/data/libphonenumber/javascript/i18n/phonenumbers/metadatafortesting.js +7 -5
  62. data/data/libphonenumber/javascript/i18n/phonenumbers/metadatalite.js +21 -19
  63. data/data/libphonenumber/resources/PhoneNumberMetadata.xml +86 -48
  64. data/data/libphonenumber/resources/PhoneNumberMetadataForTesting.xml +33 -2
  65. data/data/libphonenumber/resources/ShortNumberMetadata.xml +24 -8
  66. data/data/libphonenumber/resources/carrier/en/212.txt +16 -3
  67. data/data/libphonenumber/resources/carrier/en/251.txt +1 -0
  68. data/data/libphonenumber/resources/carrier/en/382.txt +29 -0
  69. data/data/libphonenumber/resources/carrier/en/421.txt +1 -0
  70. data/data/libphonenumber/resources/carrier/en/86.txt +13 -1
  71. data/data/libphonenumber/resources/carrier/en/91.txt +1 -0
  72. data/data/libphonenumber/resources/carrier/en/963.txt +50 -0
  73. data/data/libphonenumber/resources/carrier/zh/852.txt +283 -0
  74. data/data/libphonenumber/resources/carrier/zh/86.txt +64 -0
  75. data/data/libphonenumber/resources/carrier/zh_Hant/852.txt +283 -0
  76. data/data/libphonenumber/resources/carrier/zh_Hant/86.txt +64 -0
  77. data/data/libphonenumber/resources/geocoding/en/212.txt +1 -1
  78. data/data/libphonenumber/resources/test/geocoding/en/82.txt +1 -0
  79. data/data/libphonenumber/tools/java/common/pom.xml +4 -9
  80. data/data/libphonenumber/tools/java/cpp-build/pom.xml +4 -31
  81. data/data/libphonenumber/tools/java/cpp-build/target/cpp-build-1.0-SNAPSHOT-jar-with-dependencies.jar +0 -0
  82. data/data/libphonenumber/tools/java/java-build/pom.xml +4 -9
  83. data/data/libphonenumber/tools/java/java-build/target/java-build-1.0-SNAPSHOT-jar-with-dependencies.jar +0 -0
  84. data/data/phone_data.dat +0 -0
  85. data/lib/phonelib/phone.rb +1 -1
  86. data/lib/phonelib/version.rb +1 -1
  87. metadata +18 -8
  88. data/data/libphonenumber/java/lib/com/google/protobuf/protobuf-java/2.6.1/protobuf-java-2.6.1.jar +0 -0
  89. data/data/libphonenumber/java/lib/com/google/protobuf/protobuf-java/2.6.1/protobuf-java-2.6.1.pom +0 -9
  90. data/data/libphonenumber/java/lib/com/google/protobuf/protobuf-java/maven-metadata-local.xml +0 -12
  91. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/SingleFilePhoneNumberMetadataProto +0 -0
  92. data/data/libphonenumber/java/libphonenumber/test/com/google/i18n/phonenumbers/data/SingleFilePhoneNumberMetadataProtoForTesting +0 -0
@@ -5335,12 +5335,13 @@
5335
5335
  <possibleNumberPattern>\d{8}</possibleNumberPattern>
5336
5336
  <exampleNumber>12345678</exampleNumber>
5337
5337
  </fixedLine>
5338
+ <!-- Added prefix 323 based on user report and online evidences. -->
5338
5339
  <mobile>
5339
5340
  <nationalNumberPattern>
5340
5341
  3(?:
5341
5342
  0[0-5]|
5342
5343
  1\d|
5343
- 2[0-2]|
5344
+ 2[0-3]|
5344
5345
  5[01]
5345
5346
  )\d{7}
5346
5347
  </nationalNumberPattern>
@@ -6931,7 +6932,7 @@
6931
6932
  <!-- Uses MA formatting rules and shares general description
6932
6933
  (non-geographical numbers for Morocco are still valid). -->
6933
6934
  <generalDesc>
6934
- <nationalNumberPattern>[5689]\d{8}</nationalNumberPattern>
6935
+ <nationalNumberPattern>[5-9]\d{8}</nationalNumberPattern>
6935
6936
  <!-- Closed numbering plan. -->
6936
6937
  <possibleNumberPattern>\d{9}</possibleNumberPattern>
6937
6938
  </generalDesc>
@@ -6943,10 +6944,15 @@
6943
6944
  numbers to be recognized as available from within Western Sahara. -->
6944
6945
  <mobile>
6945
6946
  <nationalNumberPattern>
6946
- 6(?:
6947
- 0[0-8]|
6948
- [12-79]\d|
6949
- 8[017]
6947
+ (?:
6948
+ 6(?:
6949
+ [0-79]\d|
6950
+ 8[0-247-9]
6951
+ )|
6952
+ 7(?:
6953
+ [07][07]|
6954
+ 6[12]
6955
+ )
6950
6956
  )\d{6}
6951
6957
  </nationalNumberPattern>
6952
6958
  <exampleNumber>650123456</exampleNumber>
@@ -6959,6 +6965,12 @@
6959
6965
  <nationalNumberPattern>89\d{7}</nationalNumberPattern>
6960
6966
  <exampleNumber>891234567</exampleNumber>
6961
6967
  </premiumRate>
6968
+ <voip>
6969
+ <!-- Putting VSAT numbers here. -->
6970
+ <nationalNumberPattern>5924[01]\d{4}</nationalNumberPattern>
6971
+ <possibleNumberPattern>\d{9}</possibleNumberPattern>
6972
+ <exampleNumber>592401234</exampleNumber>
6973
+ </voip>
6962
6974
  </territory>
6963
6975
 
6964
6976
  <!-- Eritrea -->
@@ -7244,10 +7256,10 @@
7244
7256
  <!-- The data here is not regularly updated by the Ethiopian authorities, and many more
7245
7257
  numbers are visible online than are reported in the ITU document. This pattern is
7246
7258
  therefore somewhat more relaxed than in the ITU document. According to the ETC,
7247
- 95[89] is assigned to some CDMA providers. Prefix 9[46] added after a user report.-->
7259
+ 95[89] is assigned to some CDMA providers. Prefix 9[468] added after a user report.-->
7248
7260
  <nationalNumberPattern>
7249
7261
  9(?:
7250
- [1-46]\d|
7262
+ [1-468]\d|
7251
7263
  5[89]
7252
7264
  )\d{6}
7253
7265
  </nationalNumberPattern>
@@ -10639,12 +10651,11 @@
10639
10651
  9[015689]
10640
10652
  )|
10641
10653
  4(?:
10642
- [02][1-9]|
10654
+ 0[1-9]|
10643
10655
  1[014-9]|
10644
- 3\d|
10656
+ [2389]|
10645
10657
  [47][017-9]|
10646
- 5[059]|
10647
- [89]
10658
+ 5[059]
10648
10659
  )|
10649
10660
  5(?:
10650
10661
  [034678]|
@@ -10743,6 +10754,7 @@
10743
10754
  4[08]
10744
10755
  )|
10745
10756
  2(?:
10757
+ 09|
10746
10758
  [1-7][089]|
10747
10759
  [89]
10748
10760
  )|
@@ -11228,8 +11240,8 @@
11228
11240
  numbers. It seems almost impossible to know for some of these numbers whether they are
11229
11241
  land-line or mobile, since the ranges overlap. We go to a maximum depth of five where
11230
11242
  necessary to distinguish between mobile and fixed-line numbers. Extra prefixes added:
11231
- 72878, 74599, 7601, 768[56], 7695, 8299, 8309. New prefixes were also added based on
11232
- the document provided from mobile carriers:
11243
+ 72878, 74209, 74599, 7601, 768[56], 7695, 8299, 8309. New prefixes were also added
11244
+ based on the document provided from mobile carriers:
11233
11245
  https://github.com/googlei18n/libphonenumber/issues/260 and
11234
11246
  https://github.com/googlei18n/libphonenumber/pull/692/ -->
11235
11247
  <nationalNumberPattern>
@@ -11273,6 +11285,7 @@
11273
11285
  4[08]
11274
11286
  )|
11275
11287
  2(?:
11288
+ 09|
11276
11289
  [1-7][089]|
11277
11290
  [89]\d
11278
11291
  )|
@@ -12213,14 +12226,16 @@
12213
12226
  <mobile>
12214
12227
  <!-- Adding 27, 28, 299, 31, 508, 527 and 566 as extra prefixes, as they have been found to
12215
12228
  be valid by sending SMSs and looking at online number lookup sites. Also added 50[3-79]
12216
- as we have found information online that the 50[3-9] range has been assigned to Digicel.
12217
-
12218
- Numbers have been found online for the following ranges 26x, 29x, 53x, 54x, 55x, 56x.
12219
- Most have mobile numbers online so we have put them under mobile but is possible
12220
- they are a mixture of fixed line and mobile. -->
12229
+ as we have found information online that the 50[3-9] range has been assigned to
12230
+ Digicel. Numbers have been found online for the following ranges 258, 26x, 29x, 53x,
12231
+ 54x, 55x, 56x. Most have mobile numbers online so we have put them under mobile but is
12232
+ possible they are a mixture of fixed line and mobile. -->
12221
12233
  <nationalNumberPattern>
12222
12234
  876(?:
12223
- 2[16-9]\d|
12235
+ 2(?:
12236
+ [16-9]\d|
12237
+ 58
12238
+ )|
12224
12239
  [348]\d{2}|
12225
12240
  5(?:
12226
12241
  0[3-9]|
@@ -15465,15 +15480,16 @@
15465
15480
  <references>
15466
15481
  <sourceUrl>http://www.itu.int/oth/T0202000090/en</sourceUrl>
15467
15482
  <sourceUrl>http://en.wikipedia.org/wiki/+212</sourceUrl>
15483
+ <sourceUrl>https://www.anrt.ma/sites/default/files/blocs_de_numeros_par_operateur_juillet_2016.pdf</sourceUrl>
15468
15484
  </references>
15469
15485
  <availableFormats>
15470
- <numberFormat pattern="([56]\d{2})(\d{6})">
15486
+ <numberFormat pattern="([5-7]\d{2})(\d{6})">
15471
15487
  <leadingDigits>
15472
15488
  5(?:
15473
15489
  2[015-7]|
15474
15490
  3[0-4]
15475
15491
  )|
15476
- 6
15492
+ [67]
15477
15493
  </leadingDigits>
15478
15494
  <format>$1-$2</format>
15479
15495
  </numberFormat>
@@ -15481,7 +15497,8 @@
15481
15497
  <leadingDigits>
15482
15498
  5(?:
15483
15499
  2[2-489]|
15484
- 3[5-9]
15500
+ 3[5-9]|
15501
+ 92
15485
15502
  )|
15486
15503
  892
15487
15504
  </leadingDigits>
@@ -15494,7 +15511,8 @@
15494
15511
  3(?:
15495
15512
  [5-79]|
15496
15513
  80
15497
- )
15514
+ )|
15515
+ 924
15498
15516
  )|
15499
15517
  892
15500
15518
  </leadingDigits>
@@ -15515,6 +15533,16 @@
15515
15533
  </leadingDigits>
15516
15534
  <format>$1-$2</format>
15517
15535
  </numberFormat>
15536
+ <!-- This format is added based on online references found. -->
15537
+ <numberFormat pattern="([5]\d{2})(\d{2})(\d{2})(\d{2})">
15538
+ <leadingDigits>
15539
+ 5(?:
15540
+ 4[067]|
15541
+ 5[03]
15542
+ )
15543
+ </leadingDigits>
15544
+ <format>$1 $2 $3 $4</format>
15545
+ </numberFormat>
15518
15546
  <numberFormat pattern="(8[09])(\d{7})">
15519
15547
  <leadingDigits>
15520
15548
  8(?:
@@ -15526,7 +15554,7 @@
15526
15554
  </numberFormat>
15527
15555
  </availableFormats>
15528
15556
  <generalDesc>
15529
- <nationalNumberPattern>[5689]\d{8}</nationalNumberPattern>
15557
+ <nationalNumberPattern>[5-9]\d{8}</nationalNumberPattern>
15530
15558
  <!-- Closed numbering plan. -->
15531
15559
  <possibleNumberPattern>\d{9}</possibleNumberPattern>
15532
15560
  </generalDesc>
@@ -15557,21 +15585,27 @@
15557
15585
  0\d|
15558
15586
  [89]0
15559
15587
  )
15560
- )
15588
+ )|
15589
+ (?:
15590
+ 4[067]|
15591
+ 5[03]
15592
+ )\d{2}
15561
15593
  )\d{4}
15562
15594
  </nationalNumberPattern>
15563
15595
  <exampleNumber>520123456</exampleNumber>
15564
15596
  </fixedLine>
15565
15597
  <!-- Also duplicated in Western Sahara, please ensure you update both. -->
15566
15598
  <mobile>
15567
- <!-- http://www.anrt.ma/sites/default/files/Blocs_de_numeros_par_operateur.pdf
15568
- Prefixes 69[0136] added based on numbers found online. -->
15569
- <!-- Added prefix 982 as per IR21 from the carrier. -->
15570
15599
  <nationalNumberPattern>
15571
- 6(?:
15572
- 0[0-8]|
15573
- [12-79]\d|
15574
- 8[017]
15600
+ (?:
15601
+ 6(?:
15602
+ [0-79]\d|
15603
+ 8[0-247-9]
15604
+ )|
15605
+ 7(?:
15606
+ [07][07]|
15607
+ 6[12]
15608
+ )
15575
15609
  )\d{6}
15576
15610
  </nationalNumberPattern>
15577
15611
  <exampleNumber>650123456</exampleNumber>
@@ -15584,6 +15618,12 @@
15584
15618
  <nationalNumberPattern>89\d{7}</nationalNumberPattern>
15585
15619
  <exampleNumber>891234567</exampleNumber>
15586
15620
  </premiumRate>
15621
+ <voip>
15622
+ <!-- Putting VSAT numbers here. -->
15623
+ <nationalNumberPattern>5924[01]\d{4}</nationalNumberPattern>
15624
+ <possibleNumberPattern>\d{9}</possibleNumberPattern>
15625
+ <exampleNumber>592401234</exampleNumber>
15626
+ </voip>
15587
15627
  </territory>
15588
15628
 
15589
15629
  <!-- Monaco -->
@@ -15822,12 +15862,10 @@
15822
15862
  <exampleNumber>30234567</exampleNumber>
15823
15863
  </fixedLine>
15824
15864
  <mobile>
15825
- <!-- Mobile numbers start with 600, 632, 661, 67, 68 or 69. -->
15826
15865
  <nationalNumberPattern>
15827
15866
  6(?:
15828
15867
  00\d|
15829
- 32\d|
15830
- [89]\d{2}|
15868
+ 3[24]\d|
15831
15869
  61\d|
15832
15870
  7(?:
15833
15871
  [0-8]\d|
@@ -15835,7 +15873,8 @@
15835
15873
  [3-9]|
15836
15874
  [0-2]\d
15837
15875
  )
15838
- )
15876
+ )|
15877
+ [89]\d{2}
15839
15878
  )\d{4}
15840
15879
  </nationalNumberPattern>
15841
15880
  <!-- According to ITU it is possible for the numbers to be between length 4-12
@@ -21373,7 +21412,7 @@
21373
21412
  <mobile>
21374
21413
  <!-- 948 isn't in the number pattern, but many examples using this have been found, so
21375
21414
  deeming it valid for now. 909[1-9] is assigned to carrier Juro as per online
21376
- references found. -->
21415
+ references found. 945 is assigned to Orange as per its carrier doc.-->
21377
21416
  <nationalNumberPattern>
21378
21417
  9(?:
21379
21418
  0(?:
@@ -21382,7 +21421,7 @@
21382
21421
  )|
21383
21422
  (?:
21384
21423
  1[0-24-9]|
21385
- 4[0489]|
21424
+ 4[04589]|
21386
21425
  50
21387
21426
  )\d
21388
21427
  )\d{5}
@@ -21541,7 +21580,7 @@
21541
21580
  <territory id="SN" countryCode="221" internationalPrefix="00">
21542
21581
  <references>
21543
21582
  <sourceUrl>http://www.itu.int/oth/T02020000B8/en</sourceUrl>
21544
- <sourceUrl>http://www.artpsenegal.net</sourceUrl>
21583
+ <sourceUrl>http://www.artpsenegal.net/index.php?option=com_content&amp;view=article&amp;id=50</sourceUrl>
21545
21584
  </references>
21546
21585
  <availableFormats>
21547
21586
  <!-- Using yellow pages and online telecom company formatting, rather than that implied in
@@ -21580,9 +21619,8 @@
21580
21619
  <mobile>
21581
21620
  <nationalNumberPattern>
21582
21621
  7(?:
21583
- [067]\d|
21622
+ [06-8]\d|
21584
21623
  21|
21585
- 8[0-46]|
21586
21624
  90
21587
21625
  )\d{6}
21588
21626
  </nationalNumberPattern>
@@ -22012,8 +22050,8 @@
22012
22050
  <nationalNumberPattern>
22013
22051
  9(?:
22014
22052
  22|
22015
- [35][0-8]|
22016
- 4\d|
22053
+ 3[0-8]|
22054
+ [45]\d|
22017
22055
  6[024-9]|
22018
22056
  88|
22019
22057
  9[0-489]
@@ -25051,12 +25089,12 @@
25051
25089
  <!-- Adding extra prefixes 50 and 6[1-57-9] since SMS messages have been successfully
25052
25090
  delivered to these numbers, and numbers like this can be found on the Internet. Adding
25053
25091
  prefix 960 based on information received from MTN Zambia. The 97 range has been
25054
- expanded based on their IR21 document, which states the range 97[1-9] is used. -->
25092
+ expanded based on their IR21 document, which states the range 97[1-9] is used.
25093
+ Added 95[3489] and 970 prefixes based on numbers found online. -->
25055
25094
  <nationalNumberPattern>
25056
25095
  9(?:
25057
- 5[05]|
25058
- 6\d|
25059
- 7[1-9]
25096
+ 5[034589]|
25097
+ [67]\d
25060
25098
  )\d{6}
25061
25099
  </nationalNumberPattern>
25062
25100
  <exampleNumber>955123456</exampleNumber>
@@ -236,8 +236,9 @@
236
236
  </territory>
237
237
 
238
238
  <!-- China -->
239
- <!-- Used to test as-you-type-formatter with complicated number format patterns. -->
240
- <territory id="CN" countryCode="86">
239
+ <!-- Used to test as-you-type-formatter with complicated number format patterns. Also used to
240
+ test that not all geographical mobile numbers have an area code. -->
241
+ <territory id="CN" countryCode="86" nationalPrefix="0">
241
242
  <availableFormats>
242
243
  <numberFormat nationalPrefixFormattingRule="$NP$FG" pattern="(\d{3})(\d{5,6})"
243
244
  carrierCodeFormattingRule="$CC $FG">
@@ -251,7 +252,37 @@
251
252
  </leadingDigits>
252
253
  <format>$1 $2</format>
253
254
  </numberFormat>
255
+ <!-- Note that mobile numbers do not get formatted with the national prefix. -->
256
+ <numberFormat nationalPrefixFormattingRule="$FG" pattern="(\d{3})(\d{8})">
257
+ <leadingDigits>1</leadingDigits>
258
+ <format>$1 $2</format>
259
+ </numberFormat>
254
260
  </availableFormats>
261
+ <generalDesc>
262
+ <nationalNumberPattern>
263
+ [1-7]\d{6,11}|
264
+ 8[0-357-9]\d{6,9}|
265
+ 9\d{7,10}
266
+ </nationalNumberPattern>
267
+ <possibleNumberPattern>\d{4,12}</possibleNumberPattern>
268
+ </generalDesc>
269
+ <fixedLine>
270
+ <nationalNumberPattern>[2-9]\d{10}</nationalNumberPattern>
271
+ <possibleNumberPattern>\d{11}</possibleNumberPattern>
272
+ <exampleNumber>91234567</exampleNumber>
273
+ </fixedLine>
274
+ <mobile>
275
+ <nationalNumberPattern>
276
+ 1(?:
277
+ [38]\d|
278
+ 4[57]|
279
+ 5[0-35-9]|
280
+ 7[0136-8]
281
+ )\d{8}
282
+ </nationalNumberPattern>
283
+ <possibleNumberPattern>\d{11}</possibleNumberPattern>
284
+ <exampleNumber>13123456789</exampleNumber>
285
+ </mobile>
255
286
  </territory>
256
287
 
257
288
  <!-- Christmas Islands -->
@@ -4831,7 +4831,10 @@
4831
4831
  )|
4832
4832
  2611|
4833
4833
  5(?:
4834
- 143[46]|
4834
+ 14(?:
4835
+ 2[5-9]|
4836
+ [34]\d
4837
+ )|
4835
4838
  3000|
4836
4839
  757555
4837
4840
  )
@@ -4844,10 +4847,13 @@
4844
4847
  <possibleNumberPattern>\d{5}</possibleNumberPattern>
4845
4848
  </carrierSpecific>
4846
4849
  <standardRate>
4847
- <!-- Cost of SMS to 51434, 51436 and 5757555 is of standard rate. -->
4850
+ <!-- Cost of SMS to 5142[5-9], 514[34]\d and 5757555 is of standard rate. -->
4848
4851
  <nationalNumberPattern>
4849
4852
  5(?:
4850
- 143[46]|
4853
+ 14(?:
4854
+ 2[5-9]|
4855
+ [34]\d
4856
+ )|
4851
4857
  757555
4852
4858
  )
4853
4859
  </nationalNumberPattern>
@@ -4869,7 +4875,10 @@
4869
4875
  <smsServices>
4870
4876
  <nationalNumberPattern>
4871
4877
  5(?:
4872
- 143[46]|
4878
+ 14(?:
4879
+ 2[5-9]|
4880
+ [34]\d
4881
+ )|
4873
4882
  757555
4874
4883
  )
4875
4884
  </nationalNumberPattern>
@@ -9723,7 +9732,7 @@
9723
9732
  information. -->
9724
9733
  <territory id="ZA">
9725
9734
  <generalDesc>
9726
- <nationalNumberPattern>[14]\d{2,4}</nationalNumberPattern>
9735
+ <nationalNumberPattern>[134]\d{2,4}</nationalNumberPattern>
9727
9736
  <possibleNumberPattern>\d{3,5}</possibleNumberPattern>
9728
9737
  </generalDesc>
9729
9738
  <shortCode>
@@ -9735,12 +9744,16 @@
9735
9744
  )|
9736
9745
  12
9737
9746
  )|
9747
+ 37567|
9738
9748
  47751
9739
9749
  </nationalNumberPattern>
9740
9750
  <exampleNumber>10111</exampleNumber>
9741
9751
  </shortCode>
9742
9752
  <standardRate>
9743
- <nationalNumberPattern>47751</nationalNumberPattern>
9753
+ <nationalNumberPattern>
9754
+ 37567|
9755
+ 47751
9756
+ </nationalNumberPattern>
9744
9757
  <possibleNumberPattern>\d{5}</possibleNumberPattern>
9745
9758
  <exampleNumber>47751</exampleNumber>
9746
9759
  </standardRate>
@@ -9757,8 +9770,11 @@
9757
9770
  <exampleNumber>10111</exampleNumber>
9758
9771
  </emergency>
9759
9772
  <smsServices>
9760
- <!-- Added SMS service short code 47751 as per online evidences found. -->
9761
- <nationalNumberPattern>47751</nationalNumberPattern>
9773
+ <!-- Added SMS service short code 37567 and 47751 as per online evidences found. -->
9774
+ <nationalNumberPattern>
9775
+ 37567|
9776
+ 47751
9777
+ </nationalNumberPattern>
9762
9778
  <possibleNumberPattern>\d{5}</possibleNumberPattern>
9763
9779
  <exampleNumber>47751</exampleNumber>
9764
9780
  </smsServices>