Kamailio database tables

Kamailio Development Team

Edited by

Henning Westerholt

Norman Brandinger


Table of Contents
1. Accounting
2. alias db
3. Subscriber
4. AVP Operations
5. carrierroute
6. Call-processing language
7. Dialog support
8. Matching and translation rules
9. Dispatcher
10. Domain
11. Domainpolicy
12. DRouting
13. Extensions
14. Group checking
15. HashTable Values
16. Instant Message Conference
17. Least-cost Routing
18. Message Storage
19. MTree keys-values
20. Prefix-Domain Translation
21. Permissions
22. Presence
23. PURPLE
24. Registrar
25. RLS
26. SIPtrace
27. Speed dial
28. Version
29. UAC remote registrations
30. SIP URI checks
31. User and global blacklists
32. User location
List of Tables
1-1. Table "acc"
1-2. Table "acc" indexes
1-3. Table "missed_calls"
1-4. Table "missed_calls" indexes
2-1. Table "dbaliases"
2-2. Table "dbaliases" indexes
3-1. Table "subscriber"
3-2. Table "subscriber" indexes
4-1. Table "usr_preferences"
4-2. Table "usr_preferences" indexes
5-1. Table "carrierroute"
5-2. Table "carrierfailureroute"
5-3. Table "carrier_name"
5-4. Table "domain_name"
6-1. Table "cpl"
6-2. Table "cpl" indexes
7-1. Table "dialog"
7-2. Table "dialog" indexes
8-1. Table "dialplan"
9-1. Table "dispatcher"
10-1. Table "domain"
10-2. Table "domain" indexes
11-1. Table "domainpolicy"
11-2. Table "domainpolicy" indexes
12-1. Table "dr_gateways"
12-2. Table "dr_rules"
12-3. Table "dr_gw_lists"
12-4. Table "dr_groups"
14-1. Table "grp"
14-2. Table "grp" indexes
14-3. Table "re_grp"
14-4. Table "re_grp" indexes
15-1. Table "htable"
16-1. Table "imc_rooms"
16-2. Table "imc_rooms" indexes
16-3. Table "imc_members"
16-4. Table "imc_members" indexes
17-1. Table "lcr_gw"
17-2. Table "lcr_gw" indexes
17-3. Table "lcr_rule_target"
17-4. Table "lcr_rule_target" indexes
17-5. Table "lcr_rule"
17-6. Table "lcr_rule" indexes
18-1. Table "silo"
18-2. Table "silo" indexes
19-1. Table "mtree"
19-2. Table "mtree" indexes
20-1. Table "pdt"
20-2. Table "pdt" indexes
21-1. Table "trusted"
21-2. Table "trusted" indexes
21-3. Table "address"
22-1. Table "presentity"
22-2. Table "presentity" indexes
22-3. Table "active_watchers"
22-4. Table "active_watchers" indexes
22-5. Table "watchers"
22-6. Table "watchers" indexes
22-7. Table "xcap"
22-8. Table "xcap" indexes
22-9. Table "pua"
23-1. Table "purplemap"
24-1. Table "aliases"
24-2. Table "aliases" indexes
25-1. Table "rls_presentity"
25-2. Table "rls_presentity" indexes
25-3. Table "rls_watchers"
25-4. Table "rls_watchers" indexes
26-1. Table "sip_trace"
26-2. Table "sip_trace" indexes
27-1. Table "speed_dial"
27-2. Table "speed_dial" indexes
28-1. Table "version"
29-1. Table "uacreg"
29-2. Table "uacreg" indexes
30-1. Table "uri"
30-2. Table "uri" indexes
31-1. Table "userblacklist"
31-2. Table "userblacklist" indexes
31-3. Table "globalblacklist"
31-4. Table "globalblacklist" indexes
32-1. Table "location"
32-2. Table "location" indexes

Chapter 1. Accounting

acc

This table is used by the ACC module to report on transactions - accounted calls. More information is available at: http://www.kamailio.org/docs/modules/devel/acc.html

missed_calls

This table is used by the ACC module for keeping track of missed calls. This table is similar to the 'acc' table. More information is available at: http://www.kamailio.org/docs/modules/devel/acc.html

Table 1-1. Table "acc"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

unique ID

method string 16 ''no  

A method is the primary function that a request is meant to invoke on a server.

from_tag string 64 ''no  

The tag parameter serves as a general mechanism to identify a dialog, which is the combination of the Call-ID along with two tags, one from participant in the dialog.

to_tag string 64 ''no  

The tag parameter serves as a general mechanism to identify a dialog, which is the combination of the Call-ID along with two tags, one from participant in the dialog.

callid string 64 ''no  

Call-ID header field uniquely identifies a particular invitation or all registrations of a particular client.

sip_code string 3 ''no  

SIP reply code

sip_reason string 32 ''no  

SIP reply reason

time datetime not specified  no  

Date and time when this record was written.

Table 1-2. Table "acc" indexes

nametypelinksdescription
callid_idx defaultcallid

Table 1-3. Table "missed_calls"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

unique ID

method string 16 ''no  

A method is the primary function that a request is meant to invoke on a server.

from_tag string 64 ''no  

The tag parameter serves as a general mechanism to identify a dialog, which is the combination of the Call-ID along with two tags, one from participant in the dialog.

