res_pjsip: Split type=identify to IP address and SIP header matching priorities
[asterisk/asterisk.git] / configs / samples / pjsip.conf.sample
1 ; PJSIP Configuration Samples and Quick Reference
2 ;
3 ; This file has several very basic configuration examples, to serve as a quick
4 ; reference to jog your memory when you need to write up a new configuration.
5 ; It is not intended to teach PJSIP configuration or serve as an exhaustive
6 ; reference of options and potential scenarios.
7 ;
8 ; This file has two main sections.
9 ; First, manually written examples to serve as a handy reference.
10 ; Second, a list of all possible PJSIP config options by section. This is
11 ; pulled from the XML config help. It only shows the synopsis for every item.
12 ; If you want to see more detail please check the documentation sources
13 ; mentioned at the top of this file.
14
15 ; ============================================================================
16 ; NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE
17 ;
18 ; This file does not maintain the complete option documentation.
19 ; ============================================================================
20
21 ; Documentation
22 ;
23 ; The official documentation is at http://wiki.asterisk.org
24 ; You can read the XML configuration help via Asterisk command line with
25 ; "config show help res_pjsip", then you can drill down through the various
26 ; sections and their options.
27 ;
28
29 ;========!!!!!!!!!!!!!!!!!!!  SECURITY NOTICE  !!!!!!!!!!!!!!!!!!!!===========
30 ;
31 ; At a minimum please read the file "README-SERIOUSLY.bestpractices.txt",
32 ; located in the Asterisk source directory before starting Asterisk.
33 ; Otherwise you risk allowing the security of the Asterisk system to be
34 ; compromised. Beyond that please visit and read the security information on
35 ; the wiki at: https://wiki.asterisk.org/wiki/x/EwFB
36 ;
37 ; A few basics to pay attention to:
38 ;
39 ; Anonymous Calls
40 ;
41 ; By default anonymous inbound calls via PJSIP are not allowed. If you want to
42 ; route anonymous calls you'll need to define an endpoint named "anonymous".
43 ; res_pjsip_endpoint_identifier_anonymous.so handles that functionality so it
44 ; must be loaded. It is not recommended to accept anonymous calls.
45 ;
46 ; Access Control Lists
47 ;
48 ; See the example ACL configuration in this file. Read the configuration help
49 ; for the section and all of its options. Look over the samples in acl.conf
50 ; and documentation at https://wiki.asterisk.org/wiki/x/uA80AQ
51 ; If possible, restrict access to only networks and addresses you trust.
52 ;
53 ; Dialplan Contexts
54 ;
55 ; When defining configuration (such as an endpoint) that links into
56 ; dialplan configuration, be aware of what that dialplan does. It's easy to
57 ; accidentally provide access to internal or outbound dialing extensions which
58 ; could cost you severely. The "context=" line in endpoint configuration
59 ; determines which dialplan context inbound calls will enter into.
60 ;
61 ;=============================================================================
62
63 ; Overview of Configuration Section Types Used in the Examples
64 ;
65 ; * Transport "transport"
66 ;   * Configures res_pjsip transport layer interaction.
67 ; * Endpoint "endpoint"
68 ;   * Configures core SIP functionality related to SIP endpoints.
69 ; * Authentication "auth"
70 ;   * Stores inbound or outbound authentication credentials for use by trunks,
71 ;     endpoints, registrations.
72 ; * Address of Record "aor"
73 ;   * Stores contact information for use by endpoints.
74 ; * Endpoint Identification "identify"
75 ;   * Maps a host directly to an endpoint
76 ; * Access Control List "acl"
77 ;   * Defines a permission list or references one stored in acl.conf
78 ; * Registration "registration"
79 ;   * Contains information about an outbound SIP registration
80 ; * Resource Lists
81 ;   * Contains information for configuring resource lists.
82 ; * Phone Provisioning "phoneprov"
83 ;   * Contains information needed by res_phoneprov for autoprovisioning
84
85 ; The following sections show example configurations for various scenarios.
86 ; Most require a couple or more configuration types configured in concert.
87
88 ;=============================================================================
89
90 ; Naming of Configuration Sections
91 ;
92 ; Configuration section names are denoted with enclosing brackets,
93 ; e.g. [6001]
94 ; In most cases, you can name a section whatever makes sense to you. For example
95 ; you might name a transport [transport-udp-nat] to help you remember how that
96 ; section is being used. However, in some cases, ("endpoint" and "aor" types)
97 ; the section name has a relationship to its function.
98 ;
99 ; Depending on the modules loaded, Asterisk can match SIP requests to an
100 ; endpoint or aor in a few ways:
101 ;
102 ; 1) Match a section name for endpoint type sections to the username in the
103 ;    "From" header of inbound SIP requests.
104 ; 2) Match a section name for aor type sections to the username in the "To"
105 ;    header of inbound SIP REGISTER requests.
106 ; 3) With an identify type section configured, match an inbound SIP request of
107 ;    any type to an endpoint or aor based on the IP source address of the
108 ;    request.
109 ;
110 ; Note that sections can have the same name as long as their "type" options are
111 ; set to different values. In most cases it makes sense to have associated
112 ; configuration sections use the same name, as you'll see in the examples within
113 ; this file.
114
115 ;===============EXAMPLE TRANSPORTS============================================
116 ;
117 ; A few examples for potential transport options.
118 ;
119 ; For the NAT transport example, be aware that the options starting with
120 ; the prefix "external_" will only apply to communication with addresses
121 ; outside the range set with "local_net=".
122 ;
123 ; You can have more than one of any type of transport, as long as it doesn't
124 ; use the same resources (bind address, port, etc) as the others.
125
126 ; Basic UDP transport
127 ;
128 ;[transport-udp]
129 ;type=transport
130 ;protocol=udp    ;udp,tcp,tls,ws,wss
131 ;bind=0.0.0.0
132
133 ; UDP transport behind NAT
134 ;
135 ;[transport-udp-nat]
136 ;type=transport
137 ;protocol=udp
138 ;bind=0.0.0.0
139 ;local_net=192.0.2.0/24
140 ;external_media_address=203.0.113.1
141 ;external_signaling_address=203.0.113.1
142
143 ; Basic IPv6 UDP transport
144 ;
145 ;[transport-udp-ipv6]
146 ;type=transport
147 ;protocol=udp
148 ;bind=::
149
150 ; Example IPv4 TLS transport
151 ;
152 ;[transport-tls]
153 ;type=transport
154 ;protocol=tls
155 ;bind=0.0.0.0
156 ;cert_file=/path/mycert.crt
157 ;priv_key_file=/path/mykey.key
158 ;cipher=ADH-AES256-SHA,ADH-AES128-SHA
159 ;method=tlsv1
160
161
162 ;===============OUTBOUND REGISTRATION WITH OUTBOUND AUTHENTICATION============
163 ;
164 ; This is a simple registration that works with some SIP trunking providers.
165 ; You'll need to set up the auth example "mytrunk_auth" below to enable outbound
166 ; authentication. Note that we "outbound_auth=" use for outbound authentication
167 ; instead of "auth=", which is for inbound authentication.
168 ;
169 ; If you are registering to a server from behind NAT, be sure you assign a transport
170 ; that is appropriately configured with NAT related settings. See the NAT transport example.
171 ;
172 ; "contact_user=" sets the SIP contact header's user portion of the SIP URI
173 ; this will affect the extension reached in dialplan when the far end calls you at this
174 ; registration. The default is 's'.
175 ;
176 ; If you would like to enable line support and have incoming calls related to this
177 ; registration go to an endpoint automatically the "line" and "endpoint" options must
178 ; be set. The "endpoint" option specifies what endpoint the incoming call should be
179 ; associated with.
180
181 ;[mytrunk]
182 ;type=registration
183 ;transport=transport-udp
184 ;outbound_auth=mytrunk_auth
185 ;server_uri=sip:sip.example.com
186 ;client_uri=sip:1234567890@sip.example.com
187 ;contact_user=1234567890
188 ;retry_interval=60
189 ;forbidden_retry_interval=600
190 ;expiration=3600
191 ;line=yes
192 ;endpoint=mytrunk
193
194 ;[mytrunk_auth]
195 ;type=auth
196 ;auth_type=userpass
197 ;password=1234567890
198 ;username=1234567890
199 ;realm=sip.example.com
200
201 ;===============ENDPOINT CONFIGURED AS A TRUNK, OUTBOUND AUTHENTICATION=======
202 ;
203 ; This is one way to configure an endpoint as a trunk. It is set up with
204 ; "outbound_auth=" to enable authentication when dialing out through this
205 ; endpoint. There is no inbound authentication set up since a provider will
206 ; not normally authenticate when calling you.
207 ;
208 ; The identify configuration enables IP address matching against this endpoint.
209 ; For calls from a trunking provider, the From user may be different every time,
210 ; so we want to match against IP address instead of From user.
211 ;
212 ; If you want the provider of your trunk to know where to send your calls
213 ; you'll need to use an outbound registration as in the example above this
214 ; section.
215 ;
216 ; NAT
217 ;
218 ; At a basic level configure the endpoint with a transport that is set up
219 ; with the appropriate NAT settings. There may be some additional settings you
220 ; need here based on your NAT/Firewall scenario. Look to the CLI config help
221 ; "config show help res_pjsip endpoint" or on the wiki for other NAT related
222 ; options and configuration. We've included a few below.
223 ;
224 ; AOR
225 ;
226 ; Endpoints use one or more AOR sections to store their contact details.
227 ; You can define multiple contact addresses in SIP URI format in multiple
228 ; "contact=" entries.
229 ;
230
231 ;[mytrunk]
232 ;type=endpoint
233 ;transport=transport-udp
234 ;context=from-external
235 ;disallow=all
236 ;allow=ulaw
237 ;outbound_auth=mytrunk_auth
238 ;aors=mytrunk
239 ;                   ;A few NAT relevant options that may come in handy.
240 ;force_rport=yes    ;It's a good idea to read the configuration help for each
241 ;direct_media=no    ;of these options.
242 ;ice_support=yes
243
244 ;[mytrunk]
245 ;type=aor
246 ;contact=sip:198.51.100.1:5060
247 ;contact=sip:198.51.100.2:5060
248
249 ;[mytrunk]
250 ;type=identify
251 ;endpoint=mytrunk
252 ;match=198.51.100.1
253 ;match=198.51.100.2
254
255
256 ;=============ENDPOINT CONFIGURED AS A TRUNK, INBOUND AUTH AND REGISTRATION===
257 ;
258 ; Here we are allowing a remote device to register to Asterisk and requiring
259 ; that they authenticate for registration and calls.
260 ; You'll note that this configuration is essentially the same as configuring
261 ; an endpoint for use with a SIP phone.
262
263
264 ;[7000]
265 ;type=endpoint
266 ;context=from-external
267 ;disallow=all
268 ;allow=ulaw
269 ;transport=transport-udp
270 ;auth=7000
271 ;aors=7000
272
273 ;[7000]
274 ;type=auth
275 ;auth_type=userpass
276 ;password=7000
277 ;username=7000
278
279 ;[7000]
280 ;type=aor
281 ;max_contacts=1
282
283
284 ;===============ENDPOINT CONFIGURED FOR USE WITH A SIP PHONE==================
285 ;
286 ; This example includes the endpoint, auth and aor configurations. It
287 ; requires inbound authentication and allows registration, as well as references
288 ; a transport that you'll need to uncomment from the previous examples.
289 ;
290 ; Uncomment one of the transport lines to choose which transport you want. If
291 ; not specified then the default transport chosen is the first defined transport
292 ; in the configuration file.
293 ;
294 ; Modify the "max_contacts=" line to change how many unique registrations to allow.
295 ;
296 ; Use the "contact=" line instead of max_contacts= if you want to statically
297 ; define the location of the device.
298 ;
299 ; If using the TLS enabled transport, you may want the "media_encryption=sdes"
300 ; option to additionally enable SRTP, though they are not mutually inclusive.
301 ;
302 ; If this endpoint were remote, and it was using a transport configured for NAT
303 ; then you likely want to use "direct_media=no" to prevent audio issues.
304
305
306 ;[6001]
307 ;type=endpoint
308 ;transport=transport-udp
309 ;context=from-internal
310 ;disallow=all
311 ;allow=ulaw
312 ;allow=gsm
313 ;auth=6001
314 ;aors=6001
315 ;
316 ; A few more transports to pick from, and some related options below them.
317 ;
318 ;transport=transport-tls
319 ;media_encryption=sdes
320 ;transport=transport-udp-ipv6
321 ;transport=transport-udp-nat
322 ;direct_media=no
323 ;
324 ; MWI related options
325
326 ;aggregate_mwi=yes
327 ;mailboxes=6001@default,7001@default
328 ;mwi_from_user=6001
329 ;
330 ; Extension and Device state options
331 ;
332 ;device_state_busy_at=1
333 ;allow_subscribe=yes
334 ;sub_min_expiry=30
335
336 ;[6001]
337 ;type=auth
338 ;auth_type=userpass
339 ;password=6001
340 ;username=6001
341
342 ;[6001]
343 ;type=aor
344 ;max_contacts=1
345 ;contact=sip:6001@192.0.2.1:5060
346
347 ;===============ENDPOINT BEHIND NAT OR FIREWALL===============================
348 ;
349 ; This example assumes your transport is configured with a public IP and the
350 ; endpoint itself is behind NAT and maybe a firewall, rather than having
351 ; Asterisk behind NAT. For the sake of simplicity, we'll assume a typical
352 ; VOIP phone. The most important settings to configure are:
353 ;
354 ;  * direct_media, to ensure Asterisk stays in the media path
355 ;  * rtp_symmetric and force_rport options to help the far-end NAT/firewall
356 ;
357 ; Depending on the settings of your remote SIP device or NAT/firewall device
358 ; you may have to experiment with a combination of these settings.
359 ;
360 ; If both Asterisk and the remote phones are a behind NAT/firewall then you'll
361 ; have to make sure to use a transport with appropriate settings (as in the
362 ; transport-udp-nat example).
363 ;
364 ;[6002]
365 ;type=endpoint
366 ;transport=transport-udp
367 ;context=from-internal
368 ;disallow=all
369 ;allow=ulaw
370 ;auth=6002
371 ;aors=6002
372 ;direct_media=no
373 ;rtp_symmetric=yes
374 ;force_rport=yes
375 ;rewrite_contact=yes  ; necessary if endpoint does not know/register public ip:port
376 ;ice_support=yes   ;This is specific to clients that support NAT traversal
377                    ;for media via ICE,STUN,TURN. See the wiki at:
378                    ;https://wiki.asterisk.org/wiki/x/D4FHAQ
379                    ;for a deeper explanation of this topic.
380
381 ;[6002]
382 ;type=auth
383 ;auth_type=userpass
384 ;password=6002
385 ;username=6002
386
387 ;[6002]
388 ;type=aor
389 ;max_contacts=2
390
391
392 ;============EXAMPLE ACL CONFIGURATION==========================================
393 ;
394 ; The ACL or Access Control List section defines a set of permissions to permit
395 ; or deny access to various address or addresses. Alternatively it references an
396 ; ACL configuration already set in acl.conf.
397 ;
398 ; The ACL configuration is independent of individual endpoint configuration and
399 ; operates on all inbound SIP communication using res_pjsip.
400
401 ; Reference an ACL defined in acl.conf.
402 ;
403 ;[acl]
404 ;type=acl
405 ;acl=example_named_acl1
406
407 ; Reference a contactacl specifically.
408 ;
409 ;[acl]
410 ;type=acl
411 ;contact_acl=example_contact_acl1
412
413 ; Define your own ACL here in pjsip.conf and
414 ; permit or deny by IP address or range.
415 ;
416 ;[acl]
417 ;type=acl
418 ;deny=0.0.0.0/0.0.0.0
419 ;permit=209.16.236.0/24
420 ;deny=209.16.236.1
421
422 ; Restrict based on Contact Headers rather than IP.
423 ; Define options multiple times for various addresses or use a comma-delimited string.
424 ;
425 ;[acl]
426 ;type=acl
427 ;contact_deny=0.0.0.0/0.0.0.0
428 ;contact_permit=209.16.236.0/24
429 ;contact_permit=209.16.236.1
430 ;contact_permit=209.16.236.2,209.16.236.3
431
432 ; Restrict based on Contact Headers rather than IP and use
433 ; advanced syntax. Note the bang symbol used for "NOT", so we can deny
434 ; 209.16.236.12/32 within the permit= statement.
435 ;
436 ;[acl]
437 ;type=acl
438 ;contact_deny=0.0.0.0/0.0.0.0
439 ;contact_permit=209.16.236.0
440 ;permit=209.16.236.0/24, !209.16.236.12/32
441
442
443 ;============EXAMPLE RLS CONFIGURATION==========================================
444 ;
445 ;Asterisk provides support for RFC 4662 Resource List Subscriptions. This allows
446 ;for an endpoint to, through a single subscription, subscribe to the states of
447 ;multiple resources. Resource lists are configured in pjsip.conf using the
448 ;resource_list configuration object. Below is an example of a resource list that
449 ;allows an endpoint to subscribe to the presence of alice, bob, and carol.
450
451 ;[my_list]
452 ;type=resource_list
453 ;list_item=alice
454 ;list_item=bob
455 ;list_item=carol
456 ;event=presence
457
458 ;The "event" option in the resource list corresponds to the SIP event-package
459 ;that the subscribed resources belong to. A resource list can only provide states
460 ;for resources that belong to the same event-package. This means that you cannot
461 ;create a list that is a combination of presence and message-summary resources,
462 ;for instance. Any event-package that Asterisk supports can be used in a resource
463 ;list (presence, dialog, and message-summary). Whenever support for a new event-
464 ;package is added to Asterisk, support for that event-package in resource lists
465 ;will automatically be supported.
466
467 ;The "list_item" options indicate the names of resources to subscribe to. The
468 ;way these are interpreted is event-package specific. For instance, with presence
469 ;list_items, hints in the dialplan are looked up. With message-summary list_items,
470 ;mailboxes are looked up using your installed voicemail provider (app_voicemail
471 ;by default). Note that in the above example, the list_item options were given
472 ;one per line. However, it is also permissible to provide multiple list_item
473 ;options on a single line (e.g. list_item = alice,bob,carol).
474
475 ;In addition to the options presented in the above configuration, there are two
476 ;more configuration options that can be set.
477 ; * full_state: dictates whether Asterisk should always send the states of
478 ;   all resources in the list at once. Defaults to "no". You should only set
479 ;   this to "yes" if you are interoperating with an endpoint that does not
480 ;   behave correctly when partial state notifications are sent to it.
481 ; * notification_batch_interval: By default, Asterisk will send a NOTIFY request
482 ;   immediately when a resource changes state. This option causes Asterisk to
483 ;   start batching resource state changes for the specified number of milliseconds
484 ;   after a resource changes states. This way, if multiple resources change state
485 ;   within a brief interval, Asterisk can send a single NOTIFY request with all
486 ;   of the state changes reflected in it.
487
488 ;There is a limitation to the size of resource lists in Asterisk. If a constructed
489 ;notification from Asterisk will exceed 64000 bytes, then the message is deemed
490 ;too large to send. If you find that you are seeing error messages about SIP
491 ;NOTIFY requests being too large to send, consider breaking your lists into
492 ;sub-lists.
493
494 ;============EXAMPLE PHONEPROV CONFIGURATION================================
495
496 ; Before configuring provisioning here, see the documentation for res_phoneprov
497 ; and configure phoneprov.conf appropriately.
498
499 ; For each user to be autoprovisioned, a [phoneprov] configuration section
500 ; must be created.  At a minimum, the 'type', 'PROFILE' and 'MAC' variables must
501 ; be set.  All other variables are optional.
502 ; Example:
503
504 ;[1000]
505 ;type=phoneprov               ; must be specified as 'phoneprov'
506 ;endpoint=1000                ; Required only if automatic setting of
507                               ; USERNAME, SECRET, DISPLAY_NAME and CALLERID
508                               ; are needed.
509 ;PROFILE=digium               ; required
510 ;MAC=deadbeef4dad             ; required
511 ;SERVER=myserver.example.com  ; A standard variable
512 ;TIMEZONE=America/Denver      ; A standard variable
513 ;MYVAR=somevalue              ; A user confdigured variable
514
515 ; If the phoneprov sections have common variables, it is best to create a
516 ; phoneprov template.  The example below will produce the same configuration
517 ; as the one specified above except that MYVAR will be overridden for
518 ; the specific user.
519 ; Example:
520
521 ;[phoneprov_defaults](!)
522 ;type=phoneprov               ; must be specified as 'phoneprov'
523 ;PROFILE=digium               ; required
524 ;SERVER=myserver.example.com  ; A standard variable
525 ;TIMEZONE=America/Denver      ; A standard variable
526 ;MYVAR=somevalue              ; A user configured variable
527
528 ;[1000](phoneprov_defaults)
529 ;endpoint=1000                ; Required only if automatic setting of
530                               ; USERNAME, SECRET, DISPLAY_NAME and CALLERID
531                               ; are needed.
532 ;MAC=deadbeef4dad             ; required
533 ;MYVAR=someOTHERvalue         ; A user confdigured variable
534
535 ; To have USERNAME and SECRET automatically set, the endpoint
536 ; specified here must in turn have an outbound_auth section defined.
537
538 ; Fuller example:
539
540 ;[1000]
541 ;type=endpoint
542 ;outbound_auth=1000-auth
543 ;callerid=My Name <8005551212>
544 ;transport=transport-udp-nat
545
546 ;[1000-auth]
547 ;type=auth
548 ;auth_type=userpass
549 ;username=myname
550 ;password=mysecret
551
552 ;[phoneprov_defaults](!)
553 ;type=phoneprov               ; must be specified as 'phoneprov'
554 ;PROFILE=someprofile          ; required
555 ;SERVER=myserver.example.com  ; A standard variable
556 ;TIMEZONE=America/Denver      ; A standard variable
557 ;MYVAR=somevalue              ; A user configured variable
558
559 ;[1000](phoneprov_defaults)
560 ;endpoint=1000                ; Required only if automatic setting of
561                               ; USERNAME, SECRET, DISPLAY_NAME and CALLERID
562                               ; are needed.
563 ;MAC=deadbeef4dad             ; required
564 ;MYVAR=someUSERvalue          ; A user confdigured variable
565 ;LABEL=1000                   ; A standard variable
566
567 ; The previous sections would produce a template substitution map as follows:
568
569 ;MAC=deadbeef4dad               ;added by pp1000
570 ;USERNAME=myname                ;automatically added by 1000-auth username
571 ;SECRET=mysecret                ;automatically added by 1000-auth password
572 ;PROFILE=someprofile            ;added by defaults
573 ;SERVER=myserver.example.com    ;added by defaults
574 ;SERVER_PORT=5060               ;added by defaults
575 ;MYVAR=someUSERvalue            ;added by defaults but overdidden by user
576 ;CALLERID=8005551212            ;automatically added by 1000 callerid
577 ;DISPLAY_NAME=My Name           ;automatically added by 1000 callerid
578 ;TIMEZONE=America/Denver        ;added by defaults
579 ;TZOFFSET=252100                ;automatically calculated by res_phoneprov
580 ;DST_ENABLE=1                   ;automatically calculated by res_phoneprov
581 ;DST_START_MONTH=3              ;automatically calculated by res_phoneprov
582 ;DST_START_MDAY=9               ;automatically calculated by res_phoneprov
583 ;DST_START_HOUR=3               ;automatically calculated by res_phoneprov
584 ;DST_END_MONTH=11               ;automatically calculated by res_phoneprov
585 ;DST_END_MDAY=2                 ;automatically calculated by res_phoneprov
586 ;DST_END_HOUR=1                 ;automatically calculated by res_phoneprov
587 ;ENDPOINT_ID=1000               ;automatically added by this module
588 ;AUTH_ID=1000-auth              ;automatically added by this module
589 ;TRANSPORT_ID=transport-udp-nat ;automatically added by this module
590 ;LABEL=1000                     ;added by user
591
592 ; MODULE PROVIDING BELOW SECTION(S): res_pjsip
593 ;==========================ENDPOINT SECTION OPTIONS=========================
594 ;[endpoint]
595 ;  SYNOPSIS: Endpoint
596 ;100rel=yes     ; Allow support for RFC3262 provisional ACK tags (default:
597                 ; "yes")
598 ;aggregate_mwi=yes      ;  (default: "yes")
599 ;allow= ; Media Codec s to allow (default: "")
600 ;allow_overlap=yes ; Enable RFC3578 overlap dialing support. (default: "yes")
601 ;aors=  ; AoR s to be used with the endpoint (default: "")
602 ;auth=  ; Authentication Object s associated with the endpoint (default: "")
603 ;callerid=      ; CallerID information for the endpoint (default: "")
604 ;callerid_privacy=allowed_not_screened      ; Default privacy level (default: "allowed_not_screened")
605 ;callerid_tag=  ; Internal id_tag for the endpoint (default: "")
606 ;context=default        ; Dialplan context for inbound sessions (default:
607                         ; "default")
608 ;direct_media_glare_mitigation=none     ; Mitigation of direct media re INVITE
609                                         ; glare (default: "none")
610 ;direct_media_method=invite     ; Direct Media method type (default: "invite")
611 ;connected_line_method=invite   ; Connected line method type.
612                                 ; When set to "invite", check the remote's
613                                 ; Allow header and if UPDATE is allowed, send
614                                 ; UPDATE instead of INVITE to avoid SDP
615                                 ; renegotiation.  If UPDATE is not Allowed,
616                                 ; send INVITE.
617                                 ; If set to "update", send UPDATE regardless
618                                 ; of what the remote Allows.
619                                 ; (default: "invite")
620 ;direct_media=yes       ; Determines whether media may flow directly between
621                         ; endpoints (default: "yes")
622 ;disable_direct_media_on_nat=no ; Disable direct media session refreshes when
623                                 ; NAT obstructs the media session (default:
624                                 ; "no")
625 ;disallow=      ; Media Codec s to disallow (default: "")
626 ;dtmf_mode=rfc4733      ; DTMF mode (default: "rfc4733")
627 ;media_address=         ; IP address used in SDP for media handling (default: "")
628 ;bind_rtp_to_media_address=     ; Bind the RTP session to the media_address.
629                                 ; This causes all RTP packets to be sent from
630                                 ; the specified address. (default: "no")
631 ;force_rport=yes        ; Force use of return port (default: "yes")
632 ;ice_support=no ; Enable the ICE mechanism to help traverse NAT (default: "no")
633 ;identify_by=username   ; A comma-separated list of ways the Endpoint or AoR can be
634                         ; identified.
635                         ; "username": Identify by the From or To username and domain
636                         ; "auth_username": Identify by the Authorization username and realm
637                         ; "ip": Identify by the source IP address
638                         ; "header": Identify by a configured SIP header value.
639                         ; In the username and auth_username cases, if an exact match
640                         ; on both username and domain/realm fails, the match is
641                         ; retried with just the username.
642                         ; (default: "username,ip")
643 ;redirect_method=user   ; How redirects received from an endpoint are handled
644                         ; (default: "user")
645 ;mailboxes=     ; NOTIFY the endpoint when state changes for any of the specified mailboxes.
646                 ; Asterisk will send unsolicited MWI NOTIFY messages to the endpoint when state
647                 ; changes happen for any of the specified mailboxes. (default: "")
648 ;voicemail_extension= ; The voicemail extension to send in the NOTIFY Message-Account header
649                       ; (default: global/default_voicemail_extension)
650 ;mwi_subscribe_replaces_unsolicited=no
651                       ; An MWI subscribe will replace unsoliticed NOTIFYs
652                       ; (default: "no")
653 ;moh_suggest=default    ; Default Music On Hold class (default: "default")
654 ;moh_passthrough=yes    ; Pass Music On Hold through using SIP re-invites with sendonly
655                         ; when placing on hold and sendrecv when taking off hold
656 ;outbound_auth= ; Authentication object used for outbound requests (default:
657                 ; "")
658 ;outbound_proxy=        ; Proxy through which to send requests, a full SIP URI
659                         ; must be provided (default: "")
660 ;rewrite_contact=no     ; Allow Contact header to be rewritten with the source
661                         ; IP address port (default: "no")
662 ;rtp_symmetric=no       ; Enforce that RTP must be symmetric (default: "no")
663 ;send_diversion=yes     ; Send the Diversion header conveying the diversion
664                         ; information to the called user agent (default: "yes")
665 ;send_pai=no    ; Send the P Asserted Identity header (default: "no")
666 ;send_rpid=no   ; Send the Remote Party ID header (default: "no")
667 ;rpid_immediate=no      ; Send connected line updates on unanswered incoming calls immediately. (default: "no")
668 ;timers_min_se=90       ; Minimum session timers expiration period (default:
669                         ; "90")
670 ;timers=yes     ; Session timers for SIP packets (default: "yes")
671 ;timers_sess_expires=1800       ; Maximum session timer expiration period
672                                 ; (default: "1800")
673 ;transport=     ; Desired transport configuration (default: "")
674 ;trust_id_inbound=no    ; Accept identification information received from this
675                         ; endpoint (default: "no")
676 ;trust_id_outbound=no   ; Send private identification details to the endpoint
677                         ; (default: "no")
678 ;type=  ; Must be of type endpoint (default: "")
679 ;use_ptime=no   ; Use Endpoint s requested packetisation interval (default:
680                 ; "no")
681 ;use_avpf=no    ; Determines whether res_pjsip will use and enforce usage of
682                 ; AVPF for this endpoint (default: "no")
683 ;media_encryption=no    ; Determines whether res_pjsip will use and enforce
684                         ; usage of media encryption for this endpoint (default:
685                         ; "no")
686 ;media_encryption_optimistic=no ; Use encryption if possible but don't fail the call
687                                 ; if not possible.
688 ;g726_non_standard=no   ; When set to "yes" and an endpoint negotiates g.726
689                         ; audio then g.726 for AAL2 packing order is used contrary
690                         ; to what is recommended in RFC3551. Note, 'g726aal2' also
691                         ; needs to be specified in the codec allow list
692                         ; (default: "no")
693 ;inband_progress=no     ; Determines whether chan_pjsip will indicate ringing
694                         ; using inband progress (default: "no")
695 ;call_group=    ; The numeric pickup groups for a channel (default: "")
696 ;pickup_group=  ; The numeric pickup groups that a channel can pickup (default:
697                 ; "")
698 ;named_call_group=      ; The named pickup groups for a channel (default: "")
699 ;named_pickup_group=    ; The named pickup groups that a channel can pickup
700                         ; (default: "")
701 ;device_state_busy_at=0 ; The number of in use channels which will cause busy
702                         ; to be returned as device state (default: "0")
703 ;t38_udptl=no   ; Whether T 38 UDPTL support is enabled or not (default: "no")
704 ;t38_udptl_ec=none      ; T 38 UDPTL error correction method (default: "none")
705 ;t38_udptl_maxdatagram=0        ; T 38 UDPTL maximum datagram size (default:
706                                 ; "0")
707 ;fax_detect=no  ; Whether CNG tone detection is enabled (default: "no")
708 ;fax_detect_timeout=30  ; How many seconds into a call before fax_detect is
709                         ; disabled for the call.
710                         ; Zero disables the timeout.
711                         ; (default: "0")
712 ;t38_udptl_nat=no       ; Whether NAT support is enabled on UDPTL sessions
713                         ; (default: "no")
714 ;tone_zone=     ; Set which country s indications to use for channels created
715                 ; for this endpoint (default: "")
716 ;language=      ; Set the default language to use for channels created for this
717                 ; endpoint (default: "")
718 ;one_touch_recording=no ; Determines whether one touch recording is allowed for
719                         ; this endpoint (default: "no")
720 ;record_on_feature=automixmon   ; The feature to enact when one touch recording
721                                 ; is turned on (default: "automixmon")
722 ;record_off_feature=automixmon  ; The feature to enact when one touch recording
723                                 ; is turned off (default: "automixmon")
724 ;rtp_engine=asterisk    ; Name of the RTP engine to use for channels created
725                         ; for this endpoint (default: "asterisk")
726 ;allow_transfer=yes     ; Determines whether SIP REFER transfers are allowed
727                         ; for this endpoint (default: "yes")
728 ;sdp_owner=-    ; String placed as the username portion of an SDP origin o line
729                 ; (default: "-")
730 ;sdp_session=Asterisk   ; String used for the SDP session s line (default:
731                         ; "Asterisk")
732 ;tos_audio=0    ; DSCP TOS bits for audio streams (default: "0")
733 ;tos_video=0    ; DSCP TOS bits for video streams (default: "0")
734 ;cos_audio=0    ; Priority for audio streams (default: "0")
735 ;cos_video=0    ; Priority for video streams (default: "0")
736 ;allow_subscribe=yes    ; Determines if endpoint is allowed to initiate
737                         ; subscriptions with Asterisk (default: "yes")
738 ;sub_min_expiry=0       ; The minimum allowed expiry time for subscriptions
739                         ; initiated by the endpoint (default: "0")
740 ;from_user=     ; Username to use in From header for requests to this endpoint
741                 ; (default: "")
742 ;mwi_from_user= ; Username to use in From header for unsolicited MWI NOTIFYs to
743                 ; this endpoint (default: "")
744 ;from_domain=   ; Domain to user in From header for requests to this endpoint
745                 ; (default: "")
746 ;dtls_verify=no ; Verify that the provided peer certificate is valid (default:
747                 ; "no")
748 ;dtls_rekey=0   ; Interval at which to renegotiate the TLS session and rekey
749                 ; the SRTP session (default: "0")
750 ;dtls_auto_generate_cert= ; Enable ephemeral DTLS certificate generation (default:
751                           ; "no")
752 ;dtls_cert_file=          ; Path to certificate file to present to peer (default:
753                           ; "")
754 ;dtls_private_key=        ; Path to private key for certificate file (default:
755                           ; "")
756 ;dtls_cipher=   ; Cipher to use for DTLS negotiation (default: "")
757 ;dtls_ca_file=  ; Path to certificate authority certificate (default: "")
758 ;dtls_ca_path=  ; Path to a directory containing certificate authority
759                 ; certificates (default: "")
760 ;dtls_setup=    ; Whether we are willing to accept connections connect to the
761                 ; other party or both (default: "")
762 ;dtls_fingerprint= ; Hash to use for the fingerprint placed into SDP
763                    ; (default: "SHA-256")
764 ;srtp_tag_32=no ; Determines whether 32 byte tags should be used instead of 80
765                 ; byte tags (default: "no")
766 ;set_var=       ; Variable set on a channel involving the endpoint. For multiple
767                 ; channel variables specify multiple 'set_var'(s)
768 ;rtp_keepalive= ; Interval, in seconds, between comfort noise RTP packets if
769                 ; RTP is not flowing. This setting is useful for ensuring that
770                 ; holes in NATs and firewalls are kept open throughout a call.
771 ;rtp_timeout=      ; Hang up channel if RTP is not received for the specified
772                    ; number of seconds when the channel is off hold (default:
773                    ; "0" or not enabled)
774 ;rtp_timeout_hold= ; Hang up channel if RTP is not received for the specified
775                    ; number of seconds when the channel is on hold (default:
776                    ; "0" or not enabled)
777 ;contact_user= ; On outgoing requests, force the user portion of the Contact
778                ; header to this value (default: "")
779 ;preferred_codec_only=yes       ; Respond to a SIP invite with the single most preferred codec
780                                 ; rather than advertising all joint codec capabilities. This
781                                 ; limits the other side's codec choice to exactly what we prefer.
782                                 ; default is no.
783 ;asymmetric_rtp_codec= ; Allow the sending and receiving codec to differ and
784                        ; not be automatically matched (default: "no")
785 ;refer_blind_progress= ; Whether to notifies all the progress details on blind
786                        ; transfer (default: "yes"). The value "no" is useful
787                        ; for some SIP phones (Mitel/Aastra, Snom) which expect
788                        ; a sip/frag "200 OK" after REFER has been accepted.
789 ;notify_early_inuse_ringing = ; Whether to notifies dialog-info 'early'
790                               ; on INUSE && RINGING state (default: "no").
791                               ; The value "yes" is useful for some SIP phones
792                               ; (Cisco SPA) to be able to indicate and pick up
793                               ; ringing devices.
794 ;max_audio_streams= ; The maximum number of allowed negotiated audio streams
795                     ; (default: 1)
796 ;max_video_streams= ; The maximum number of allowed negotiated video streams
797                     ; (default: 1)
798 ;webrtc= ; When set to "yes" this also enables the following values that are needed
799          ; for webrtc: rtcp_mux, use_avpf, ice_support, and use_received_transport.
800          ; The following configuration settings also get defaulted as follows:
801          ;     media_encryption=dtls
802          ;     dtls_verify=fingerprint
803          ;     dtls_setup=actpass
804          ; A dtls_cert_file and a dtls_ca_file still need to be specified.
805          ; Default for this option is "no"
806 ;incoming_mwi_mailbox = ; Mailbox name to use when incoming MWI NOTIFYs are
807                         ; received.
808                         ; If an MWI NOTIFY is received FROM this endpoint,
809                         ; this mailbox will be used when notifying other modules
810                         ; of MWI status changes.  If not set, incoming MWI
811                         ; NOTIFYs are ignored.
812
813 ;==========================AUTH SECTION OPTIONS=========================
814 ;[auth]
815 ;  SYNOPSIS: Authentication type
816 ;
817 ;  Note: Using the same auth section for inbound and outbound
818 ;  authentication is not recommended.  There is a difference in
819 ;  meaning for an empty realm setting between inbound and outbound
820 ;  authentication uses.  Look to the CLI config help
821 ;  "config show help res_pjsip auth realm" or on the wiki for the
822 ;  difference.
823 ;
824 ;auth_type=userpass     ; Authentication type (default: "userpass")
825 ;nonce_lifetime=32      ; Lifetime of a nonce associated with this
826                         ; authentication config (default: "32")
827 ;md5_cred=      ; MD5 Hash used for authentication (default: "")
828 ;password=      ; PlainText password used for authentication (default: "")
829 ;realm= ; SIP realm for endpoint (default: "")
830 ;type=  ; Must be auth (default: "")
831 ;username=      ; Username to use for account (default: "")
832
833
834 ;==========================DOMAIN_ALIAS SECTION OPTIONS=========================
835 ;[domain_alias]
836 ;  SYNOPSIS: Domain Alias
837 ;type=  ; Must be of type domain_alias (default: "")
838 ;domain=        ; Domain to be aliased (default: "")
839
840
841 ;==========================TRANSPORT SECTION OPTIONS=========================
842 ;[transport]
843 ;  SYNOPSIS: SIP Transport
844 ;async_operations=1     ; Number of simultaneous Asynchronous Operations
845                         ; (default: "1")
846 ;bind=  ; IP Address and optional port to bind to for this transport (default:
847         ; "")
848 ;ca_list_file=  ; File containing a list of certificates to read TLS ONLY
849                 ; (default: "")
850 ;ca_list_path=  ; Path to directory containing certificates to read TLS ONLY.
851                 ; PJProject version 2.4 or higher is required for this option to
852                 ; be used.
853                 ; (default: "")
854 ;cert_file=     ; Certificate file for endpoint TLS ONLY
855                 ; Will read .crt or .pem file but only uses cert,
856                 ; a .key file must be specified via priv_key_file.
857                 ; Since PJProject version 2.5: If the file name ends in _rsa,
858                 ; for example "asterisk_rsa.pem", the files "asterisk_dsa.pem"
859                 ; and/or "asterisk_ecc.pem" are loaded (certificate, inter-
860                 ; mediates, private key), to support multiple algorithms for
861                 ; server authentication (RSA, DSA, ECDSA). If the chains are
862                 ; different, at least OpenSSL 1.0.2 is required.
863                 ; (default: "")
864 ;cipher=        ; Preferred cryptography cipher names TLS ONLY (default: "")
865 ;domain=        ; Domain the transport comes from (default: "")
866 ;external_media_address=        ; External IP address to use in RTP handling
867                                 ; (default: "")
868 ;external_signaling_address=    ; External address for SIP signalling (default:
869                                 ; "")
870 ;external_signaling_port=0      ; External port for SIP signalling (default:
871                                 ; "0")
872 ;method=        ; Method of SSL transport TLS ONLY (default: "")
873 ;local_net=     ; Network to consider local used for NAT purposes (default: "")
874 ;password=      ; Password required for transport (default: "")
875 ;priv_key_file= ; Private key file TLS ONLY (default: "")
876 ;protocol=udp   ; Protocol to use for SIP traffic (default: "udp")
877 ;require_client_cert=   ; Require client certificate TLS ONLY (default: "")
878 ;type=  ; Must be of type transport (default: "")
879 ;verify_client= ; Require verification of client certificate TLS ONLY (default:
880                 ; "")
881 ;verify_server= ; Require verification of server certificate TLS ONLY (default:
882                 ; "")
883 ;tos=0  ; Enable TOS for the signalling sent over this transport (default: "0")
884 ;cos=0  ; Enable COS for the signalling sent over this transport (default: "0")
885 ;websocket_write_timeout=100    ; Default write timeout to set on websocket
886                                 ; transports. This value may need to be adjusted
887                                 ; for connections where Asterisk must write a
888                                 ; substantial amount of data and the receiving
889                                 ; clients are slow to process the received
890                                 ; information. Value is in milliseconds; default
891                                 ; is 100 ms.
892 ;allow_reload=no    ; Although transports can now be reloaded, that may not be
893                     ; desirable because of the slight possibility of dropped
894                     ; calls. To make sure there are no unintentional drops, if
895                     ; this option is set to 'no' (the default) changes to the
896                     ; particular transport will be ignored. If set to 'yes',
897                     ; changes (if any) will be applied.
898 ;symmetric_transport=no ; When a request from a dynamic contact comes in on a
899                         ; transport with this option set to 'yes', the transport
900                         ; name will be saved and used for subsequent outgoing
901                         ; requests like OPTIONS, NOTIFY and INVITE.  It's saved
902                         ; as a contact uri parameter named 'x-ast-txp' and will
903                         ; display with the contact uri in CLI, AMI, and ARI
904                         ; output.  On the outgoing request, if a transport
905                         ; wasn't explicitly set on the endpoint AND the request
906                         ; URI is not a hostname, the saved transport will be
907                         ; used and the 'x-ast-txp' parameter stripped from the
908                         ; outgoing packet.
909
910 ;==========================AOR SECTION OPTIONS=========================
911 ;[aor]
912 ;  SYNOPSIS: The configuration for a location of an endpoint
913 ;contact=       ; Permanent contacts assigned to AoR (default: "")
914 ;default_expiration=3600        ; Default expiration time in seconds for
915                                 ; contacts that are dynamically bound to an AoR
916                                 ; (default: "3600")
917 ;mailboxes=           ; Allow subscriptions for the specified mailbox(es)
918                       ; This option applies when an external entity subscribes to an AoR
919                       ; for Message Waiting Indications. (default: "")
920 ;voicemail_extension= ; The voicemail extension to send in the NOTIFY Message-Account header
921                       ; (default: global/default_voicemail_extension)
922 ;maximum_expiration=7200        ; Maximum time to keep an AoR (default: "7200")
923 ;max_contacts=0 ; Maximum number of contacts that can bind to an AoR (default:
924                 ; "0")
925 ;minimum_expiration=60  ; Minimum keep alive time for an AoR (default: "60")
926 ;remove_existing=no     ; Allow a registration to succeed by displacing any existing
927                         ; contacts that now exceed the max_contacts count.  Any
928                         ; removed contacts are the next to expire.  The behaviour is
929                         ; beneficial when rewrite_contact is enabled and max_contacts
930                         ; is greater than one.  The removed contact is likely the old
931                         ; contact created by rewrite_contact that the device is
932                         ; refreshing.
933                         ; (default: "no")
934 ;type=  ; Must be of type aor (default: "")
935 ;qualify_frequency=0    ; Interval at which to qualify an AoR (default: "0")
936 ;qualify_timeout=3.0      ; Qualify timeout in fractional seconds (default: "3.0")
937 ;authenticate_qualify=no        ; Authenticates a qualify request if needed
938                                 ; (default: "no")
939 ;outbound_proxy=        ; Proxy through which to send OPTIONS requests, a full SIP URI
940                         ; must be provided (default: "")
941
942
943 ;==========================SYSTEM SECTION OPTIONS=========================
944 ;[system]
945 ;  SYNOPSIS: Options that apply to the SIP stack as well as other system-wide settings
946 ;timer_t1=500   ; Set transaction timer T1 value milliseconds (default: "500")
947 ;timer_b=32000  ; Set transaction timer B value milliseconds (default: "32000")
948 ;compact_headers=no     ; Use the short forms of common SIP header names
949                         ; (default: "no")
950 ;threadpool_initial_size=0      ; Initial number of threads in the res_pjsip
951                                 ; threadpool (default: "0")
952 ;threadpool_auto_increment=5    ; The amount by which the number of threads is
953                                 ; incremented when necessary (default: "5")
954 ;threadpool_idle_timeout=60     ; Number of seconds before an idle thread
955                                 ; should be disposed of (default: "60")
956 ;threadpool_max_size=0  ; Maximum number of threads in the res_pjsip threadpool
957                         ; A value of 0 indicates no maximum (default: "0")
958 ;disable_tcp_switch=yes ; Disable automatic switching from UDP to TCP transports
959                         ; if outgoing request is too large.
960                         ; See RFC 3261 section 18.1.1.
961                         ; Disabling this option has been known to cause interoperability
962                         ; issues, so disable at your own risk.
963                         ; (default: "yes")
964 ;type=  ; Must be of type system (default: "")
965
966 ;==========================GLOBAL SECTION OPTIONS=========================
967 ;[global]
968 ;  SYNOPSIS: Options that apply globally to all SIP communications
969 ;max_forwards=70        ; Value used in Max Forwards header for SIP requests
970                         ; (default: "70")
971 ;type=  ; Must be of type global (default: "")
972 ;user_agent=Asterisk PBX        ; Allows you to change the user agent string
973                                 ; The default user agent string also contains
974                                 ; the Asterisk version. If you don't want to
975                                 ; expose this, change the user_agent string.
976 ;default_outbound_endpoint=default_outbound_endpoint    ; Endpoint to use when
977                                                         ; sending an outbound
978                                                         ; request to a URI
979                                                         ; without a specified
980                                                         ; endpoint (default: "d
981                                                         ; efault_outbound_endpo
982                                                         ; int")
983 ;debug=no ; Enable/Disable SIP debug logging.  Valid options include yes|no
984           ; or a host address (default: "no")
985 ;keep_alive_interval=20 ; The interval (in seconds) at which to send keepalive
986                         ; messages on all active connection-oriented transports
987                         ; (default: "0")
988 ;contact_expiration_check_interval=30
989                         ; The interval (in seconds) to check for expired contacts.
990 ;disable_multi_domain=no
991             ; Disable Multi Domain support.
992             ; If disabled it can improve realtime performace by reducing
993             ; number of database requsts
994             ; (default: "no")
995 ;endpoint_identifier_order=ip,username,anonymous
996             ; The order by which endpoint identifiers are given priority.
997             ; Currently, "ip", "header", "username", "auth_username" and "anonymous"
998             ; are valid identifiers as registered by the res_pjsip_endpoint_identifier_*
999             ; modules.  Some modules like res_pjsip_endpoint_identifier_user register
1000             ; more than one identifier.  Use the CLI command "pjsip show identifiers"
1001             ; to see the identifiers currently available.
1002             ; (default: ip,username,anonymous)
1003 ;max_initial_qualify_time=4 ; The maximum amount of time (in seconds) from
1004                             ; startup that qualifies should be attempted on all
1005                             ; contacts.  If greater than the qualify_frequency
1006                             ; for an aor, qualify_frequency will be used instead.
1007 ;regcontext=sipregistrations  ; If regcontext is specified, Asterisk will dynamically
1008                               ; create and destroy a NoOp priority 1 extension for a
1009                               ; given endpoint who registers or unregisters with us.
1010                               ; The extension added is the name of the endpoint.
1011 ;default_voicemail_extension=asterisk
1012                    ; The voicemail extension to send in the NOTIFY Message-Account header
1013                    ; if not set on endpoint or aor.
1014                    ; (default: "")
1015 ;
1016 ; The following unidentified_request options are only used when "auth_username"
1017 ; matching is enabled in "endpoint_identifier_order".
1018 ;
1019 ;unidentified_request_count=5   ; The number of unidentified requests that can be
1020                                 ; received from a single IP address in
1021                                 ; unidentified_request_period seconds before a security
1022                                 ; event is generated. (default: 5)
1023 ;unidentified_request_period=5  ; See above.  (default: 5 seconds)
1024 ;unidentified_request_prune_interval=30
1025                                 ; The interval at which unidentified requests
1026                                 ; are check to see if they can be pruned.  If they're
1027                                 ; older than twice the unidentified_request_period,
1028                                 ; they're pruned.
1029 ;
1030 ;default_from_user=asterisk     ; When Asterisk generates an outgoing SIP request, the
1031                                 ; From header username will be set to this value if
1032                                 ; there is no better option (such as CallerID or
1033                                 ; endpoint/from_user) to be used
1034 ;default_realm=asterisk         ; When Asterisk generates a challenge, the digest realm
1035                                 ; will be set to this value if there is no better option
1036                                 ; (such as auth/realm) to be used.
1037
1038                     ; Asterisk Task Processor Queue Size
1039                     ; On heavy loaded system with DB storage you may need to increase
1040                     ; taskprocessor queue.
1041                     ; If the taskprocessor queue size reached high water level,
1042                     ; the alert is triggered.
1043                     ; If the alert is set the pjsip distibutor stops processing incoming
1044                     ; requests until the alert is cleared.
1045                     ; The alert is cleared when taskprocessor queue size drops to the
1046                     ; low water clear level.
1047                     ; The next options set taskprocessor queue levels for MWI.
1048 ;mwi_tps_queue_high=500 ; Taskprocessor high water alert trigger level.
1049 ;mwi_tps_queue_low=450  ; Taskprocessor low water clear alert level.
1050                     ; The default is -1 for 90% of high water level.
1051
1052                     ; Unsolicited MWI
1053                     ; If there are endpoints configured with unsolicited MWI
1054                     ; then res_pjsip_mwi module tries to send MWI to all endpoints on startup.
1055 ;mwi_disable_initial_unsolicited=no ; Disable sending unsolicited mwi to all endpoints on startup.
1056                     ; If disabled then unsolicited mwi will start processing
1057                     ; on the endpoint's next contact update.
1058
1059 ;ignore_uri_user_options=no ; Enable/Disable ignoring SIP URI user field options.
1060                     ; If you have this option enabled and there are semicolons
1061                     ; in the user field of a SIP URI then the field is truncated
1062                     ; at the first semicolon.  This effectively makes the semicolon
1063                     ; a non-usable character for PJSIP endpoint names, extensions,
1064                     ; and AORs.  This can be useful for improving compatability with
1065                     ; an ITSP that likes to use user options for whatever reason.
1066                     ; Example:
1067                     ; URI: "sip:1235557890;phone-context=national@x.x.x.x;user=phone"
1068                     ; The user field is "1235557890;phone-context=national"
1069                     ; Which becomes this: "1235557890"
1070                     ;
1071                     ; Note: The caller-id and redirecting number strings obtained
1072                     ; from incoming SIP URI user fields are always truncated at the
1073                     ; first semicolon.
1074
1075 ; MODULE PROVIDING BELOW SECTION(S): res_pjsip_acl
1076 ;==========================ACL SECTION OPTIONS=========================
1077 ;[acl]
1078 ;  SYNOPSIS: Access Control List
1079 ;acl=   ; List of IP ACL section names in acl conf (default: "")
1080 ;contact_acl=   ; List of Contact ACL section names in acl conf (default: "")
1081 ;contact_deny=  ; List of Contact header addresses to deny (default: "")
1082 ;contact_permit=        ; List of Contact header addresses to permit (default:
1083                         ; "")
1084 ;deny=  ; List of IP addresses to deny access from (default: "")
1085 ;permit=        ; List of IP addresses to permit access from (default: "")
1086 ;type=  ; Must be of type acl (default: "")
1087
1088
1089
1090
1091 ; MODULE PROVIDING BELOW SECTION(S): res_pjsip_outbound_registration
1092 ;==========================REGISTRATION SECTION OPTIONS=========================
1093 ;[registration]
1094 ;  SYNOPSIS: The configuration for outbound registration
1095 ;auth_rejection_permanent=yes   ; Determines whether failed authentication
1096                                 ; challenges are treated as permanent failures
1097                                 ; (default: "yes")
1098 ;client_uri=    ; Client SIP URI used when attemping outbound registration
1099                 ; (default: "")
1100 ;contact_user=  ; Contact User to use in request (default: "")
1101 ;expiration=3600        ; Expiration time for registrations in seconds
1102                         ; (default: "3600")
1103 ;max_retries=10 ; Maximum number of registration attempts (default: "10")
1104 ;outbound_auth= ; Authentication object to be used for outbound registrations
1105                 ; (default: "")
1106 ;outbound_proxy=        ; Proxy through which to send registrations, a full SIP URI
1107                         ; must be provided (default: "")
1108 ;retry_interval=60      ; Interval in seconds between retries if outbound
1109                         ; registration is unsuccessful (default: "60")
1110 ;forbidden_retry_interval=0     ; Interval used when receiving a 403 Forbidden
1111                                 ; response (default: "0")
1112 ;fatal_retry_interval=0 ; Interval used when receiving a fatal response.
1113                         ; (default: "0") A fatal response is any permanent
1114                         ; failure (non-temporary 4xx, 5xx, 6xx) response
1115                         ; received from the registrar. NOTE - if also set
1116                         ; the 'forbidden_retry_interval' takes precedence
1117                         ; over this one when a 403 is received. Also, if
1118                         ; 'auth_rejection_permanent' equals 'yes' a 401 and
1119                         ; 407 become subject to this retry interval.
1120 ;server_uri=    ; SIP URI of the server to register against (default: "")
1121 ;transport=     ; Transport used for outbound authentication (default: "")
1122 ;line=          ; When enabled this option will cause a 'line' parameter to be
1123                 ; added to the Contact header placed into the outgoing
1124                 ; registration request. If the remote server sends a call
1125                 ; this line parameter will be used to establish a relationship
1126                 ; to the outbound registration, ultimately causing the
1127                 ; configured endpoint to be used (default: "no")
1128 ;endpoint=      ; When line support is enabled this configured endpoint name
1129                 ; is used for incoming calls that are related to the outbound
1130                 ; registration (default: "")
1131 ;type=  ; Must be of type registration (default: "")
1132
1133
1134
1135
1136 ; MODULE PROVIDING BELOW SECTION(S): res_pjsip_endpoint_identifier_ip
1137 ;==========================IDENTIFY SECTION OPTIONS=========================
1138 ;[identify]
1139 ;  SYNOPSIS: Identifies endpoints via some criteria.
1140 ;
1141 ; NOTE: If multiple matching criteria are provided then an inbound request will
1142 ; be matched to the endpoint if it matches ANY of the criteria.
1143 ;endpoint=      ; Name of endpoint identified (default: "")
1144 ;srv_lookups=yes        ; Perform SRV lookups for provided hostnames. (default: yes)
1145 ;match= ; Comma separated list of IP addresses, networks, or hostnames to match
1146         ; against (default: "")
1147 ;match_header= ; SIP header with specified value to match against (default: "")
1148 ;type=  ; Must be of type identify (default: "")
1149
1150
1151
1152
1153 ;========================PHONEPROV_USER SECTION OPTIONS=======================
1154 ;[phoneprov]
1155 ;  SYNOPSIS: Contains variables for autoprovisioning each user
1156 ;endpoint=      ; The endpoint from which to gather username, secret, etc. (default: "")
1157 ;PROFILE=       ; The name of a profile configured in phoneprov.conf (default: "")
1158 ;MAC=           ; The mac address for this user (default: "")
1159 ;OTHERVAR=      ; Any other name value pair to be used in templates (default: "")
1160                 ; Common variables include LINE, LINEKEYS, etc.
1161                 ; See phoneprov.conf.sample for others.
1162 ;type=          ; Must be of type phoneprov (default: "")
1163
1164
1165
1166 ; MODULE PROVIDING BELOW SECTION(S): res_pjsip_outbound_publish
1167 ;======================OUTBOUND_PUBLISH SECTION OPTIONS=====================
1168 ; See https://wiki.asterisk.org/wiki/display/AST/Publishing+Extension+State
1169 ; for more information.
1170 ;[outbound-publish]
1171 ;type=outbound-publish     ; Must be of type 'outbound-publish'.
1172
1173 ;expiration=3600           ; Expiration time for publications in seconds
1174
1175 ;outbound_auth=            ; Authentication object(s) to be used for outbound
1176                            ; publishes.
1177                            ; This is a comma-delimited list of auth sections
1178                            ; defined in pjsip.conf used to respond to outbound
1179                            ; authentication challenges.
1180                            ; Using the same auth section for inbound and
1181                            ; outbound authentication is not recommended.  There
1182                            ; is a difference in meaning for an empty realm
1183                            ; setting between inbound and outbound authentication
1184                            ; uses. See the auth realm description for details.
1185
1186 ;outbound_proxy=           ; SIP URI of the outbound proxy used to send
1187                            ; publishes
1188
1189 ;server_uri=               ; SIP URI of the server and entity to publish to.
1190                            ; This is the URI at which to find the entity and
1191                            ; server to send the outbound PUBLISH to.
1192                            ; This URI is used as the request URI of the outbound
1193                            ; PUBLISH request from Asterisk.
1194
1195 ;from_uri=                 ; SIP URI to use in the From header.
1196                            ; This is the URI that will be placed into the From
1197                            ; header of outgoing PUBLISH messages. If no URI is
1198                            ; specified then the URI provided in server_uri will
1199                            ; be used.
1200
1201 ;to_uri=                   ; SIP URI to use in the To header.
1202                            ; This is the URI that will be placed into the To
1203                            ; header of outgoing PUBLISH messages. If no URI is
1204                            ; specified then the URI provided in server_uri will
1205                            ; be used.
1206
1207 ;event=                    ; Event type of the PUBLISH.
1208
1209 ;max_auth_attempts=        ; Maximum number of authentication attempts before
1210                            ; stopping the pub.
1211
1212 ;transport=                ; Transport used for outbound publish.
1213                            ; A transport configured in pjsip.conf. As with other
1214                            ; res_pjsip modules, this will use the first
1215                            ; available transport of the appropriate type if
1216                            ; unconfigured.
1217
1218 ;multi_user=no             ; Enable multi-user support (Asterisk 14+ only)
1219
1220
1221
1222 ; MODULE PROVIDING BELOW SECTION(S): res_pjsip_pubsub
1223 ;=============================RESOURCE-LIST===================================
1224 ; See https://wiki.asterisk.org/wiki/pages/viewpage.action?pageId=30278158
1225 ; for more information.
1226 ;[resource_list]
1227 ;type=resource_list        ; Must be of type 'resource_list'.
1228
1229 ;event=                    ; The SIP event package that the list resource.
1230                            ; belongs to.  The SIP event package describes the
1231                            ; types of resources that Asterisk reports the state
1232                            ; of.
1233
1234 ;list_item=                ; The name of a resource to report state on.
1235                            ; In general Asterisk looks up list items in the
1236                            ; following way:
1237                            ;  1. Check if the list item refers to another
1238                            ;     configured resource list.
1239                            ;  2. Pass the name of the resource off to
1240                            ;     event-package-specific handlers to find the
1241                            ;     specified resource.
1242                            ; The second part means that the way the list item
1243                            ; is specified depends on what type of list this is.
1244                            ; For instance, if you have the event set to
1245                            ; presence, then list items should be in the form of
1246                            ; dialplan_extension@dialplan_context. For
1247                            ; message-summary, mailbox names should be listed.
1248
1249 ;full_state=no             ; Indicates if the entire list's state should be
1250                            ; sent out.
1251                            ; If this option is enabled, and a resource changes
1252                            ; state, then Asterisk will construct a notification
1253                            ; that contains the state of all resources in the
1254                            ; list. If the option is disabled, Asterisk will
1255                            ; construct a notification that only contains the
1256                            ; states of resources that have changed.
1257                            ; NOTE: Even with this option disabled, there are
1258                            ; certain situations where Asterisk is forced to send
1259                            ; a notification with the states of all resources in
1260                            ; the list. When a subscriber renews or terminates
1261                            ; its subscription to the list, Asterisk MUST send
1262                            ; a full state notification.
1263
1264 ;notification_batch_interval=0
1265                            ; Time Asterisk should wait, in milliseconds,
1266                            ; before sending notifications.
1267
1268 ;==========================INBOUND_PUBLICATION================================
1269 ; See https://wiki.asterisk.org/wiki/display/AST/Exchanging+Device+and+Mailbox+State+Using+PJSIP
1270 ; for more information.
1271 ;[inbound-publication]
1272 ;type=                     ; Must be of type 'inbound-publication'.
1273
1274 ;endpoint=                 ; Optional name of an endpoint that is only allowed
1275                            ; to publish to this resource.
1276
1277
1278 ; MODULE PROVIDING BELOW SECTION(S): res_pjsip_publish_asterisk
1279 ;==========================ASTERISK_PUBLICATION===============================
1280 ; See https://wiki.asterisk.org/wiki/display/AST/Exchanging+Device+and+Mailbox+State+Using+PJSIP
1281 ; for more information.
1282 ;[asterisk-publication]
1283 ;type=asterisk-publication ; Must be of type 'asterisk-publication'.
1284
1285 ;devicestate_publish=      ; Optional name of a publish item that can be used
1286                            ; to publish a req.
1287
1288 ;mailboxstate_publish=     ; Optional name of a publish item that can be used
1289                            ; to publish a req.
1290
1291 ;device_state=no           ; Whether we should permit incoming device state
1292                            ; events.
1293
1294 ;device_state_filter=      ; Optional regular expression used to filter what
1295                            ; devices we accept events for.
1296
1297 ;mailbox_state=no          ; Whether we should permit incoming mailbox state
1298                            ; events.
1299
1300 ;mailbox_state_filter=     ; Optional regular expression used to filter what
1301                            ; mailboxes we accept events for.