-
Type:
Bug
-
Status: Closed
-
Priority:
Minor
-
Resolution: Fixed
-
Affects Version/s: 15.0.2.32
-
Fix Version/s: 15.0.2.33
-
Component/s: CID Superfecta
-
Labels:None
-
ToDo:
-
Distro Version:15.0.17.24
-
Distro:FreePBX Distro
-
Module Fix Version:
I've enabled CID Superfecta on FreePBX 15.0.17.24, and enabled the "Say No to 0870" data source.
Superfecta is rejecting valid UK numbers - see this example from running Debug/Test Run Scheme:
{{-> Executing Say No To 0870 UK
Skipping Source - Non UK number: 00443337591018
result took 0.0011 seconds. }}
This number is a valid UK non-geographic number of exactly the sort that the Say No To 0870 database is intended to look up...
The code responsible for the UK validity check ( https://github.com/FreePBX/superfecta/blob/release/16.0/includes/superfecta_base.php#L667 ) seems to be overly strict on its requirements, and white-lists STD (area/trunk) codes. This is discouraged by Ofcom, the UK's telecommunications regulator.
The UK's national telephone number plan is published at https://www.ofcom.org.uk/__data/assets/pdf_file/0013/102613/national-numbering-plan.pdf - linked from https://www.ofcom.org.uk/phones-telecoms-and-internet/information-for-industry/numbering .
As FreePBX will only see either a fully-qualified number with international dialing code (00441234567890) or a fully-qualified UK number with STD/area code (01234 567890), the correct match rules can be represented in the form of a fairly simple list of dial patterns:
Match pattern | Function |
---|---|
0[12]XX. | Geographic with STD code - 01 and 02 |
03XX. | UK-wide non-geographic charged at geographic rates - 03 |
05[56]XX. | Corporate and VOIP phone numbers Note: 0500 Freephone withdrawn in 2017 |
07[123456789]XX. | Mobile numbers and pagers |
080[08]XX. | Freephone - 0800 and 0808 |
082XX. | Internet for Schools - 082 |
084[345]XX. | Non-geographic "local rate" - 0843/0844/0845 |
087[0123]XX. | Non-geographic "national rate" - 0870/0871/0872/0873 |
00XX. | International - 00 followed by country code |
116XXX | 116xxx: services of social value Ofcom has consulted on these but has yet to assign them to a service operator. |
999 | Emergency services (free) |
1XX | Three-digit 1-numbers: 100 (Operator) 101 (Police non-emergency, 15p/call) 105 (National Power Cut Service, free) 111 (NHS urgent-care advice, free) 112 (Emergency, alt. of 999, free) 119 (NHS COVID-19 Test & Trace, free) 123 (talking clock, charges vary) 150 (operator customer services, charges vary) 155 (international operator, charges vary) |
Premium rate services | |
070XX. | Personal number services (can be expensive) |
09XX. | Premium Rate numbers |
These are numbers as dialed on a UK phone keypad - so in international form, the initial zero would be substituted with "0044". That is to say, "01234 567890" would become "00441234567890".
Could the rules be adjusted to follow the UK number plan, and thus recognise more valid UK numbers?