to_tag string 64 ''no  

The tag parameter serves as a general mechanism to identify a dialog, which is the combination of the Call-ID along with two tags, one from participant in the dialog.

callid string 64 ''no  

Call-ID header field uniquely identifies a particular invitation or all registrations of a particular client.

sip_code string 3 ''no  

SIP reply code

sip_reason string 32 ''no  

SIP reply reason

time datetime not specified  no  

Date and time when this record was written.

Table 1-4. Table "missed_calls" indexes

nametypelinksdescription
callid_idx defaultcallid


Chapter 2. alias db

dbaliases

This table us used by the alias_db module as an alternative for user aliases via userloc. More information about the alias_db module can be found at: http://www.kamailio.org/docs/modules/devel/alias_db.html

Table 2-1. Table "dbaliases"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

unique ID

alias_username string 64 ''no  

Alias username / phone number

alias_domain string 64 ''no  

Alias domain name

username string 64 ''no  

Username / phone number

domain string 64 ''no  

Domain name

Table 2-2. Table "dbaliases" indexes

nametypelinksdescription
alias_idx uniquealias_username, alias_domain

target_idx defaultusername, domain


Chapter 3. Subscriber

subscriber

This table is used to provide authentication information. More information about the auth_db module can be found at: http://www.kamailio.org/docs/modules/devel/auth_db.html

Table 3-1. Table "subscriber"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

Unique ID

username string 64 ''no  

Username / phone number

domain string 64 ''no  

Domain name

password string 25 ''no  

Password

email_address string 64 ''no  

Email address

ha1 string 64 ''no  

md5(username:realm:password)

ha1b string 64 ''no  

md5(username@domain:realm:password)

rpid string 64 NULLyes  

The SIP Remote-Party-ID header identifies the calling party and includes user, party, screen and privacy headers that specify how a call is presented and screened.

Table 3-2. Table "subscriber" indexes

nametypelinksdescription
account_idx uniqueusername, domain

username_idx defaultusername


Chapter 4. AVP Operations

usr_preferences

