← Volver al índice de módulos

enum

Enum module implements [i_]enum_query functions that make an enum query based on the user part of the current Request-URI. These functions assume that the Request URI user part consists of an internat
🛠️ Utilidades y Varios Kamailio 6.1 10 parámetros 8 funciones

Descripción general

Enum module implements [i_]enum_query functions that make an enum query based on the user part of the current Request-URI. These functions assume that the Request URI user part consists of an international phone number of the form +decimal-digits, where the number of digits is at least 2 and at most 20. Out of this number enum_query forms a domain name, where the digits are in reverse order and separated by dots followed by domain suffix that by default is “e164.arpa.”. For example, if the user part is +35831234567, the domain name will be “7.6.5.4.3.2.1.3.8.5.3.e164.arpa.”. i_enum_query operates in a similar fashion. The only difference is that it adds a label (default "i") to branch off from the default, user-ENUM tree to an infrastructure ENUM tree. After forming the domain name, enum_query queries DNS for enum NAPTR records. From the possible responses enum_query chooses those records, whose flags field has string value "u", and whose services field has string value "e2u+[service:]sip" or "e2u+type[:subtype][+type[:subtype]...]" (case is ignored in both cases), and whose regexp field is of the form !pattern!replacement!. Then enum_query sorts the chosen NAPTR records based on their <order, preference>. After sorting, enum_query replaces the current Request URI by applying the regular expression of the most preferred NAPTR record to its user part and appends to the request new branches by applying regexp of each remaining NAPTR record to the user part of the current Reques

Documentación oficial: https://www.kamailio.org/docs/modules/stable/modules/enum.html
Código fuente: https://github.com/kamailio/kamailio/tree/master/src/modules/enum

Parámetros de configuración

ParámetroTipoDescripción
domain_suffix string 3.2. tel_uri_params (string) 3.3. i_enum_suffix (string) 3.4. branchlabel (string) 3.5. bl_algorithm (string)
tel_uri_params string 3.3. i_enum_suffix (string) 3.4. branchlabel (string) 3.5. bl_algorithm (string)
i_enum_suffix string 3.4. branchlabel (string) 3.5. bl_algorithm (string)
branchlabel string 3.5. bl_algorithm (string)
bl_algorithm string 3.1. domain_suffix (string)
domain_suffix string The domain suffix to be added to the domain name obtained from the digits of an E164 number. Can be overridden by a parameter to enum_query.
tel_uri_params string A string whose contents is appended to each new tel URI in the request as tel URI parameters.
i_enum_suffix string The domain suffix to be used for i_enum_query() lookups. Can be overridden by a parameter to i_enum_query.
branchlabel string This parameter determines which label i_enum_query() will use to branch off to the infrastructure ENUM tree.
bl_algorithm string This parameter determines which algorithm the i_enum_query() function will use to select the position in the DNS tree where the infrastructure tree branches off the user ENUM tree.

Funciones exportadas

enum_query(["suffix" [,"service"]])

4.2. enum_pv_query("pvar" [,"suffix" [,"service"]]) 4.3. i_enum_query(["suffix" [,"service"]]) 4.4. is_from_user_enum()

enum_pv_query("pvar" [,"suffix" [,"service"]])

4.3. i_enum_query(["suffix" [,"service"]]) 4.4. is_from_user_enum()

i_enum_query(["suffix" [,"service"]])

4.4. is_from_user_enum()

is_from_user_enum()

4.1. enum_query(["suffix" [,"service"]])

enum_query(["suffix" [,"service"]])

The function performs an enum query and rewrites the Request-URI with the result of the query. See Section 1, “Overview” for more information.

enum_pv_query("pvar" [,"suffix" [,"service"]])

The function performs an enum query on E.164 number stored in its first argument and rewrites the Request-URI with the result of the query. See Section 1, “Overview” for more information.

i_enum_query(["suffix" [,"service"]])

The function performs an enum query and rewrites the Request-URI with the result of the query. This is the Infrastructure-ENUM version of enum_query(). The only difference to enum_query() is in the calculation of the FQDN where NAPTR records are look

is_from_user_enum()

Checks if the user part of from URI is found in an enum lookup. Returns 1 if yes and -1 if not.

Autores y contribuidores

Juha Heinanen <jh@song.fi>Otmar Lendl <lendl@nic.at>

Copyright © 2002, 2003 Juha Heinanen

Módulos relacionados

auth_web3 auth_xkeys avp avpops benchmark blst call_control call_obj