Developer Docs
ENUM stands for Electronic Numbering Mapping. With it, you can translate telephone numbers in E.164 format into a format that can be used in Internet communications.
The background process for translating an MSISDN into ENUM format is to:
e164.arpa
to the end.For example, an MSISDN in E.164 format would be input as +123456789012.
Using ENUM, it would translate to: 2.1.0.9.8.7.6.5.4.3.2.1.e164.arpa.
All ENUM queries require authentication. This is essential for the ENUM to identify which user is making the call and return the appropriate results, as well as for security reasons. For this purpose, the ENUM API uses the client’s IP address and port for authentication.
During the implementation, BSG will provide its IP addresses for querying the Supplier ENUM service.
The parameters used in addition to IP address and port number are:
Parameter | Description |
NAPTR | The record type used |
e164.arpa | The domain |
Please find the IP address and port number for our ENUM Lookup Server in the table below. The only identifier needed to connect is the IP address you connect from.
Number Lookup ENUM Server | Host:Port |
Primary MNP | 141.95.255.235: 5003 |
Primary HLR | 141.95.255.235: 5001 |
Test MNP | 141.95.255.235: 5004 |
Test HLR | 141.95.255.235: 5002 |
Example of ENUM Query from BSG MNP Server:
dig -p 5003 @141.95.255.235 X.X.3.2.9.6.1.3.6.0.8.3.e164 -t naptr
Query would be then for NAPTR record for X.X.3.2.9.6.1.3.6.0.8.3.e164
A successful query response will return NAPTR record with Operator’s MCC and MNC or SPID in Answer section:
; <<>> DiG 9.18.1-1ubuntu1.2-Ubuntu <<>> -p 5003 @141.95.255.235 X.X.3.2.9.6.1.3.6.0.8.3.e164 -t naptr
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 53336
;; flags: qr; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;X.X.3.2.9.6.1.3.6.0.8.3.e164. IN NAPTR
;; ANSWER SECTION:
X.X.3.2.9.6.1.3.6.0.8.3.e164. 300 IN NAPTR 100 10 "U" "E2U+pstn:tel" "!^(.*)$!<result:1;mcc:255;mnc:06;status:active>!" .
;; Query time: 23 msec
;; SERVER: 141.95.255.235#5003(141.95.23.137) (UDP)
;; WHEN: Thu Nov 10 14:42:11 EET 2022
;; MSG SIZE rcvd: 127
Our SMS Platform supports the following combination of response fields:
Example of ENUM Query from BSG MNP Server:
dig -p 5001 @141.95.255.235 X.X.3.2.9.6.1.3.6.0.8.3.e164 -t naptr
Query would be then for NAPTR record for X.X.3.2.9.6.1.3.6.0.8.3.e164
; <<>> DiG 9.18.1-1ubuntu1.2-Ubuntu <<>> -p 5001 @141.95.255.235 2.1.3.2.9.6.1.3.6.0.8.3.e164 -t naptr
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 22152
;; flags: qr; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;X.X.3.2.9.6.1.3.6.0.8.3.e164. IN NAPTR
;; ANSWER SECTION:
X.X.3.2.9.6.1.3.6.0.8.3.e164. 300 IN NAPTR 100 10 "U" "E2U+pstn:tel" "!^(.*)$!<error:0;country_name:Ukraine;brand:lifecell;brand_name:lifecell LLC;msisdn:3806316923XX;network:25506;status:active>!" .
;; Query time: 256 msec
;; SERVER: 141.95.255.235#5001(141.95.255.235) (UDP)
;; WHEN: Tue Nov 10 14:42:21 EET 2022
;; MSG SIZE rcvd: 205
All successful requests have a code: result=1.
All requests with errors have a code: error=1 and error description.