1 ; PJSIP Configuration Samples and Quick Reference
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.
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.
17 ; The official documentation is at http://wiki.asterisk.org
18 ; You can read the XML configuration help via Asterisk command line with
19 ; "config show help res_pjsip", then you can drill down through the various
20 ; sections and their options.
23 ;========!!!!!!!!!!!!!!!!!!! SECURITY NOTICE !!!!!!!!!!!!!!!!!!!!===========
25 ; At a minimum please read the file "README-SERIOUSLY.bestpractices.txt",
26 ; located in the Asterisk source directory before starting Asterisk.
27 ; Otherwise you risk allowing the security of the Asterisk system to be
28 ; compromised. Beyond that please visit and read the security information on
29 ; the wiki at: https://wiki.asterisk.org/wiki/x/EwFB
31 ; A few basics to pay attention to:
35 ; By default anonymous inbound calls via PJSIP are not allowed. If you want to
36 ; route anonymous calls you'll need to define an endpoint named "anonymous".
37 ; res_pjsip_endpoint_identifier_anonymous.so handles that functionality so it
38 ; must be loaded. It is not recommended to accept anonymous calls.
40 ; Access Control Lists
42 ; See the example ACL configuration in this file. Read the configuration help
43 ; for the section and all of its options. Look over the samples in acl.conf
44 ; and documentation at https://wiki.asterisk.org/wiki/x/uA80AQ
45 ; If possible, restrict access to only networks and addresses you trust.
49 ; When defining configuration (such as an endpoint) that links into
50 ; dialplan configuration, be aware of what that dialplan does. It's easy to
51 ; accidentally provide access to internal or outbound dialing extensions which
52 ; could cost you severely. The "context=" line in endpoint configuration
53 ; determines which dialplan context inbound calls will enter into.
55 ;=============================================================================
57 ; Overview of Configuration Section Types Used in the Examples
59 ; * Transport "transport"
60 ; * Configures res_pjsip transport layer interaction.
61 ; * Endpoint "endpoint"
62 ; * Configures core SIP functionality related to SIP endpoints.
63 ; * Authentication "auth"
64 ; * Stores inbound or outbound authentication credentials for use by trunks,
65 ; endpoints, registrations.
66 ; * Address of Record "aor"
67 ; * Stores contact information for use by endpoints.
68 ; * Endpoint Identification "identify"
69 ; * Maps a host directly to an endpoint
70 ; * Access Control List "acl"
71 ; * Defines a permission list or references one stored in acl.conf
72 ; * Registration "registration"
73 ; * Contains information about an outbound SIP registration
74 ; * Phone Provisioning "phoneprov"
75 ; * Contains information needed by res_phoneprov for autoprovisioning
77 ; The following sections show example configurations for various scenarios.
78 ; Most require a couple or more configuration types configured in concert.
80 ;=============================================================================
82 ; Naming of Configuration Sections
84 ; Configuration section names are denoted with enclosing brackets,
86 ; In most cases, you can name a section whatever makes sense to you. For example
87 ; you might name a transport [transport-udp-nat] to help you remember how that
88 ; section is being used. However, in some cases, ("endpoint" and "aor" types)
89 ; the section name has a relationship to its function.
91 ; Depending on the modules loaded, Asterisk can match SIP requests to an
92 ; endpoint or aor in a few ways:
94 ; 1) Match a section name for endpoint type sections to the username in the
95 ; "From" header of inbound SIP requests.
96 ; 2) Match a section name for aor type sections to the username in the "To"
97 ; header of inbound SIP REGISTER requests.
98 ; 3) With an identify type section configured, match an inbound SIP request of
99 ; any type to an endpoint or aor based on the IP source address of the
102 ; Note that sections can have the same name as long as their "type" options are
103 ; set to different values. In most cases it makes sense to have associated
104 ; configuration sections use the same name, as you'll see in the examples within
107 ;===============EXAMPLE TRANSPORTS============================================
109 ; A few examples for potential transport options.
111 ; For the NAT transport example, be aware that the options starting with
112 ; the prefix "external_" will only apply to communication with addresses
113 ; outside the range set with "local_net=".
115 ; IPv6: For endpoints using IPv6, remember to set "rtp_ipv6=yes" so that the RTP
116 ; engine will also be able to bind to an IPv6 address.
118 ; You can have more than one of any type of transport, as long as it doesn't
119 ; use the same resources (bind address, port, etc) as the others.
121 ; Basic UDP transport
125 ;protocol=udp ;udp,tcp,tls,ws,wss
128 ; UDP transport behind NAT
134 ;local_net=192.0.2.0/24
135 ;external_media_address=203.0.113.1
136 ;external_signaling_address=203.0.113.1
138 ; Basic IPv6 UDP transport
140 ;[transport-udp-ipv6]
145 ; Example IPv4 TLS transport
151 ;cert_file=/path/mycert.crt
152 ;priv_key_file=/path/mykey.key
153 ;cipher=ADH-AES256-SHA,ADH-AES128-SHA
157 ;===============OUTBOUND REGISTRATION WITH OUTBOUND AUTHENTICATION============
159 ; This is a simple registration that works with some SIP trunking providers.
160 ; You'll need to set up the auth example "mytrunk_auth" below to enable outbound
161 ; authentication. Note that we "outbound_auth=" use for outbound authentication
162 ; instead of "auth=", which is for inbound authentication.
164 ; If you are registering to a server from behind NAT, be sure you assign a transport
165 ; that is appropriately configured with NAT related settings. See the NAT transport example.
167 ; "contact_user=" sets the SIP contact header's user portion of the SIP URI
168 ; this will affect the extension reached in dialplan when the far end calls you at this
169 ; registration. The default is 's'.
173 ;transport=transport-udp
174 ;outbound_auth=mytrunk_auth
175 ;server_uri=sip:sip.example.com
176 ;client_uri=sip:1234567890@sip.example.com
177 ;contact_user=1234567890
179 ;forbidden_retry_interval=600
187 ;realm=sip.example.com
189 ;===============ENDPOINT CONFIGURED AS A TRUNK, OUTBOUND AUTHENTICATION=======
191 ; This is one way to configure an endpoint as a trunk. It is set up with
192 ; "outbound_auth=" to enable authentication when dialing out through this
193 ; endpoint. There is no inbound authentication set up since a provider will
194 ; not normally authenticate when calling you.
196 ; The identify configuration enables IP address matching against this endpoint.
197 ; For calls from a trunking provider, the From user may be different every time,
198 ; so we want to match against IP address instead of From user.
200 ; If you want the provider of your trunk to know where to send your calls
201 ; you'll need to use an outbound registration as in the example above this
206 ; At a basic level configure the endpoint with a transport that is set up
207 ; with the appropriate NAT settings. There may be some additional settings you
208 ; need here based on your NAT/Firewall scenario. Look to the CLI config help
209 ; "config show help res_pjsip endpoint" or on the wiki for other NAT related
210 ; options and configuration. We've included a few below.
214 ; Endpoints use one or more AOR sections to store their contact details.
215 ; You can define multiple contact addresses in SIP URI format in multiple
216 ; "contact=" entries.
221 ;transport=transport-udp
222 ;context=from-external
225 ;outbound_auth=mytrunk_auth
227 ; ;A few NAT relevant options that may come in handy.
228 ;force_rport=yes ;It's a good idea to read the configuration help for each
229 ;direct_media=no ;of these options.
234 ;contact=sip:198.51.100.1:5060
235 ;contact=sip:198.51.100.2:5060
244 ;=============ENDPOINT CONFIGURED AS A TRUNK, INBOUND AUTH AND REGISTRATION===
246 ; Here we are allowing a remote device to register to Asterisk and requiring
247 ; that they authenticate for registration and calls.
248 ; You'll note that this configuration is essentially the same as configuring
249 ; an endpoint for use with a SIP phone.
254 ;context=from-external
257 ;transport=transport-udp
272 ;===============ENDPOINT CONFIGURED FOR USE WITH A SIP PHONE==================
274 ; This example includes the endpoint, auth and aor configurations. It
275 ; requires inbound authentication and allows registration, as well as references
276 ; a transport that you'll need to uncomment from the previous examples.
278 ; Uncomment one of the transport lines to choose which transport you want. If
279 ; not specified then the default transport chosen is the first defined transport
280 ; in the configuration file.
282 ; Modify the "max_contacts=" line to change how many unique registrations to allow.
284 ; Use the "contact=" line instead of max_contacts= if you want to statically
285 ; define the location of the device.
287 ; If using the TLS enabled transport, you may want the "media_encryption=sdes"
288 ; option to additionally enable SRTP, though they are not mutually inclusive.
290 ; Use the "rtp_ipv6=yes" option if you want to utilize RTP over an ipv6 transport.
292 ; If this endpoint were remote, and it was using a transport configured for NAT
293 ; then you likely want to use "direct_media=no" to prevent audio issues.
298 ;transport=transport-udp
299 ;context=from-internal
306 ; A few more transports to pick from, and some related options below them.
308 ;transport=transport-tls
309 ;media_encryption=sdes
310 ;transport=transport-udp-ipv6
312 ;transport=transport-udp-nat
315 ; MWI related options
318 ;mailboxes=6001@default,7001@default
321 ; Extension and Device state options
323 ;device_state_busy_at=1
336 ;contact=sip:6001@192.0.2.1:5060
338 ;===============ENDPOINT BEHIND NAT OR FIREWALL===============================
340 ; This example assumes your transport is configured with a public IP and the
341 ; endpoint itself is behind NAT and maybe a firewall, rather than having
342 ; Asterisk behind NAT. For the sake of simplicity, we'll assume a typical
343 ; VOIP phone. The most important settings to configure are:
345 ; * direct_media, to ensure Asterisk stays in the media path
346 ; * rtp_symmetric and force_rport options to help the far-end NAT/firewall
348 ; Depending on the settings of your remote SIP device or NAT/firewall device
349 ; you may have to experiment with a combination of these settings.
351 ; If both Asterisk and the remote phones are a behind NAT/firewall then you'll
352 ; have to make sure to use a transport with appropriate settings (as in the
353 ; transport-udp-nat example).
357 ;transport=transport-udp
358 ;context=from-internal
366 ;rewrite_contact=yes ; necessary if endpoint does not know/register public ip:port
367 ;ice_support=yes ;This is specific to clients that support NAT traversal
368 ;for media via ICE,STUN,TURN. See the wiki at:
369 ;https://wiki.asterisk.org/wiki/x/D4FHAQ
370 ;for a deeper explanation of this topic.
383 ;============EXAMPLE ACL CONFIGURATION==========================================
385 ; The ACL or Access Control List section defines a set of permissions to permit
386 ; or deny access to various address or addresses. Alternatively it references an
387 ; ACL configuration already set in acl.conf.
389 ; The ACL configuration is independent of individual endpoint configuration and
390 ; operates on all inbound SIP communication using res_pjsip.
392 ; Reference an ACL defined in acl.conf.
396 ;acl=example_named_acl1
398 ; Reference a contactacl specifically.
402 ;contact_acl=example_contact_acl1
404 ; Define your own ACL here in pjsip.conf and
405 ; permit or deny by IP address or range.
409 ;deny=0.0.0.0/0.0.0.0
410 ;permit=209.16.236.0/24
413 ; Restrict based on Contact Headers rather than IP.
414 ; Define options multiple times for various addresses or use a comma-delimited string.
418 ;contact_deny=0.0.0.0/0.0.0.0
419 ;contact_permit=209.16.236.0/24
420 ;contact_permit=209.16.236.1
421 ;contact_permit=209.16.236.2,209.16.236.3
423 ; Restrict based on Contact Headers rather than IP and use
424 ; advanced syntax. Note the bang symbol used for "NOT", so we can deny
425 ; 209.16.236.12/32 within the permit= statement.
429 ;contact_deny=0.0.0.0/0.0.0.0
430 ;contact_permit=209.16.236.0
431 ;permit=209.16.236.0/24, !209.16.236.12/32
434 ;============EXAMPLE RLS CONFIGURATION==========================================
436 ;Asterisk provides support for RFC 4662 Resource List Subscriptions. This allows
437 ;for an endpoint to, through a single subscription, subscribe to the states of
438 ;multiple resources. Resource lists are configured in pjsip.conf using the
439 ;resource_list configuration object. Below is an example of a resource list that
440 ;allows an endpoint to subscribe to the presence of alice, bob, and carol.
449 ;The "event" option in the resource list corresponds to the SIP event-package
450 ;that the subscribed resources belong to. A resource list can only provide states
451 ;for resources that belong to the same event-package. This means that you cannot
452 ;create a list that is a combination of presence and message-summary resources,
453 ;for instance. Any event-package that Asterisk supports can be used in a resource
454 ;list (presence, dialog, and message-summary). Whenever support for a new event-
455 ;package is added to Asterisk, support for that event-package in resource lists
456 ;will automatically be supported.
458 ;The "list_item" options indicate the names of resources to subscribe to. The
459 ;way these are interpreted is event-package specific. For instance, with presence
460 ;list_items, hints in the dialplan are looked up. With message-summary list_items,
461 ;mailboxes are looked up using your installed voicemail provider (app_voicemail
462 ;by default). Note that in the above example, the list_item options were given
463 ;one per line. However, it is also permissible to provide multiple list_item
464 ;options on a single line (e.g. list_item = alice,bob,carol).
466 ;In addition to the options presented in the above configuration, there are two
467 ;more configuration options that can be set.
468 ; * full_state: dictates whether Asterisk should always send the states of
469 ; all resources in the list at once. Defaults to "no". You should only set
470 ; this to "yes" if you are interoperating with an endpoint that does not
471 ; behave correctly when partial state notifications are sent to it.
472 ; * notification_batch_interval: By default, Asterisk will send a NOTIFY request
473 ; immediately when a resource changes state. This option causes Asterisk to
474 ; start batching resource state changes for the specified number of milliseconds
475 ; after a resource changes states. This way, if multiple resources change state
476 ; within a brief interval, Asterisk can send a single NOTIFY request with all
477 ; of the state changes reflected in it.
479 ;There is a limitation to the size of resource lists in Asterisk. If a constructed
480 ;notification from Asterisk will exceed 64000 bytes, then the message is deemed
481 ;too large to send. If you find that you are seeing error messages about SIP
482 ;NOTIFY requests being too large to send, consider breaking your lists into
485 ;============EXAMPLE PHONEPROV CONFIGURATION================================
487 ; Before configuring provisioning here, see the documentation for res_phoneprov
488 ; and configure phoneprov.conf appropriately.
490 ; For each user to be autoprovisioned, a [phoneprov] configuration section
491 ; must be created. At a minimum, the 'type', 'PROFILE' and 'MAC' variables must
492 ; be set. All other variables are optional.
496 ;type=phoneprov ; must be specified as 'phoneprov'
497 ;endpoint=1000 ; Required only if automatic setting of
498 ; USERNAME, SECRET, DISPLAY_NAME and CALLERID
500 ;PROFILE=digium ; required
501 ;MAC=deadbeef4dad ; required
502 ;SERVER=myserver.example.com ; A standard variable
503 ;TIMEZONE=America/Denver ; A standard variable
504 ;MYVAR=somevalue ; A user confdigured variable
506 ; If the phoneprov sections have common variables, it is best to create a
507 ; phoneprov template. The example below will produce the same configuration
508 ; as the one specified above except that MYVAR will be overridden for
512 ;[phoneprov_defaults](!)
513 ;type=phoneprov ; must be specified as 'phoneprov'
514 ;PROFILE=digium ; required
515 ;SERVER=myserver.example.com ; A standard variable
516 ;TIMEZONE=America/Denver ; A standard variable
517 ;MYVAR=somevalue ; A user configured variable
519 ;[1000](phoneprov_defaults)
520 ;endpoint=1000 ; Required only if automatic setting of
521 ; USERNAME, SECRET, DISPLAY_NAME and CALLERID
523 ;MAC=deadbeef4dad ; required
524 ;MYVAR=someOTHERvalue ; A user confdigured variable
526 ; To have USERNAME and SECRET automatically set, the endpoint
527 ; specified here must in turn have an outbound_auth section defined.
533 ;outbound_auth=1000-auth
534 ;callerid=My Name <8005551212>
535 ;transport=transport-udp-nat
543 ;[phoneprov_defaults](!)
544 ;type=phoneprov ; must be specified as 'phoneprov'
545 ;PROFILE=someprofile ; required
546 ;SERVER=myserver.example.com ; A standard variable
547 ;TIMEZONE=America/Denver ; A standard variable
548 ;MYVAR=somevalue ; A user configured variable
550 ;[1000](phoneprov_defaults)
551 ;endpoint=1000 ; Required only if automatic setting of
552 ; USERNAME, SECRET, DISPLAY_NAME and CALLERID
554 ;MAC=deadbeef4dad ; required
555 ;MYVAR=someUSERvalue ; A user confdigured variable
556 ;LABEL=1000 ; A standard variable
558 ; The previous sections would produce a template substitution map as follows:
560 ;MAC=deadbeef4dad ;added by pp1000
561 ;USERNAME=myname ;automatically added by 1000-auth username
562 ;SECRET=mysecret ;automatically added by 1000-auth password
563 ;PROFILE=someprofile ;added by defaults
564 ;SERVER=myserver.example.com ;added by defaults
565 ;SERVER_PORT=5060 ;added by defaults
566 ;MYVAR=someUSERvalue ;added by defaults but overdidden by user
567 ;CALLERID=8005551212 ;automatically added by 1000 callerid
568 ;DISPLAY_NAME=My Name ;automatically added by 1000 callerid
569 ;TIMEZONE=America/Denver ;added by defaults
570 ;TZOFFSET=252100 ;automatically calculated by res_phoneprov
571 ;DST_ENABLE=1 ;automatically calculated by res_phoneprov
572 ;DST_START_MONTH=3 ;automatically calculated by res_phoneprov
573 ;DST_START_MDAY=9 ;automatically calculated by res_phoneprov
574 ;DST_START_HOUR=3 ;automatically calculated by res_phoneprov
575 ;DST_END_MONTH=11 ;automatically calculated by res_phoneprov
576 ;DST_END_MDAY=2 ;automatically calculated by res_phoneprov
577 ;DST_END_HOUR=1 ;automatically calculated by res_phoneprov
578 ;ENDPOINT_ID=1000 ;automatically added by this module
579 ;AUTH_ID=1000-auth ;automatically added by this module
580 ;TRANSPORT_ID=transport-udp-nat ;automatically added by this module
581 ;LABEL=1000 ;added by user
583 ; MODULE PROVIDING BELOW SECTION(S): res_pjsip
584 ;==========================ENDPOINT SECTION OPTIONS=========================
587 ;100rel=yes ; Allow support for RFC3262 provisional ACK tags (default:
589 ;aggregate_mwi=yes ; (default: "yes")
590 ;allow= ; Media Codec s to allow (default: "")
591 ;aors= ; AoR s to be used with the endpoint (default: "")
592 ;auth= ; Authentication Object s associated with the endpoint (default: "")
593 ;callerid= ; CallerID information for the endpoint (default: "")
594 ;callerid_privacy=allowed_not_screened ; Default privacy level (default: "allowed_not_screened")
595 ;callerid_tag= ; Internal id_tag for the endpoint (default: "")
596 ;context=default ; Dialplan context for inbound sessions (default:
598 ;direct_media_glare_mitigation=none ; Mitigation of direct media re INVITE
599 ; glare (default: "none")
600 ;direct_media_method=invite ; Direct Media method type (default: "invite")
601 ;connected_line_method=invite ; Connected line method type (default:
603 ;direct_media=yes ; Determines whether media may flow directly between
604 ; endpoints (default: "yes")
605 ;disable_direct_media_on_nat=no ; Disable direct media session refreshes when
606 ; NAT obstructs the media session (default:
608 ;disallow= ; Media Codec s to disallow (default: "")
609 ;dtmf_mode=rfc4733 ; DTMF mode (default: "rfc4733")
610 ;media_address= ; IP address used in SDP for media handling (default: "")
611 ;force_rport=yes ; Force use of return port (default: "yes")
612 ;ice_support=no ; Enable the ICE mechanism to help traverse NAT (default: "no")
613 ;identify_by=username ; Way s for Endpoint to be identified (default:
615 ;redirect_method=user ; How redirects received from an endpoint are handled
617 ;mailboxes= ; Mailbox es to be associated with (default: "")
618 ;moh_suggest=default ; Default Music On Hold class (default: "default")
619 ;outbound_auth= ; Authentication object used for outbound requests (default:
621 ;outbound_proxy= ; Proxy through which to send requests a full SIP URI
622 ; must be provided (default: "")
623 ;rewrite_contact=no ; Allow Contact header to be rewritten with the source
624 ; IP address port (default: "no")
625 ;rtp_ipv6=no ; Allow use of IPv6 for RTP traffic (default: "no")
626 ;rtp_symmetric=no ; Enforce that RTP must be symmetric (default: "no")
627 ;send_diversion=yes ; Send the Diversion header conveying the diversion
628 ; information to the called user agent (default: "yes")
629 ;send_pai=no ; Send the P Asserted Identity header (default: "no")
630 ;send_rpid=no ; Send the Remote Party ID header (default: "no")
631 ;timers_min_se=90 ; Minimum session timers expiration period (default:
633 ;timers=yes ; Session timers for SIP packets (default: "yes")
634 ;timers_sess_expires=1800 ; Maximum session timer expiration period
636 ;transport= ; Desired transport configuration (default: "")
637 ;trust_id_inbound=no ; Accept identification information received from this
638 ; endpoint (default: "no")
639 ;trust_id_outbound=no ; Send private identification details to the endpoint
641 ;type= ; Must be of type endpoint (default: "")
642 ;use_ptime=no ; Use Endpoint s requested packetisation interval (default:
644 ;use_avpf=no ; Determines whether res_pjsip will use and enforce usage of
645 ; AVPF for this endpoint (default: "no")
646 ;media_encryption=no ; Determines whether res_pjsip will use and enforce
647 ; usage of media encryption for this endpoint (default:
649 ;inband_progress=no ; Determines whether chan_pjsip will indicate ringing
650 ; using inband progress (default: "no")
651 ;call_group= ; The numeric pickup groups for a channel (default: "")
652 ;pickup_group= ; The numeric pickup groups that a channel can pickup (default:
654 ;named_call_group= ; The named pickup groups for a channel (default: "")
655 ;named_pickup_group= ; The named pickup groups that a channel can pickup
657 ;device_state_busy_at=0 ; The number of in use channels which will cause busy
658 ; to be returned as device state (default: "0")
659 ;t38_udptl=no ; Whether T 38 UDPTL support is enabled or not (default: "no")
660 ;t38_udptl_ec=none ; T 38 UDPTL error correction method (default: "none")
661 ;t38_udptl_maxdatagram=0 ; T 38 UDPTL maximum datagram size (default:
663 ;fax_detect=no ; Whether CNG tone detection is enabled (default: "no")
664 ;t38_udptl_nat=no ; Whether NAT support is enabled on UDPTL sessions
666 ;t38_udptl_ipv6=no ; Whether IPv6 is used for UDPTL Sessions (default:
668 ;tone_zone= ; Set which country s indications to use for channels created
669 ; for this endpoint (default: "")
670 ;language= ; Set the default language to use for channels created for this
671 ; endpoint (default: "")
672 ;one_touch_recording=no ; Determines whether one touch recording is allowed for
673 ; this endpoint (default: "no")
674 ;record_on_feature=automixmon ; The feature to enact when one touch recording
675 ; is turned on (default: "automixmon")
676 ;record_off_feature=automixmon ; The feature to enact when one touch recording
677 ; is turned off (default: "automixmon")
678 ;rtp_engine=asterisk ; Name of the RTP engine to use for channels created
679 ; for this endpoint (default: "asterisk")
680 ;allow_transfer=yes ; Determines whether SIP REFER transfers are allowed
681 ; for this endpoint (default: "yes")
682 ;sdp_owner=- ; String placed as the username portion of an SDP origin o line
684 ;sdp_session=Asterisk ; String used for the SDP session s line (default:
686 ;tos_audio=0 ; DSCP TOS bits for audio streams (default: "0")
687 ;tos_video=0 ; DSCP TOS bits for video streams (default: "0")
688 ;cos_audio=0 ; Priority for audio streams (default: "0")
689 ;cos_video=0 ; Priority for video streams (default: "0")
690 ;allow_subscribe=yes ; Determines if endpoint is allowed to initiate
691 ; subscriptions with Asterisk (default: "yes")
692 ;sub_min_expiry=0 ; The minimum allowed expiry time for subscriptions
693 ; initiated by the endpoint (default: "0")
694 ;from_user= ; Username to use in From header for requests to this endpoint
696 ;mwi_from_user= ; Username to use in From header for unsolicited MWI NOTIFYs to
697 ; this endpoint (default: "")
698 ;from_domain= ; Domain to user in From header for requests to this endpoint
700 ;dtls_verify=no ; Verify that the provided peer certificate is valid (default:
702 ;dtls_rekey=0 ; Interval at which to renegotiate the TLS session and rekey
703 ; the SRTP session (default: "0")
704 ;dtls_cert_file= ; Path to certificate file to present to peer (default:
706 ;dtls_private_key= ; Path to private key for certificate file (default:
708 ;dtls_cipher= ; Cipher to use for DTLS negotiation (default: "")
709 ;dtls_ca_file= ; Path to certificate authority certificate (default: "")
710 ;dtls_ca_path= ; Path to a directory containing certificate authority
711 ; certificates (default: "")
712 ;dtls_setup= ; Whether we are willing to accept connections connect to the
713 ; other party or both (default: "")
714 ;dtls_fingerprint= ; Hash to use for the fingerprint placed into SDP
715 ; (default: "SHA-256")
716 ;srtp_tag_32=no ; Determines whether 32 byte tags should be used instead of 80
717 ; byte tags (default: "no")
718 ;set_var= ; Variable set on a channel involving the endpoint. For multiple
719 ; channel variables specify multiple 'set_var'(s)
721 ;==========================AUTH SECTION OPTIONS=========================
723 ; SYNOPSIS: Authentication type
724 ;auth_type=userpass ; Authentication type (default: "userpass")
725 ;nonce_lifetime=32 ; Lifetime of a nonce associated with this
726 ; authentication config (default: "32")
727 ;md5_cred= ; MD5 Hash used for authentication (default: "")
728 ;password= ; PlainText password used for authentication (default: "")
729 ;realm= ; SIP realm for endpoint (default: "")
730 ;type= ; Must be auth (default: "")
731 ;username= ; Username to use for account (default: "")
734 ;==========================DOMAIN_ALIAS SECTION OPTIONS=========================
736 ; SYNOPSIS: Domain Alias
737 ;type= ; Must be of type domain_alias (default: "")
738 ;domain= ; Domain to be aliased (default: "")
741 ;==========================TRANSPORT SECTION OPTIONS=========================
743 ; SYNOPSIS: SIP Transport
744 ;async_operations=1 ; Number of simultaneous Asynchronous Operations
746 ;bind= ; IP Address and optional port to bind to for this transport (default:
748 ;ca_list_file= ; File containing a list of certificates to read TLS ONLY
750 ;cert_file= ; Certificate file for endpoint TLS ONLY (default: "")
751 ;cipher= ; Preferred cryptography cipher names TLS ONLY (default: "")
752 ;domain= ; Domain the transport comes from (default: "")
753 ;external_media_address= ; External IP address to use in RTP handling
755 ;external_signaling_address= ; External address for SIP signalling (default:
757 ;external_signaling_port=0 ; External port for SIP signalling (default:
759 ;method= ; Method of SSL transport TLS ONLY (default: "")
760 ;local_net= ; Network to consider local used for NAT purposes (default: "")
761 ;password= ; Password required for transport (default: "")
762 ;priv_key_file= ; Private key file TLS ONLY (default: "")
763 ;protocol=udp ; Protocol to use for SIP traffic (default: "udp")
764 ;require_client_cert= ; Require client certificate TLS ONLY (default: "")
765 ;type= ; Must be of type transport (default: "")
766 ;verify_client= ; Require verification of client certificate TLS ONLY (default:
768 ;verify_server= ; Require verification of server certificate TLS ONLY (default:
770 ;tos=0 ; Enable TOS for the signalling sent over this transport (default: "0")
771 ;cos=0 ; Enable COS for the signalling sent over this transport (default: "0")
772 ;websocket_write_timeout=100 ; Default write timeout to set on websocket
773 ; transports. This value may need to be adjusted
774 ; for connections where Asterisk must write a
775 ; substantial amount of data and the receiving
776 ; clients are slow to process the received
777 ; information. Value is in milliseconds; default
780 ;==========================CONTACT SECTION OPTIONS=========================
782 ; SYNOPSIS: A way of creating an aliased name to a SIP URI
783 ;type= ; Must be of type contact (default: "")
784 ;uri= ; SIP URI to contact peer (default: "")
785 ;expiration_time= ; Time to keep alive a contact (default: "")
786 ;qualify_frequency=0 ; Interval at which to qualify a contact (default: "0")
787 ;outbound_proxy= ; Outbound proxy used when sending OPTIONS request
791 ;==========================AOR SECTION OPTIONS=========================
793 ; SYNOPSIS: The configuration for a location of an endpoint
794 ;contact= ; Permanent contacts assigned to AoR (default: "")
795 ;default_expiration=3600 ; Default expiration time in seconds for
796 ; contacts that are dynamically bound to an AoR
798 ;mailboxes= ; Mailbox es to be associated with (default: "")
799 ;maximum_expiration=7200 ; Maximum time to keep an AoR (default: "7200")
800 ;max_contacts=0 ; Maximum number of contacts that can bind to an AoR (default:
802 ;minimum_expiration=60 ; Minimum keep alive time for an AoR (default: "60")
803 ;remove_existing=no ; Determines whether new contacts replace existing ones
805 ;type= ; Must be of type aor (default: "")
806 ;qualify_frequency=0 ; Interval at which to qualify an AoR (default: "0")
807 ;authenticate_qualify=no ; Authenticates a qualify request if needed
809 ;outbound_proxy= ; Outbound proxy used when sending OPTIONS request
813 ;==========================SYSTEM SECTION OPTIONS=========================
815 ; SYNOPSIS: Options that apply to the SIP stack as well as other system-wide settings
816 ;timer_t1=500 ; Set transaction timer T1 value milliseconds (default: "500")
817 ;timer_b=32000 ; Set transaction timer B value milliseconds (default: "32000")
818 ;compact_headers=no ; Use the short forms of common SIP header names
820 ;threadpool_initial_size=0 ; Initial number of threads in the res_pjsip
821 ; threadpool (default: "0")
822 ;threadpool_auto_increment=5 ; The amount by which the number of threads is
823 ; incremented when necessary (default: "5")
824 ;threadpool_idle_timeout=60 ; Number of seconds before an idle thread
825 ; should be disposed of (default: "60")
826 ;threadpool_max_size=0 ; Maximum number of threads in the res_pjsip threadpool
827 ; A value of 0 indicates no maximum (default: "0")
828 ;type= ; Must be of type system (default: "")
830 ;==========================GLOBAL SECTION OPTIONS=========================
832 ; SYNOPSIS: Options that apply globally to all SIP communications
833 ;max_forwards=70 ; Value used in Max Forwards header for SIP requests
835 ;type= ; Must be of type global (default: "")
836 ;user_agent=Asterisk PBX SVN-branch-12-r404375 ; Value used in User Agent
837 ; header for SIP requests and
838 ; Server header for SIP
839 ; responses (default: "Asterisk
840 ; PBX SVN-branch-12-r404375")
841 ;default_outbound_endpoint=default_outbound_endpoint ; Endpoint to use when
842 ; sending an outbound
844 ; without a specified
845 ; endpoint (default: "d
846 ; efault_outbound_endpo
848 ;debug=no ; Enable/Disable SIP debug logging. Valid options include yes|no
849 ; or a host address (default: "no")
852 ; MODULE PROVIDING BELOW SECTION(S): res_pjsip_acl
853 ;==========================ACL SECTION OPTIONS=========================
855 ; SYNOPSIS: Access Control List
856 ;acl= ; List of IP ACL section names in acl conf (default: "")
857 ;contact_acl= ; List of Contact ACL section names in acl conf (default: "")
858 ;contact_deny= ; List of Contact header addresses to deny (default: "")
859 ;contact_permit= ; List of Contact header addresses to permit (default:
861 ;deny= ; List of IP addresses to deny access from (default: "")
862 ;permit= ; List of IP addresses to permit access from (default: "")
863 ;type= ; Must be of type acl (default: "")
868 ; MODULE PROVIDING BELOW SECTION(S): res_pjsip_outbound_registration
869 ;==========================REGISTRATION SECTION OPTIONS=========================
871 ; SYNOPSIS: The configuration for outbound registration
872 ;auth_rejection_permanent=yes ; Determines whether failed authentication
873 ; challenges are treated as permanent failures
875 ;client_uri= ; Client SIP URI used when attemping outbound registration
877 ;contact_user= ; Contact User to use in request (default: "")
878 ;expiration=3600 ; Expiration time for registrations in seconds
880 ;max_retries=10 ; Maximum number of registration attempts (default: "10")
881 ;outbound_auth= ; Authentication object to be used for outbound registrations
883 ;outbound_proxy= ; Outbound Proxy used to send registrations (default:
885 ;retry_interval=60 ; Interval in seconds between retries if outbound
886 ; registration is unsuccessful (default: "60")
887 ;forbidden_retry_interval=0 ; Interval used when receiving a 403 Forbidden
888 ; response (default: "0")
889 ;server_uri= ; SIP URI of the server to register against (default: "")
890 ;transport= ; Transport used for outbound authentication (default: "")
891 ;type= ; Must be of type registration (default: "")
896 ; MODULE PROVIDING BELOW SECTION(S): res_pjsip_endpoint_identifier_ip
897 ;==========================IDENTIFY SECTION OPTIONS=========================
899 ; SYNOPSIS: Identifies endpoints via source IP address
900 ;endpoint= ; Name of Endpoint (default: "")
901 ;match= ; IP addresses or networks to match against (default: "")
902 ;type= ; Must be of type identify (default: "")
907 ;========================PHONEPROV_USER SECTION OPTIONS=======================
909 ; SYNOPSIS: Contains variables for autoprovisioning each user
910 ;endpoint= ; The endpoint from which to gather username, secret, etc. (default: "")
911 ;PROFILE= ; The name of a profile configured in phoneprov.conf (default: "")
912 ;MAC= ; The mac address for this user (default: "")
913 ;OTHERVAR= ; Any other name value pair to be used in templates (default: "")
914 ; Common variables include LINE, LINEKEYS, etc.
915 ; See phoneprov.conf.sample for others.
916 ;type= ; Must be of type phoneprov (default: "")