2 ; DUNDi configuration file
4 ; For more information about DUNDi, see http://www.dundi.com
9 ; The "general" section contains general parameters relating
10 ; to the operation of the dundi client and server.
12 ; The first part should be your complete contact information
13 ; should someone else in your peer group need to contact you.
15 ;department=Your Department
16 ;organization=Your Company, Inc.
24 ; Specify bind address and port number. Default is
30 ; Our entity identifier (Should generally be the MAC address of the
31 ; machine it's running on. Defaults to the first eth address, but you
32 ; can override it here, as long as you set it to the MAC of *something*
35 ;entityid=00:07:E9:3B:76:60
37 ; Peers shall cache our query responses for the specified time,
38 ; given in seconds. Default is 3600.
42 ; This defines the max depth in which to search the DUNDi system.
43 ; Note that the maximum time that we will wait for a response is
44 ; (2000 + 200 * ttl) ms.
48 ; If we don't get ACK to our DPDISCOVER within 2000ms, and autokill is set
49 ; to yes, then we cancel the whole thing (that's enough time for one
50 ; retransmission only). This is used to keep things from stalling for a long
51 ; time for a host that is not available, but would be ill advised for bad
52 ; connections. In addition to 'yes' or 'no' you can also specify a number
53 ; of milliseconds. See 'qualify' for individual peers to turn on for just
58 ; pbx_dundi creates a rotating key called "secret", under the family
59 ; 'secretpath'. The default family is dundi (resulting in
60 ; the key being held at dundi/secret).
64 ; The 'storehistory' option (also changeable at runtime with
65 ; 'dundi store history' and 'dundi no store history') will
66 ; cause the DUNDi engine to keep track of the last several
67 ; queries and the amount of time each query took to execute
68 ; for the purpose of tracking slow nodes. This option is
69 ; off by default due to performance impacts.
75 ; The "mappings" section maps DUNDi contexts
76 ; to contexts on the local asterisk system. Remember
77 ; that numbers that are made available under the e164
78 ; DUNDi context are regulated by the DUNDi General Peering
79 ; Agreement (GPA) if you are a member of the DUNDi E.164
82 ; dundi_context => local_context,weight,tech,dest[,options]]
84 ; 'dundi_context' is the name of the context being requested
85 ; within the DUNDi request
87 ; 'local_context' is the name of the context on the local system
88 ; in which numbers can be looked up for which responses shall be given.
90 ; 'weight' is the weight to use for the responses provided from this
91 ; mapping. The number must be >= 0 and < 60000. Since it is totally
92 ; valid to receive multiple responses to a query, responses received
93 ; with a lower weight are tried first. Note that the weight has a
94 ; special meaning in the e164 context - see the GPA for more details.
96 ; 'tech' is the technology to use (IAX, SIP, H323)
98 ; 'dest' is the destination to supply for reaching that number. The
99 ; following variables can be used in the destination string and will
100 ; be automatically substituted:
101 ; ${NUMBER}: The number being requested
102 ; ${IPADDR}: The IP address to connect to
103 ; ${SECRET}: The current rotating secret key to be used
105 ; Further options may include:
107 ; nounsolicited: No unsolicited calls of any type permitted via this
109 ; nocomunsolicit: No commercial unsolicited calls permitted via
111 ; residential: This number is known to be a residence
112 ; commercial: This number is known to be a business
113 ; mobile: This number is known to be a mobile phone
114 ; nocomunsolicit: No commercial unsolicited calls permitted via
116 ; nopartial: Do not search for partial matches
118 ; There *must* exist an entry in mappings for DUNDi to respond
119 ; to any request, although it may be empty.
121 ;e164 => dundi-e164-canonical,0,IAX2,dundi:${SECRET}@${IPADDR}/${NUMBER},nounsolicited,nocomunsolicit,nopartial
122 ;e164 => dundi-e164-customers,100,IAX2,dundi:${SECRET}@${IPADDR}/${NUMBER},nounsolicited,nocomunsolicit,nopartial
123 ;e164 => dundi-e164-via-pstn,400,IAX2,dundi:${SECRET}@${IPADDR}/${NUMBER},nounsolicited,nocomunsolicit,nopartial
125 ;digexten => default,0,IAX2,guest@lappy/${NUMBER}
131 ; The remaining sections represent the peers
132 ; that we fundamentally trust. The section name
133 ; represents the name and optionally at a specific
134 ; DUNDi context if you want the trust to be established
135 ; for only a specific DUNDi context.
137 ; inkey - What key they will be authenticating to us with
139 ; outkey - What key we use to authenticate to them
141 ; host - What their host is
143 ; order - What search order to use. May be 'primary', 'secondary',
144 ; 'tertiary' or 'quartiary'. In large systems, it is beneficial
145 ; to only query one up-stream host in order to maximize caching
146 ; value. Adding one with primary and one with secondary gives you
147 ; redundancy without sacrificing performance.
149 ; include - Includes this peer when searching a particular context
150 ; for lookup (set "all" to perform all lookups with that
151 ; host. This is also the context in which peers are permitted
154 ; noinclude - Disincludes this peer when searching a particular context
155 ; for lookup (set "all" to perform no lookups with that
158 ; permit - Permits this peer to search a given DUNDi context on
159 ; the local system. Set "all" to permit this host to
160 ; lookup all contexts. This is also a context for which
161 ; we will create/forward PRECACHE commands.
163 ; deny - Denies this peer to search a given DUNDi context on
164 ; the local system. Set "all" to deny this host to
165 ; lookup all contexts.
167 ; model - inbound, outbound, or symmetric for whether we receive
168 ; requests only, transmit requests only, or do both.
170 ; precache - Utilize/Permit precaching with this peer (to pre
171 ; cache means to provide an answer when no request
172 ; was made and is used so that machines with few
173 ; routes can push those routes up a to a higher level).
174 ; outgoing means we send precache routes to this peer,
175 ; incoming means we permit this peer to send us
176 ; precache routes. symmetric means we do both.
178 ; Note: You cannot mix symmetric/outbound model with symmetric/inbound
179 ; precache, nor can you mix symmetric/inbound model with symmetric/outbound
183 ; The '*' peer is special and matches an unspecified entity
187 ; Sample Primary e164 DUNDi peer
191 ;host = 64.215.96.114
199 ; Sample Secondary e164 DUNDi peer
203 ;host = misery.digium.com
212 ; Sample "push mode" downstream host
220 ;include = e164 ; In this case used only for precaching
225 ; Sample "push mode" upstream host
230 ;host = 216.207.245.34
233 ;permit = all ; In this case used only for precaching