This table us used by the avpops module to implement Attribute Value Pairs (AVP's). More information about the avpops module can be found at: http://www.kamailio.org/docs/modules/devel/avpops.html

Table 4-1. Table "usr_preferences"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

Unique ID

uuid string 64 ''no  

Unique user ID

username string 128 0no  

Username / phone number

domain string 64 ''no  

Domain name

attribute string 32 ''no  

AVP attribute

type int 11 0no  

AVP type

value string 128 ''no  

AVP value

last_modified datetime not specified '1900-01-01 00:00:01'no  

Date and time when this record was last modified.

Table 4-2. Table "usr_preferences" indexes

nametypelinksdescription
ua_idx defaultuuid, attribute

uda_idx defaultusername, domain, attribute


Chapter 5. carrierroute

carrierroute

This table is used by the carrierroute module to provides routing, balancing and blacklisting capabilities. It contains the routing data. More information is available at: http://www.kamailio.org/docs/modules/devel/carrierroute.html

carrierfailureroute

This table is used by the carrierroute module to provide failure routing capabilities. It contains the failureroute routing informations. More information is available at: http://www.kamailio.org/docs/modules/devel/carrierroute.html

carrier_name

This table is used by the carrierroute module to provides routing, balancing and blacklisting capabilities. It contains the existing carriers, consisting of the ids and corresponding names. More information is available at: http://www.kamailio.org/docs/modules/devel/carrierroute.html

domain_name

This table is used by the carrierroute module to provides routing, balancing and blacklisting capabilities. It contains the existing domains, consisting of the ids and corresponding names. More information is available at: http://www.kamailio.org/docs/modules/devel/carrierroute.html

Table 5-1. Table "carrierroute"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

Name of the column contains the unique identifier of a route.

carrier unsigned int 10 0no  

This column contains the carrier id.

domain unsigned int 10 0no  

This column contains the routing domain id. You can define several routing domains to have different routing rules. Maybe you use domain 0 for normal routing and domain 1 if domain 0 failed.

scan_prefix string 64 ''no  

Name of column contains the scan prefixes. Scan prefixes define the matching portion of a phone number, e.g. when we have the scan prefixes 49721 and 49, the called number is 49721913740, it matches 49721, because the longest match is taken. If no prefix matches, the number is not routed. To prevent this, an empty prefix value of "> could be added."

flags unsigned int 11 0no  

This column contains the flags used for rule matching.

mask unsigned int 11 0no  

This column contains the mask that is applied to the message flags before rule matching.

prob float not specified 0no  

Name of column contains the probability. The probability value is used to distribute the traffic between several gateways. Let's say 70 % of the traffic shall be routed to gateway A, the other 30 % shall be routed to gateway B, we define a rule for gateway A with a prob value of 0.7 and a rule for gateway B with a prob value of 0.3.

If all probabilities for a given prefix, tree and domain don't add to 100%, the prefix values will be adjusted according the given prob values. E.g. if three hosts with prob values of 0.5, 0.5 and 0.4 are defined, the resulting probabilities are 35.714, 35.714 and 28.571%. But its better to choose meaningful values in the first place because of clarity.

strip unsigned int 11 0no  

Name of the column contains the number of digits to be stripped of the userpart of an URI before prepending rewrite_prefix.

rewrite_host string 128 ''no  

Name of column contains the rewrite prefixes. Here you can define a rewrite prefix for the localpart of the SIP URI. An empty field represents a blacklist entry, anything else is put as domain part into the Request URI of the SIP message.

rewrite_prefix string 64 ''no  

Name of column contains the rewrite prefixes. Here you can define a rewrite prefix for the localpart of the SIP URI.

rewrite_suffix string 64 ''no  

Name of column contains the rewrite suffixes. Here you can define a rewrite suffix for the localpart of the SIP URI.

description string 255 NULLyes  

A comment for the route entry, useful for larger routing tables. The comment is also displayed by the fifo cmd "cr_dump_routes".

Table 5-2. Table "carrierfailureroute"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

This column contains the unique identifier of a failure route.

carrier unsigned int 10 0no  

This column contains the carrier id.

domain unsigned int 10 0no  

This column contains the routing domain id. You can define several routing domains to have different routing rules. Maybe you use domain 0 for normal routing and domain 1 if domain 0 failed.

scan_prefix string 64 ''no  

Name of column contains the the scan prefixes. Scan prexies define the matching portion of a phone number, e.g. we have the scan prefixes 49721 and 49, the called number is 49721913740, it matches 49721, because the longest match is taken. If no prefix matches, the number is not failure routed. To prevent this, an empty prefix value of "> could be added."

host_name string 128 ''no  

Name of the column containing the host name of the last routing destination, using for rules matching.

reply_code string 3 ''no  

This column contains the reply code used for rule matching.

flags unsigned int 11 0no  

This column contains the flags used for rule matching.

mask unsigned int 11 0no  

This column contains the mask that is applied to the message flags before rule matching.

next_domain unsigned int 10 0no  

This column contains the route domain id that should be used for the next routing attempt.

description string 255 NULLyes  

A comment for the route entry, useful for larger routing tables.

Table 5-3. Table "carrier_name"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

Name of the column containing the unique identifier of a carrier.

carrier string 64 NULLyes  

This column contains the carrier name.

Table 5-4. Table "domain_name"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

Name of the column containing the unique identifier of a domain.

domain string 64 NULLyes  

This column contains the domain name.


Chapter 6. Call-processing language

cpl

Table for the call processing language "cpl" module. More information is available at: http://www.kamailio.org/docs/modules/devel/cpl-c.html

Table 6-1. Table "cpl"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

Unique ID

username string 64  no  

domain string 64 ''no  

cpl_xml text not specified  yes  

cpl_bin text not specified  yes  

Table 6-2. Table "cpl" indexes

nametypelinksdescription
account_idx uniqueusername, domain


Chapter 7. Dialog support

dialog

Persistent dialog information for the dialog module. More information can be found at: http://www.kamailio.org/docs/modules/devel/dialog.html

Table 7-1. Table "dialog"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

unique ID

hash_entry unsigned int 10  no  

Number of the hash entry in the dialog hash table

hash_id unsigned int 10  no  

The ID on the hash entry

callid string 255  no  

Call-ID of the dialog

from_uri string 128  no  

The URI of the FROM header (as per INVITE)

from_tag string 64  no  

The tag parameter serves as a general mechanism to identify a dialog, which is the combination of the Call-ID along with two tags, one from participant in the dialog.

to_uri string 128  no  

The URI of the TO header (as per INVITE)

to_tag string 64  no  

The tag parameter serves as a general mechanism to identify a dialog, which is the combination of the Call-ID along with two tags, one from participant in the dialog.

caller_cseq string 7  no  

Last Cseq number on the caller side.

callee_cseq string 7  no  

Last Cseq number on the caller side.

caller_route_set string 512  yes  

Route set on the caller side.

callee_route_set string 512  yes  

Route set on on the caller side.

caller_contact string 128  no  

Caller's contact uri.

callee_contact string 128  no  

Callee's contact uri.

caller_sock string 64  no  

Local socket used to communicate with caller

callee_sock string 64  no  

Local socket used to communicate with callee

state unsigned int 10  no  

The state of the dialog.

start_time unsigned int 10  no  

The timestamp (unix time) when the dialog was confirmed.

timeout unsigned int 10 0no  

The timestamp (unix time) when the dialog will expire.

sflags unsigned int 10 0no  

The flags to set for dialog and usable from config file.

toroute unsigned int 10 0no  

The ID of route to be executed at dialog timeout (ignored from v3.1, using instead toroute_name).

toroute_name string 32  yes  

The name of route to be executed at dialog timeout.

req_uri string 128  no  

The URI of initial request in dialog

Table 7-2. Table "dialog" indexes

nametypelinksdescription
hash_idx defaulthash_entry, hash_id


Chapter 8. Matching and translation rules

dialplan

This table is used by the dialplan module for the translation rules. More information is available at: http://www.kamailio.org/docs/modules/devel/dialplan.html

Table 8-1. Table "dialplan"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

unique ID

dpid int 11  no  

Dialplan ID.

pr int 11  no  

Priority of rule.

match_op int 11  no  

Matching operator for rule (0-equal, 1-regexp).

match_exp string 64  no  

Matching expresion (regexp or string).

match_len int 11  no  

Length of the matching expresion (used only for equal operator).

subst_exp string 64  no  

Substitution expresion.

repl_exp string 32  no  

Replacement expresion (sed like).

attrs string 32  no  

General attributes string to be returned in case of rule matching.


Chapter 9. Dispatcher

dispatcher

This table is used by the dispatcher module. It contains the sets of destinations used for load balancing and dispatching. More information about the dispatcher module can be found at: http://www.kamailio.org/docs/modules/devel/dispatcher.html

Table 9-1. Table "dispatcher"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

unique ID

setid int not specified 0no  

Destination set id

destination string 192 ''no  

Destination SIP address

flags int not specified 0no  

Flags of destination SIP address

priority int not specified 0no  

Priority of destination SIP address

attrs string 128 ''no  

Attributes specific for this destination

description string 64 ''no  

Description for this destination


Chapter 10. Domain

domain

This table is used by the domain module to determine if a host part of a URI is "local" or not. More information about the domain module can be found at: http://www.kamailio.org/docs/modules/devel/domain.html

Table 10-1. Table "domain"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

unique ID

domain string 64 ''no  

Domain name

last_modified datetime not specified '1900-01-01 00:00:01'no  

Date and time when this record was last modified.

Table 10-2. Table "domain" indexes

nametypelinksdescription
domain_idx uniquedomain


Chapter 11. Domainpolicy

domainpolicy

Table for the domainpolicy module. More information at http://www.kamailio.org/docs/modules/devel/domainpolicy.html.

Table 11-1. Table "domainpolicy"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

unique ID

rule string 255  no  

Domain policy rule name which is equal to the URI as published in the domain policy NAPTRs.

type string 255  no  

Domain policy rule type. In the case of federation names, this is "fed". For standard referrals according to draft-lendl-speermint-technical-policy-00, this is "std". For direct domain lookups, this is "dom". Default value is "type".

att string 255  yes  

It contains the AVP's name. If the rule stored in this row triggers, than dp_can_connect() will add an AVP with that name.

val string 128  yes  

It contains the values for AVPs created by dp_can_connect(). Default value is "val"

description string 255  no  

Comment about the rule

Table 11-2. Table "domainpolicy" indexes

nametypelinksdescription
rav_idx uniquerule, att, val

rule_idx defaultrule


Chapter 12. DRouting

dr_gateways

This table is used by the douting module - keeps the gateways data.

dr_rules

This table is used by the drouting module - keeps the routing rules data.

dr_gw_lists

This table is used by the drouting module to define lists of gateways to be used in rule definitions. More information can be found at: http://www.kamailio.org/docs/modules/devel/drouting.html.

dr_groups

This table is used by the drouting module to store information about the routing groups (users mapped over groups). More information can be found at: http://www.kamailio.org/docs/modules/devel/drouting.html.

Table 12-1. Table "dr_gateways"

nametypesizedefaultnullkeyextra attributesdescription
gwid unsigned int 10  noprimaryautoincrement

Unique ID per gateway

type unsigned int 11 0no  

Type of gateway

address string 128  no  

Address of gateway (hostname or ip and port)

strip unsigned int 11 0no  

Number of digits to strip from dialed number

pri_prefix string 64 NULLyes  

What to prefix to dialed number

attrs string 255 NULLyes  

Generic string to be returned in cfg script

description string 128 ''no  

Short description of gateway

Table 12-2. Table "dr_rules"

nametypesizedefaultnullkeyextra attributesdescription
ruleid unsigned int 10  noprimaryautoincrement

Rule unique ID

groupid string 255  no  

list of routing group IDs

prefix string 64  no  

Destination prefix for this rule

timerec string 255  no  

Time recurrence for this rule.

priority int 11 0no  

Priority of the rule.

routeid string 64  no  

Name of route block (from cfg script) to be executed when matching this rule.

gwlist string 255  no  

The list of destinations (gws) to be used when matching this rule.

description string 128 ''no  

Short description of the rule

Table 12-3. Table "dr_gw_lists"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

Unique ID

gwlist string 255  no  

List of GW ids.

description string 128 ''no  

Text description of the GW list

Table 12-4. Table "dr_groups"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

Unique ID

username string 64  no  

Username part of user

domain string 128 ''no  

Domain part of user

groupid unsigned int 11 0no  

The ID of the routing group the user belongs to.

description string 128 ''no  

Text description of the group/user


Chapter 13. Extensions

>


Chapter 14. Group checking

grp

This table us used by the group module as a means of group membership checking. Used primarily for Access Control Lists (ACL's). More information about the group module can be found at: http://www.kamailio.org/docs/modules/devel/group.html

re_grp

This table is used by the group module to check membership based on regular expressions. More information about the group module can be found at: http://www.kamailio.org/docs/modules/devel/group.html

Table 14-1. Table "grp"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

unique ID

username string 64 ''no  

Username / phone number

domain string 64 ''no  

Domain name

grp string 64 ''no  

Group name

last_modified datetime not specified '1900-01-01 00:00:01'no  

Date and time when this record was last modified.

Table 14-2. Table "grp" indexes

nametypelinksdescription
account_group_idx uniqueusername, domain, grp

Table 14-3. Table "re_grp"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

unique ID

reg_exp string 128 ''no  

Regular expression

group_id int 11 0no  

Group ID

Table 14-4. Table "re_grp" indexes

nametypelinksdescription
group_idx defaultgroup_id


Chapter 15. HashTable Values

htable

This table us used by the htabke module to load values in the hash table at start up. More information about the avpops module can be found at: http://www.kamailio.org/docs/modules/devel/htable.html

Table 15-1. Table "htable"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

Unique ID

key_name string 64 ''no  

Name of the hash key

key_type int not specified 0no  

Type of the key (0 - single value; 1 - array)

value_type int not specified 0no  

Type of the value (0 - string valuel 1 - integer value)

key_value string 128 ''no  

The value of the key


Chapter 16. Instant Message Conference

imc_rooms

Room table for the IMC module. More information at http://www.kamailio.org/docs/modules/devel/imc.html.

imc_members

Member table for the IMC module. More information at http://www.kamailio.org/docs/modules/devel/imc.html.

Table 16-1. Table "imc_rooms"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

unique ID

name string 64  no  

Name of the room

domain string 64  no  

Domain of the room

flag int 11  no  

Flags

Table 16-2. Table "imc_rooms" indexes

nametypelinksdescription
name_domain_idx uniquename, domain

Table 16-3. Table "imc_members"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

unique ID

username string 64  no  

Username

domain string 64  no  

Domain

room string 64  no  

flag int 11  no  

Flags

Table 16-4. Table "imc_members" indexes

nametypelinksdescription
account_room_idx uniqueusername, domain, room


Chapter 17. Least-cost Routing

lcr_gw

This table is used by lcr (Least Cost Routing) module to store gateway attributes. More information can be found at: http://www.kamailio.org/docs/modules/devel/lcr.html.

lcr_rule_target

This table is used by the lcr (Least Cost Routing) module to store routing rule targets. More information can be found at: http://www.kamailio.org/docs/modules/devel/lcr.html.

lcr_rule

This table is used by the lcr (Least Cost Routing) module to store routing rules. More information can be found at: http://www.kamailio.org/docs/modules/devel/lcr.html.

Table 17-1. Table "lcr_gw"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

lcr_id unsigned short not specified  no  

LCR instance identifier

gw_name string 128  yes  

Name of the gateway (for documentation only)

ip_addr string 15  yes  

IP Address of the gateway

hostname string 64  yes  

Hostname of the gateway

port unsigned short not specified  yes  

Port of the gateway

params string 64  yes  

Gateway's URI parameters

uri_scheme unsigned char not specified  yes  

URI scheme of gateway

transport unsigned char not specified  yes  

Transport protocol to be used for the gateway

strip unsigned char not specified  yes  

The number of digits to strip from Request URI user part before inserting tag

prefix string 16 NULLyes  

Prefix to be added to Request URI user part

tag string 64 NULLyes  

Tag of gateway to be stored to tag_avp

flags unsigned int not specified 0no  

Gateway specific flags

defunct unsigned int not specified NULLyes  

If not null, contains unix timestamp telling when gw becomes operational

Table 17-2. Table "lcr_gw" indexes

nametypelinksdescription
lcr_id_ip_addr_port_hostname_idx uniquelcr_id, ip_addr, port, hostname

Table 17-3. Table "lcr_rule_target"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

lcr_id unsigned short not specified  no  

LCR instance identifier

rule_id unsigned int not specified  no  

Identifies a rule in lcr_rule table

gw_id unsigned int not specified  no  

Identifies a gateway in lcr_gw table

priority unsigned char not specified  no  

Priority of this target (0-255)

weight unsigned int not specified 1no  

Weight of this target (1-254)

Table 17-4. Table "lcr_rule_target" indexes

nametypelinksdescription
rule_id_gw_id_idx uniquerule_id, gw_id

lcr_id_idx defaultlcr_id

Table 17-5. Table "lcr_rule"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

lcr_id unsigned short not specified  no  

LCR instance identifier

prefix string 16 NULLyes  

Prefix of Request URI user part

from_uri string 64 NULLyes  

PCRE regular expression that is matched to caller's URI

stopper unsigned int not specified 0no  

Tells if rule is "stopper" rule

enabled unsigned int not specified 1no  

Tells if rule is enabled

Table 17-6. Table "lcr_rule" indexes

nametypelinksdescription
lcr_id_prefix_from_uri_idx uniquelcr_id, prefix, from_uri


Chapter 18. Message Storage

silo

This table us used by the msilo module to provide offline message storage More information about the msilo module can be found at: http://www.kamailio.org/docs/modules/devel/msilo.html

Table 18-1. Table "silo"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

unique ID

src_addr string 128 ''no  

Source address - From URI

dst_addr string 128 ''no  

Destination address - To URI

username string 64 ''no  

SIP domain of target user

domain string 64 ''no  

Username / phone number of target user

inc_time int not specified 0no  

Incoming time

exp_time int not specified 0no  

Expiration time

snd_time int not specified 0no  

Reminder send time

ctype string 32 'text/plain'no  

Content type

body binary not specified ''no  

Body of the message

Table 18-2. Table "silo" indexes

nametypelinksdescription
account_idx defaultusername, domain


Chapter 19. MTree keys-values

mtree

This table is used by the mtree module to load values in the shared memory tree at start up. More information about the mtree module can be found at: http://www.kamailio.org/docs/modules/devel/mtree.html

Table 19-1. Table "mtree"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

Unique ID

tprefix string 32 ''no  

Key to be used to index the values in the tree, usually a DID or prefix.

tvalue string 128 ''no  

The value of the key

Table 19-2. Table "mtree" indexes

nametypelinksdescription
tprefix_idx uniquetprefix


Chapter 20. Prefix-Domain Translation

pdt

Prefix-Domain Translation means to change the host and port in R-URI, based on the prefix found in R-URI and source domain (that is domain in From-URI). More information can be found at: http://www.kamailio.org/docs/modules/devel/pdt.html

Table 20-1. Table "pdt"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

Unique ID

sdomain string 128  no  

Source domain

prefix string 32  no  

Prefix found in the username part of R-URI.

domain string 128 ''no  

Domain corresponding to (sdomain, prefix) pair where the message must be sent.

Table 20-2. Table "pdt" indexes

nametypelinksdescription
sdomain_prefix_idx uniquesdomain, prefix


Chapter 21. Permissions

trusted

This table is used by the permissions module to determine if a call has the appropriate permission to be established. More information about the permissions module can be found at: http://www.kamailio.org/docs/modules/devel/permissions.html

address

This table is used by the permissions module. More information is available at: http://www.kamailio.org/docs/modules/devel/permissions.html

Table 21-1. Table "trusted"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

unique ID

src_ip string 50  no  

Source address is equal to source address of request

proto string 4  no  

Transport protocol is either "any" or equal to transport protocol of request. Possible values that can be stored are "any", "udp", "tcp", "tls", and "sctp".

from_pattern string 64 NULLyes  

Regular expression matches From URI of request.

tag string 64  yes  

Tag

Table 21-2. Table "trusted" indexes

nametypelinksdescription
peer_idx defaultsrc_ip

Table 21-3. Table "address"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

unique ID

grp unsigned short 5 1no  

Group

ip_addr string 15  no  

IP address

mask char not specified 32no  

Network mask - integer equal or less than 32

port unsigned short 5 0no  

Port

tag string 64  yes  

Tag - string value returned in config variable upon address matching


Chapter 22. Presence

presentity

Table for the presence module. More information can be found at: http://www.kamailio.org/docs/modules/devel/presence.html

active_watchers

Table for the presence module. More information can be found at: http://www.kamailio.org/docs/modules/devel/presence.html

watchers

Table for the presence module. More information can be found at: http://www.kamailio.org/docs/modules/devel/presence.html

xcap

Table for the presence module. More information can be found at: http://www.kamailio.org/docs/modules/devel/presence.html

pua

Table for the presence related pua module. More information can be found at: http://www.kamailio.org/docs/modules/devel/pua.html

Table 22-1. Table "presentity"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

Unique ID

username string 64  no  

User name

domain string 64  no  

Domain

event string 64  no  

Event

etag string 64  no  

User name

expires int 11  no  

Expires

received_time int 11  no  

Reveived time

body binary not specified  no  

sender string 128  no  

Sender contact

Table 22-2. Table "presentity" indexes

nametypelinksdescription
presentity_idx uniqueusername, domain, event, etag

Table 22-3. Table "active_watchers"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

Unique ID

presentity_uri string 128  no  

Presence URI

watcher_username string 64  no  

From User

watcher_domain string 64  no  

From Domain

to_user string 64  no  

To User

to_domain string 64  no  

To Domain

event string 64 'presence'no  

Event description

event_id string 64  yes  

Event ID

to_tag string 64  no  

TO tag

from_tag string 64  no  

From tag

callid string 64  no  

Call ID

local_cseq int 11  no  

Local cseq

remote_cseq int 11  no  

Remote cseq

contact string 64  no  

Contact

record_route text not specified  yes  

Record route

expires int 11  no  

Expires

status int 11 2no  

Status

reason string 64  no  

Reason

version int 11 0no  

Version

socket_info string 64  no  

Socket info

local_contact string 128  no  

Local contact

Table 22-4. Table "active_watchers" indexes

nametypelinksdescription
active_watchers_idx uniquepresentity_uri, callid, to_tag, from_tag

Table 22-5. Table "watchers"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

Unique ID

presentity_uri string 128  no  

Presentity Uri

watcher_username string 64  no  

Watcher User

watcher_domain string 64  no  

Watcher Domain

event string 64 'presence'no  

Event description

status int 11  no  

Status

reason string 64  yes  

Reason

inserted_time int 11  no  

Table 22-6. Table "watchers" indexes

nametypelinksdescription
watcher_idx uniquepresentity_uri, watcher_username, watcher_domain, event

Table 22-7. Table "xcap"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

Unique ID

username string 64  no  

User name

domain string 64  no  

Domain

doc binary not specified  no  

doc

doc_type int 11  no  

Document type

etag string 64  no  

Document Etag

source int 11  no  

Entity inserting the record

doc_uri string 128  no  

Document uri

port int 11  no  

XCAP server port

Table 22-8. Table "xcap" indexes

nametypelinksdescription
account_doc_type_idx uniqueusername, domain, doc_type, doc_uri

source_idx defaultsource

Table 22-9. Table "pua"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

Unique ID

pres_uri string 128  no  

URI

pres_id string 64  no  

ID

event int 11  no  

Event

expires int 11  no  

Expires

desired_expires int 11  no  

Desired Expires

flag int 11  no  

Flags

etag string 64  no  

Etag

tuple_id string 64  yes  

Tuple ID

watcher_uri string 128  no  

Watcher URI

call_id string 64  no  

Call ID

to_tag string 64  no  

To tag

from_tag string 64  no  

To tag

cseq int 11  no  

record_route text not specified  yes  

Record route

contact string 128  no  

Contact

remote_contact string 128  no  

Remote contact

version int 11  no  

extra_headers text not specified  no  

Extra Headers


Chapter 23. PURPLE

purplemap

Table for the purple module. More information can be found at: http://www.kamailio.org/docs/modules/devel/purple.html

Table 23-1. Table "purplemap"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

Unique ID

sip_user string 128  no  

SIP user's URI

ext_user string 128  no  

External (MSN, GTalk, ...) user's URI/Login

ext_prot string 16  no  

External protocol to use

ext_pass string 64  yes  

External user's password


Chapter 24. Registrar

aliases

This table for the registrar module is similar to the "location" table, (the aliases index makes lookup of missed calls much faster). Thus, the function lookup("alias") can be used to map aliases to AORs. More information is available at: http://www.kamailio.org/docs/modules/devel/registrar.html. Most people uses the dbaliases table with the alias_db module now.

Table 24-1. Table "aliases"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

unique ID

username string 64 ''no  

Alias Username / Phone Number

domain string 64 NULLyes  

Domain name

contact string 255 ''no  

Contact header field value provides a URI whoses meaning depends on the type of request or response it is in.

received string 128 NULLyes  

Received IP:PORT in the format SIP:IP:PORT

path string 128 NULLyes  

Path Header(s) per RFC 3327

expires datetime not specified '2020-05-28 21:32:15'no  

Date and time when this entry expires.

q float 10,2 1.0no  

Value used for preferential routing.

callid string 255 'Default-Call-ID'no  

Call-ID header field uniquely identifies a particular invitation or all registrations of a particular client.

cseq int 11 13no  

CSeq header field contains a single decimal sequence number and the request method.

last_modified datetime not specified '1900-01-01 00:00:01'no  

Date and time when this entry was last modified.

flags int 11 0no  

Flags

cflags int 11 0no  

CFlags

user_agent string 255 ''no  

User-Agent header field contains information about the UAC originating the request.

socket string 64 NULLyes  

Socket used to connect to Kamailio. For example: UDP:IP:PORT

methods int 11 NULLyes  

Flags that indicate the SIP Methods this contact will accept.

Table 24-2. Table "aliases" indexes

nametypelinksdescription
alias_idx defaultusername, domain, contact


Chapter 25. RLS

rls_presentity

Table for the RLS module.

rls_watchers

Table for RLS module used for storing resource lists subscribe information.

Table 25-1. Table "rls_presentity"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

Unique ID

rlsubs_did string 255  no  

Resource list subscribe dialog id

resource_uri string 128  no  

List Uri

content_type string 64  no  

Event

presence_state binary not specified  no  

expires int 11  no  

Expires

updated int 11  no  

Update flag

auth_state int 11  no  

Watcher authorization state

reason string 64  no  

reason for watcher authorization state

Table 25-2. Table "rls_presentity" indexes

nametypelinksdescription
rls_presentity_idx uniquerlsubs_did, resource_uri

updated_idx defaultupdated

Table 25-3. Table "rls_watchers"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

Unique ID

presentity_uri string 128  no  

Presence URI

to_user string 64  no  

To user

to_domain string 64  no  

To domain

watcher_username string 64  no  

From user

watcher_domain string 64  no  

From domain

event string 64 'presence'no  

Event description

event_id string 64  yes  

Event ID

to_tag string 64  no  

To tag

from_tag string 64  no  

From tag

callid string 64  no  

Call ID

local_cseq int 11  no  

Local cseq

remote_cseq int 11  no  

Remote cseq

contact string 64  no  

Contact

record_route text not specified  yes  

Record route

expires int 11  no  

Expires

status int 11 2no  

Status

reason string 64  no  

Reason

version int 11 0no  

Version

socket_info string 64  no  

Socket info

local_contact string 128  no  

Local contact

Table 25-4. Table "rls_watchers" indexes

nametypelinksdescription
rls_watcher_idx uniquepresentity_uri, callid, to_tag, from_tag


Chapter 26. SIPtrace

sip_trace

This table is used to store incoming/outgoing SIP messages in database. More informations can be found in the siptrace module documentation at: http://www.kamailio.org/docs/modules/devel/siptrace.html.

Table 26-1. Table "sip_trace"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

unique ID

time_stamp datetime not specified '1900-01-01 00:00:01'no  

Recording date

callid string 255 ''no  

call ID from SIP message

traced_user string 128 ''no  

SIP URI of the user being traced

msg text not specified  no  

Full SIP message

method string 50 ''no  

SIP method name

status string 128 ''no  

SIP reply status

fromip string 50 ''no  

Source IP address

toip string 50 ''no  

Destination IP address

fromtag string 64 ''no  

From tag

direction string 4 ''no  

Destination IP address

Table 26-2. Table "sip_trace" indexes

nametypelinksdescription
traced_user_idx defaulttraced_user

date_idx defaulttime_stamp

fromip_idx defaultfromip

callid_idx defaultcallid


Chapter 27. Speed dial

speed_dial

This table is used by the speeddial module to provide on-server speed dial facilities. More information about the speeddial module can be found at: http://www.kamailio.org/docs/modules/devel/speeddial.html

Table 27-1. Table "speed_dial"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

unique ID

username string 64 ''no  

Username / phone number

domain string 64 ''no  

Domain name

sd_username string 64 ''no  

Speed dial username

sd_domain string 64 ''no  

Speed dial domain

new_uri string 128 ''no  

New URI

fname string 64 ''no  

First name

lname string 64 ''no  

Last name

description string 64 ''no  

Description

Table 27-2. Table "speed_dial" indexes

nametypelinksdescription
speed_dial_idx uniqueusername, domain, sd_domain, sd_username


Chapter 28. Version

Table 28-1. Table "version"

nametypesizedefaultnullkeyextra attributesdescription
table_name string 32  no  

table_version unsigned int not specified 0no  


Chapter 29. UAC remote registrations

uacreg

This table is used by theuac module to load user details for remote server registration: http://www.kamailio.org/docs/modules/devel/uac.html

Table 29-1. Table "uacreg"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

Unique ID

l_uuid string 64 ''no  

Local unique id used to build and match contact addresses.

l_username string 64 ''no  

Local username

l_domain string 128 ''no  

Local domain

r_username string 64 ''no  

Remote username

r_domain string 128 ''no  

Remote domain

realm string 64 ''no  

Remote username

auth_username string 64 ''no  

Authentication username

auth_password string 64 ''no  

Authentication password

auth_proxy string 64 ''no  

Outbound proxy SIP address

expires int not specified 0no  

Expiration time (in seconds, 0 means disabled)

Table 29-2. Table "uacreg" indexes

nametypelinksdescription
l_uuid_idx uniquel_uuid


Chapter 30. SIP URI checks

uri

This table is used by uri_db module to implement various SIP URI checks. More information about the uri_db module can be found at: http://www.kamailio.org/docs/modules/devel/uri_db.html

Table 30-1. Table "uri"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

username string 64 ''no  

Username / phone number

domain string 64 ''no  

Domain name

uri_user string 64 ''no  

Username / phone number

last_modified datetime not specified '1900-01-01 00:00:01'no  

Date and time when this record was last modified.

Table 30-2. Table "uri" indexes

nametypelinksdescription
account_idx uniqueusername, domain, uri_user


Chapter 31. User and global blacklists

userblacklist

This table is used by the userblacklist module for the user specific blacklists. More information is available at: http://www.kamailio.org/docs/modules/devel/userblacklist.html

globalblacklist

This table is used by the userblacklist module for the global blacklists. More information is available at: http://www.kamailio.org/docs/modules/devel/userblacklist.html

Table 31-1. Table "userblacklist"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

unique ID

username string 64 ''no  

The user that is used for the blacklist lookup.

domain string 64 ''no  

The domain that is used for the blacklist lookup.

prefix string 64 ''no  

The prefix that is matched for the blacklist.

whitelist char 1 0no  

Specify if this a blacklist (0) or a whitelist (1) entry.

Table 31-2. Table "userblacklist" indexes

nametypelinksdescription
userblacklist_idx defaultusername, domain, prefix

Table 31-3. Table "globalblacklist"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

unique ID

prefix string 64 ''no  

The prefix that is matched for the blacklist.

whitelist char 1 0no  

Specify if this a blacklist (0) or a whitelist (1) entry.

description string 255 NULLyes  

A comment for the entry.

Table 31-4. Table "globalblacklist" indexes

nametypelinksdescription
globalblacklist_idx defaultprefix


Chapter 32. User location

location

Persistent user location information for the usrloc module. More information can be found at: http://www.kamailio.org/docs/modules/devel/usrloc.html

Table 32-1. Table "location"

nametypesizedefaultnullkeyextra attributesdescription
id unsigned int 10  noprimaryautoincrement

unique ID

username string 64 ''no  

Username / phone number

domain string 64 NULLyes  

Domain name

contact string 255 ''no  

Contact header field value provides a URI whoses meaning depends on the type of request or response it is in.

received string 128 NULLyes  

Received IP:PORT in the format SIP:IP:PORT

path string 128 NULLyes  

Path Header(s) per RFC 3327

expires datetime not specified '2020-05-28 21:32:15'no  

Date and time when this entry expires.

q float 10,2 1.0no  

Value used for preferential routing.

callid string 255 'Default-Call-ID'no  

Call-ID header field uniquely identifies a particular invitation or all registrations of a particular client.

cseq int 11 13no  

CSeq header field contains a single decimal sequence number and the request method.

last_modified datetime not specified '1900-01-01 00:00:01'no  

Date and time when this entry was last modified.

flags int 11 0no  

Internal flags

cflags int 11 0no  

Branch and contact flags

user_agent string 255 ''no  

User-Agent header field contains information about the UAC originating the request.

socket string 64 NULLyes  

Socket used to connect to Kamailio. For example: UDP:IP:PORT

methods int 11 NULLyes  

Flags that indicate the SIP Methods this contact will accept.

Table 32-2. Table "location" indexes

nametypelinksdescription
account_contact_idx defaultusername, domain, contact