On 31/01/17 11:44, Daniel-Constantin Mierla wrote:
Hello,
On 31/01/2017 11:08, Daniel Pocock wrote:
Hi,
Are there any public databases of dial plan information? Are there any
schemas (e.g. XML / XSD) useful for describing arbitrary dial plans from
different carriers around the world?
The type of things that I'm interested in:
- being able to translate any local number to E.164 (if possible)
- knowing the expected length (or range of lengths) for different numbers
- being able to recognize numbers that can't be translated to E.164
(e.g. the emergency numbers)
- being able to classify specific types of number that usually have a
carrier-specific or country-specific meaning (e.g. classifying numbers
as directory assistance, customer service, emergency)
I'm familiar with Google's libphonenumber, although it is not a
database, rather, it is a library that has dial plan logic in Java. It
supports many of the things I want for numbers that can be translated to
E.164 and country-level dial plans, but not local dial plans (e.g.
dialing a London number without the 020 area code).
I was looking for something similar several days ago, but besides the
libphonenumber I couldn't find much out there.
-
http://lists.sip-router.org/pipermail/sr-users/2017-January/095741.html
I'll see where I end up as I have a project needing such information.
Sorry I missed that email - for most of what you describe,
libphonenumber may be quite useful.
The developers quite open to community collaboration (it is hard to
track codes from so many countries without a bit of crowdsourcing), they
are also very close to where I am based in Zurich, I've met them in
person a couple of times. Maybe they would accept patches extending
their code to do things that they don't currently implement
As an example, their code is aimed at mobile (Android) and people
typically dial complete numbers on mobile devices. For systems where
overlapped dialing is supported (e.g. SIP 484 responses), it would be
useful to have an extra API method to return a boolean value to indicate
when more digits are needed. They have the data for that inside
libphonenumber, but as far as I know there is no public method to check
it in that context.
It could also be useful to embed libphonenumber as a database function
in PostgreSQL or MySQL so it can be used in SQL queries. Then people
could build views on the data and they wouldn't even realize they were
using a library to process each row.
Regards,
Daniel