123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341 |
- ; PJSIP Configuration Samples and Quick Reference
- ;
- ; This file has several very basic configuration examples, to serve as a quick
- ; reference to jog your memory when you need to write up a new configuration.
- ; It is not intended to teach PJSIP configuration or serve as an exhaustive
- ; reference of options and potential scenarios.
- ;
- ; This file has two main sections.
- ; First, manually written examples to serve as a handy reference.
- ; Second, a list of all possible PJSIP config options by section. This is
- ; pulled from the XML config help. It only shows the synopsis for every item.
- ; If you want to see more detail please check the documentation sources
- ; mentioned at the top of this file.
- ; ============================================================================
- ; NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE NOTICE
- ;
- ; This file does not maintain the complete option documentation.
- ; ============================================================================
- ; Documentation
- ;
- ; The official documentation is at http://wiki.asterisk.org
- ; You can read the XML configuration help via Asterisk command line with
- ; "config show help res_pjsip", then you can drill down through the various
- ; sections and their options.
- ;
- ;========!!!!!!!!!!!!!!!!!!! SECURITY NOTICE !!!!!!!!!!!!!!!!!!!!===========
- ;
- ; At a minimum please read the file "README-SERIOUSLY.bestpractices.txt",
- ; located in the Asterisk source directory before starting Asterisk.
- ; Otherwise you risk allowing the security of the Asterisk system to be
- ; compromised. Beyond that please visit and read the security information on
- ; the wiki at: https://wiki.asterisk.org/wiki/x/EwFB
- ;
- ; A few basics to pay attention to:
- ;
- ; Anonymous Calls
- ;
- ; By default anonymous inbound calls via PJSIP are not allowed. If you want to
- ; route anonymous calls you'll need to define an endpoint named "anonymous".
- ; res_pjsip_endpoint_identifier_anonymous.so handles that functionality so it
- ; must be loaded. It is not recommended to accept anonymous calls.
- ;
- ; Access Control Lists
- ;
- ; See the example ACL configuration in this file. Read the configuration help
- ; for the section and all of its options. Look over the samples in acl.conf
- ; and documentation at https://wiki.asterisk.org/wiki/x/uA80AQ
- ; If possible, restrict access to only networks and addresses you trust.
- ;
- ; Dialplan Contexts
- ;
- ; When defining configuration (such as an endpoint) that links into
- ; dialplan configuration, be aware of what that dialplan does. It's easy to
- ; accidentally provide access to internal or outbound dialing extensions which
- ; could cost you severely. The "context=" line in endpoint configuration
- ; determines which dialplan context inbound calls will enter into.
- ;
- ;=============================================================================
- ; Overview of Configuration Section Types Used in the Examples
- ;
- ; * Transport "transport"
- ; * Configures res_pjsip transport layer interaction.
- ; * Endpoint "endpoint"
- ; * Configures core SIP functionality related to SIP endpoints.
- ; * Authentication "auth"
- ; * Stores inbound or outbound authentication credentials for use by trunks,
- ; endpoints, registrations.
- ; * Address of Record "aor"
- ; * Stores contact information for use by endpoints.
- ; * Endpoint Identification "identify"
- ; * Maps a host directly to an endpoint
- ; * Access Control List "acl"
- ; * Defines a permission list or references one stored in acl.conf
- ; * Registration "registration"
- ; * Contains information about an outbound SIP registration
- ; * Resource Lists
- ; * Contains information for configuring resource lists.
- ; * Phone Provisioning "phoneprov"
- ; * Contains information needed by res_phoneprov for autoprovisioning
- ; The following sections show example configurations for various scenarios.
- ; Most require a couple or more configuration types configured in concert.
- ;=============================================================================
- ; Naming of Configuration Sections
- ;
- ; Configuration section names are denoted with enclosing brackets,
- ; e.g. [6001]
- ; In most cases, you can name a section whatever makes sense to you. For example
- ; you might name a transport [transport-udp-nat] to help you remember how that
- ; section is being used. However, in some cases, ("endpoint" and "aor" types)
- ; the section name has a relationship to its function.
- ;
- ; Depending on the modules loaded, Asterisk can match SIP requests to an
- ; endpoint or aor in a few ways:
- ;
- ; 1) Match a section name for endpoint type sections to the username in the
- ; "From" header of inbound SIP requests.
- ; 2) Match a section name for aor type sections to the username in the "To"
- ; header of inbound SIP REGISTER requests.
- ; 3) With an identify type section configured, match an inbound SIP request of
- ; any type to an endpoint or aor based on the IP source address of the
- ; request.
- ;
- ; Note that sections can have the same name as long as their "type" options are
- ; set to different values. In most cases it makes sense to have associated
- ; configuration sections use the same name, as you'll see in the examples within
- ; this file.
- ;===============EXAMPLE TRANSPORTS============================================
- ;
- ; A few examples for potential transport options.
- ;
- ; For the NAT transport example, be aware that the options starting with
- ; the prefix "external_" will only apply to communication with addresses
- ; outside the range set with "local_net=".
- ;
- ; You can have more than one of any type of transport, as long as it doesn't
- ; use the same resources (bind address, port, etc) as the others.
- ; Basic UDP transport
- ;
- ;[transport-udp]
- ;type=transport
- ;protocol=udp ;udp,tcp,tls,ws,wss
- ;bind=0.0.0.0
- ; UDP transport behind NAT
- ;
- ;[transport-udp-nat]
- ;type=transport
- ;protocol=udp
- ;bind=0.0.0.0
- ;local_net=192.0.2.0/24
- ;external_media_address=203.0.113.1
- ;external_signaling_address=203.0.113.1
- ; Basic IPv6 UDP transport
- ;
- ;[transport-udp-ipv6]
- ;type=transport
- ;protocol=udp
- ;bind=::
- ; Example IPv4 TLS transport
- ;
- ;[transport-tls]
- ;type=transport
- ;protocol=tls
- ;bind=0.0.0.0
- ;cert_file=/path/mycert.crt
- ;priv_key_file=/path/mykey.key
- ;cipher=ADH-AES256-SHA,ADH-AES128-SHA
- ;method=tlsv1
- ;===============OUTBOUND REGISTRATION WITH OUTBOUND AUTHENTICATION============
- ;
- ; This is a simple registration that works with some SIP trunking providers.
- ; You'll need to set up the auth example "mytrunk_auth" below to enable outbound
- ; authentication. Note that we "outbound_auth=" use for outbound authentication
- ; instead of "auth=", which is for inbound authentication.
- ;
- ; If you are registering to a server from behind NAT, be sure you assign a transport
- ; that is appropriately configured with NAT related settings. See the NAT transport example.
- ;
- ; "contact_user=" sets the SIP contact header's user portion of the SIP URI
- ; this will affect the extension reached in dialplan when the far end calls you at this
- ; registration. The default is 's'.
- ;
- ; If you would like to enable line support and have incoming calls related to this
- ; registration go to an endpoint automatically the "line" and "endpoint" options must
- ; be set. The "endpoint" option specifies what endpoint the incoming call should be
- ; associated with.
- ;[mytrunk]
- ;type=registration
- ;transport=transport-udp
- ;outbound_auth=mytrunk_auth
- ;server_uri=sip:sip.example.com
- ;client_uri=sip:1234567890@sip.example.com
- ;contact_user=1234567890
- ;retry_interval=60
- ;forbidden_retry_interval=600
- ;expiration=3600
- ;line=yes
- ;endpoint=mytrunk
- ;[mytrunk_auth]
- ;type=auth
- ;auth_type=userpass
- ;password=1234567890
- ;username=1234567890
- ;realm=sip.example.com
- ;===============ENDPOINT CONFIGURED AS A TRUNK, OUTBOUND AUTHENTICATION=======
- ;
- ; This is one way to configure an endpoint as a trunk. It is set up with
- ; "outbound_auth=" to enable authentication when dialing out through this
- ; endpoint. There is no inbound authentication set up since a provider will
- ; not normally authenticate when calling you.
- ;
- ; The identify configuration enables IP address matching against this endpoint.
- ; For calls from a trunking provider, the From user may be different every time,
- ; so we want to match against IP address instead of From user.
- ;
- ; If you want the provider of your trunk to know where to send your calls
- ; you'll need to use an outbound registration as in the example above this
- ; section.
- ;
- ; NAT
- ;
- ; At a basic level configure the endpoint with a transport that is set up
- ; with the appropriate NAT settings. There may be some additional settings you
- ; need here based on your NAT/Firewall scenario. Look to the CLI config help
- ; "config show help res_pjsip endpoint" or on the wiki for other NAT related
- ; options and configuration. We've included a few below.
- ;
- ; AOR
- ;
- ; Endpoints use one or more AOR sections to store their contact details.
- ; You can define multiple contact addresses in SIP URI format in multiple
- ; "contact=" entries.
- ;
- ;[mytrunk]
- ;type=endpoint
- ;transport=transport-udp
- ;context=from-external
- ;disallow=all
- ;allow=ulaw
- ;outbound_auth=mytrunk_auth
- ;aors=mytrunk
- ; ;A few NAT relevant options that may come in handy.
- ;force_rport=yes ;It's a good idea to read the configuration help for each
- ;direct_media=no ;of these options.
- ;ice_support=yes
- ;[mytrunk]
- ;type=aor
- ;contact=sip:198.51.100.1:5060
- ;contact=sip:198.51.100.2:5060
- ;[mytrunk]
- ;type=identify
- ;endpoint=mytrunk
- ;match=198.51.100.1
- ;match=198.51.100.2
- ;=============ENDPOINT CONFIGURED AS A TRUNK, INBOUND AUTH AND REGISTRATION===
- ;
- ; Here we are allowing a remote device to register to Asterisk and requiring
- ; that they authenticate for registration and calls.
- ; You'll note that this configuration is essentially the same as configuring
- ; an endpoint for use with a SIP phone.
- ;[7000]
- ;type=endpoint
- ;context=from-external
- ;disallow=all
- ;allow=ulaw
- ;transport=transport-udp
- ;auth=7000
- ;aors=7000
- ;[7000]
- ;type=auth
- ;auth_type=userpass
- ;password=7000
- ;username=7000
- ;[7000]
- ;type=aor
- ;max_contacts=1
- ;===============ENDPOINT CONFIGURED FOR USE WITH A SIP PHONE==================
- ;
- ; This example includes the endpoint, auth and aor configurations. It
- ; requires inbound authentication and allows registration, as well as references
- ; a transport that you'll need to uncomment from the previous examples.
- ;
- ; Uncomment one of the transport lines to choose which transport you want. If
- ; not specified then the default transport chosen is the first compatible transport
- ; in the configuration file for the contact URL.
- ;
- ; Modify the "max_contacts=" line to change how many unique registrations to allow.
- ;
- ; Use the "contact=" line instead of max_contacts= if you want to statically
- ; define the location of the device.
- ;
- ; If using the TLS enabled transport, you may want the "media_encryption=sdes"
- ; option to additionally enable SRTP, though they are not mutually inclusive.
- ;
- ; If this endpoint were remote, and it was using a transport configured for NAT
- ; then you likely want to use "direct_media=no" to prevent audio issues.
- ;[6001]
- ;type=endpoint
- ;transport=transport-udp
- ;context=from-internal
- ;disallow=all
- ;allow=ulaw
- ;allow=gsm
- ;auth=6001
- ;aors=6001
- ;
- ; A few more transports to pick from, and some related options below them.
- ;
- ;transport=transport-tls
- ;media_encryption=sdes
- ;transport=transport-udp-ipv6
- ;transport=transport-udp-nat
- ;direct_media=no
- ;
- ; MWI related options
- ;aggregate_mwi=yes
- ;mailboxes=6001@default,7001@default
- ;mwi_from_user=6001
- ;
- ; Extension and Device state options
- ;
- ;device_state_busy_at=1
- ;allow_subscribe=yes
- ;sub_min_expiry=30
- ;[6001]
- ;type=auth
- ;auth_type=userpass
- ;password=6001
- ;username=6001
- ;[6001]
- ;type=aor
- ;max_contacts=1
- ;contact=sip:6001@192.0.2.1:5060
- ;===============ENDPOINT BEHIND NAT OR FIREWALL===============================
- ;
- ; This example assumes your transport is configured with a public IP and the
- ; endpoint itself is behind NAT and maybe a firewall, rather than having
- ; Asterisk behind NAT. For the sake of simplicity, we'll assume a typical
- ; VOIP phone. The most important settings to configure are:
- ;
- ; * direct_media, to ensure Asterisk stays in the media path
- ; * rtp_symmetric and force_rport options to help the far-end NAT/firewall
- ;
- ; Depending on the settings of your remote SIP device or NAT/firewall device
- ; you may have to experiment with a combination of these settings.
- ;
- ; If both Asterisk and the remote phones are a behind NAT/firewall then you'll
- ; have to make sure to use a transport with appropriate settings (as in the
- ; transport-udp-nat example).
- ;
- ;[6002]
- ;type=endpoint
- ;transport=transport-udp
- ;context=from-internal
- ;disallow=all
- ;allow=ulaw
- ;auth=6002
- ;aors=6002
- ;direct_media=no
- ;rtp_symmetric=yes
- ;force_rport=yes
- ;rewrite_contact=yes ; necessary if endpoint does not know/register public ip:port
- ;ice_support=yes ;This is specific to clients that support NAT traversal
- ;for media via ICE,STUN,TURN. See the wiki at:
- ;https://wiki.asterisk.org/wiki/x/D4FHAQ
- ;for a deeper explanation of this topic.
- ;[6002]
- ;type=auth
- ;auth_type=userpass
- ;password=6002
- ;username=6002
- ;[6002]
- ;type=aor
- ;max_contacts=2
- ;============EXAMPLE ACL CONFIGURATION==========================================
- ;
- ; The ACL or Access Control List section defines a set of permissions to permit
- ; or deny access to various address or addresses. Alternatively it references an
- ; ACL configuration already set in acl.conf.
- ;
- ; The ACL configuration is independent of individual endpoint configuration and
- ; operates on all inbound SIP communication using res_pjsip.
- ; Reference an ACL defined in acl.conf.
- ;
- ;[acl]
- ;type=acl
- ;acl=example_named_acl1
- ; Reference a contactacl specifically.
- ;
- ;[acl]
- ;type=acl
- ;contact_acl=example_contact_acl1
- ; Define your own ACL here in pjsip.conf and
- ; permit or deny by IP address or range.
- ;
- ;[acl]
- ;type=acl
- ;deny=0.0.0.0/0.0.0.0
- ;permit=209.16.236.0/24
- ;deny=209.16.236.1
- ; Restrict based on Contact Headers rather than IP.
- ; Define options multiple times for various addresses or use a comma-delimited string.
- ;
- ;[acl]
- ;type=acl
- ;contact_deny=0.0.0.0/0.0.0.0
- ;contact_permit=209.16.236.0/24
- ;contact_permit=209.16.236.1
- ;contact_permit=209.16.236.2,209.16.236.3
- ; Restrict based on Contact Headers rather than IP and use
- ; advanced syntax. Note the bang symbol used for "NOT", so we can deny
- ; 209.16.236.12/32 within the permit= statement.
- ;
- ;[acl]
- ;type=acl
- ;contact_deny=0.0.0.0/0.0.0.0
- ;contact_permit=209.16.236.0
- ;permit=209.16.236.0/24, !209.16.236.12/32
- ;============EXAMPLE RLS CONFIGURATION==========================================
- ;
- ;Asterisk provides support for RFC 4662 Resource List Subscriptions. This allows
- ;for an endpoint to, through a single subscription, subscribe to the states of
- ;multiple resources. Resource lists are configured in pjsip.conf using the
- ;resource_list configuration object. Below is an example of a resource list that
- ;allows an endpoint to subscribe to the presence of alice, bob, and carol.
- ;[my_list]
- ;type=resource_list
- ;list_item=alice
- ;list_item=bob
- ;list_item=carol
- ;event=presence
- ;The "event" option in the resource list corresponds to the SIP event-package
- ;that the subscribed resources belong to. A resource list can only provide states
- ;for resources that belong to the same event-package. This means that you cannot
- ;create a list that is a combination of presence and message-summary resources,
- ;for instance. Any event-package that Asterisk supports can be used in a resource
- ;list (presence, dialog, and message-summary). Whenever support for a new event-
- ;package is added to Asterisk, support for that event-package in resource lists
- ;will automatically be supported.
- ;The "list_item" options indicate the names of resources to subscribe to. The
- ;way these are interpreted is event-package specific. For instance, with presence
- ;list_items, hints in the dialplan are looked up. With message-summary list_items,
- ;mailboxes are looked up using your installed voicemail provider (app_voicemail
- ;by default). Note that in the above example, the list_item options were given
- ;one per line. However, it is also permissible to provide multiple list_item
- ;options on a single line (e.g. list_item = alice,bob,carol).
- ;In addition to the options presented in the above configuration, there are two
- ;more configuration options that can be set.
- ; * full_state: dictates whether Asterisk should always send the states of
- ; all resources in the list at once. Defaults to "no". You should only set
- ; this to "yes" if you are interoperating with an endpoint that does not
- ; behave correctly when partial state notifications are sent to it.
- ; * notification_batch_interval: By default, Asterisk will send a NOTIFY request
- ; immediately when a resource changes state. This option causes Asterisk to
- ; start batching resource state changes for the specified number of milliseconds
- ; after a resource changes states. This way, if multiple resources change state
- ; within a brief interval, Asterisk can send a single NOTIFY request with all
- ; of the state changes reflected in it.
- ;There is a limitation to the size of resource lists in Asterisk. If a constructed
- ;notification from Asterisk will exceed 64000 bytes, then the message is deemed
- ;too large to send. If you find that you are seeing error messages about SIP
- ;NOTIFY requests being too large to send, consider breaking your lists into
- ;sub-lists.
- ;============EXAMPLE PHONEPROV CONFIGURATION================================
- ; Before configuring provisioning here, see the documentation for res_phoneprov
- ; and configure phoneprov.conf appropriately.
- ; For each user to be autoprovisioned, a [phoneprov] configuration section
- ; must be created. At a minimum, the 'type', 'PROFILE' and 'MAC' variables must
- ; be set. All other variables are optional.
- ; Example:
- ;[1000]
- ;type=phoneprov ; must be specified as 'phoneprov'
- ;endpoint=1000 ; Required only if automatic setting of
- ; USERNAME, SECRET, DISPLAY_NAME and CALLERID
- ; are needed.
- ;PROFILE=digium ; required
- ;MAC=deadbeef4dad ; required
- ;SERVER=myserver.example.com ; A standard variable
- ;TIMEZONE=America/Denver ; A standard variable
- ;MYVAR=somevalue ; A user confdigured variable
- ; If the phoneprov sections have common variables, it is best to create a
- ; phoneprov template. The example below will produce the same configuration
- ; as the one specified above except that MYVAR will be overridden for
- ; the specific user.
- ; Example:
- ;[phoneprov_defaults](!)
- ;type=phoneprov ; must be specified as 'phoneprov'
- ;PROFILE=digium ; required
- ;SERVER=myserver.example.com ; A standard variable
- ;TIMEZONE=America/Denver ; A standard variable
- ;MYVAR=somevalue ; A user configured variable
- ;[1000](phoneprov_defaults)
- ;endpoint=1000 ; Required only if automatic setting of
- ; USERNAME, SECRET, DISPLAY_NAME and CALLERID
- ; are needed.
- ;MAC=deadbeef4dad ; required
- ;MYVAR=someOTHERvalue ; A user confdigured variable
- ; To have USERNAME and SECRET automatically set, the endpoint
- ; specified here must in turn have an outbound_auth section defined.
- ; Fuller example:
- ;[1000]
- ;type=endpoint
- ;outbound_auth=1000-auth
- ;callerid=My Name <8005551212>
- ;transport=transport-udp-nat
- ;[1000-auth]
- ;type=auth
- ;auth_type=userpass
- ;username=myname
- ;password=mysecret
- ;[phoneprov_defaults](!)
- ;type=phoneprov ; must be specified as 'phoneprov'
- ;PROFILE=someprofile ; required
- ;SERVER=myserver.example.com ; A standard variable
- ;TIMEZONE=America/Denver ; A standard variable
- ;MYVAR=somevalue ; A user configured variable
- ;[1000](phoneprov_defaults)
- ;endpoint=1000 ; Required only if automatic setting of
- ; USERNAME, SECRET, DISPLAY_NAME and CALLERID
- ; are needed.
- ;MAC=deadbeef4dad ; required
- ;MYVAR=someUSERvalue ; A user confdigured variable
- ;LABEL=1000 ; A standard variable
- ; The previous sections would produce a template substitution map as follows:
- ;MAC=deadbeef4dad ;added by pp1000
- ;USERNAME=myname ;automatically added by 1000-auth username
- ;SECRET=mysecret ;automatically added by 1000-auth password
- ;PROFILE=someprofile ;added by defaults
- ;SERVER=myserver.example.com ;added by defaults
- ;SERVER_PORT=5060 ;added by defaults
- ;MYVAR=someUSERvalue ;added by defaults but overdidden by user
- ;CALLERID=8005551212 ;automatically added by 1000 callerid
- ;DISPLAY_NAME=My Name ;automatically added by 1000 callerid
- ;TIMEZONE=America/Denver ;added by defaults
- ;TZOFFSET=252100 ;automatically calculated by res_phoneprov
- ;DST_ENABLE=1 ;automatically calculated by res_phoneprov
- ;DST_START_MONTH=3 ;automatically calculated by res_phoneprov
- ;DST_START_MDAY=9 ;automatically calculated by res_phoneprov
- ;DST_START_HOUR=3 ;automatically calculated by res_phoneprov
- ;DST_END_MONTH=11 ;automatically calculated by res_phoneprov
- ;DST_END_MDAY=2 ;automatically calculated by res_phoneprov
- ;DST_END_HOUR=1 ;automatically calculated by res_phoneprov
- ;ENDPOINT_ID=1000 ;automatically added by this module
- ;AUTH_ID=1000-auth ;automatically added by this module
- ;TRANSPORT_ID=transport-udp-nat ;automatically added by this module
- ;LABEL=1000 ;added by user
- ; MODULE PROVIDING BELOW SECTION(S): res_pjsip
- ;==========================ENDPOINT SECTION OPTIONS=========================
- ;[endpoint]
- ; SYNOPSIS: Endpoint
- ;100rel=yes ; Allow support for RFC3262 provisional ACK tags (default:
- ; "yes")
- ;aggregate_mwi=yes ; (default: "yes")
- ;allow= ; Media Codec s to allow (default: "")
- ;allow_overlap=yes ; Enable RFC3578 overlap dialing support. (default: "yes")
- ;aors= ; AoR s to be used with the endpoint (default: "")
- ;auth= ; Authentication Object s associated with the endpoint (default: "")
- ;callerid= ; CallerID information for the endpoint (default: "")
- ;callerid_privacy=allowed_not_screened ; Default privacy level (default: "allowed_not_screened")
- ;callerid_tag= ; Internal id_tag for the endpoint (default: "")
- ;context=default ; Dialplan context for inbound sessions (default:
- ; "default")
- ;direct_media_glare_mitigation=none ; Mitigation of direct media re INVITE
- ; glare (default: "none")
- ;direct_media_method=invite ; Direct Media method type (default: "invite")
- ;trust_connected_line=yes ; Accept Connected Line updates from this endpoint
- ; (default: "yes")
- ;send_connected_line=yes ; Send Connected Line updates to this endpoint
- ; (default: "yes")
- ;connected_line_method=invite ; Connected line method type.
- ; When set to "invite", check the remote's
- ; Allow header and if UPDATE is allowed, send
- ; UPDATE instead of INVITE to avoid SDP
- ; renegotiation. If UPDATE is not Allowed,
- ; send INVITE.
- ; If set to "update", send UPDATE regardless
- ; of what the remote Allows.
- ; (default: "invite")
- ;direct_media=yes ; Determines whether media may flow directly between
- ; endpoints (default: "yes")
- ;disable_direct_media_on_nat=no ; Disable direct media session refreshes when
- ; NAT obstructs the media session (default:
- ; "no")
- ;disallow= ; Media Codec s to disallow (default: "")
- ;dtmf_mode=rfc4733 ; DTMF mode (default: "rfc4733")
- ;media_address= ; IP address used in SDP for media handling (default: "")
- ;bind_rtp_to_media_address= ; Bind the RTP session to the media_address.
- ; This causes all RTP packets to be sent from
- ; the specified address. (default: "no")
- ;force_rport=yes ; Force use of return port (default: "yes")
- ;ice_support=no ; Enable the ICE mechanism to help traverse NAT (default: "no")
- ;identify_by=username ; A comma-separated list of ways the Endpoint or AoR can be
- ; identified.
- ; "username": Identify by the From or To username and domain
- ; "auth_username": Identify by the Authorization username and realm
- ; "ip": Identify by the source IP address
- ; "header": Identify by a configured SIP header value.
- ; In the username and auth_username cases, if an exact match
- ; on both username and domain/realm fails, the match is
- ; retried with just the username.
- ; (default: "username,ip")
- ;redirect_method=user ; How redirects received from an endpoint are handled
- ; (default: "user")
- ;mailboxes= ; NOTIFY the endpoint when state changes for any of the specified mailboxes.
- ; Asterisk will send unsolicited MWI NOTIFY messages to the endpoint when state
- ; changes happen for any of the specified mailboxes. (default: "")
- ;voicemail_extension= ; The voicemail extension to send in the NOTIFY Message-Account header
- ; (default: global/default_voicemail_extension)
- ;mwi_subscribe_replaces_unsolicited=no
- ; An MWI subscribe will replace unsoliticed NOTIFYs
- ; (default: "no")
- ;moh_suggest=default ; Default Music On Hold class (default: "default")
- ;outbound_auth= ; Authentication object used for outbound requests (default:
- ; "")
- ;outbound_proxy= ; Proxy through which to send requests, a full SIP URI
- ; must be provided (default: "")
- ;rewrite_contact=no ; Allow Contact header to be rewritten with the source
- ; IP address port (default: "no")
- ;rtp_symmetric=no ; Enforce that RTP must be symmetric (default: "no")
- ;send_diversion=yes ; Send the Diversion header conveying the diversion
- ; information to the called user agent (default: "yes")
- ;send_pai=no ; Send the P Asserted Identity header (default: "no")
- ;send_rpid=no ; Send the Remote Party ID header (default: "no")
- ;rpid_immediate=no ; Send connected line updates on unanswered incoming calls immediately. (default: "no")
- ;timers_min_se=90 ; Minimum session timers expiration period (default:
- ; "90")
- ;timers=yes ; Session timers for SIP packets (default: "yes")
- ;timers_sess_expires=1800 ; Maximum session timer expiration period
- ; (default: "1800")
- ;transport= ; Explicit transport configuration to use (default: "")
- ; This will force the endpoint to use the specified transport
- ; configuration to send SIP messages. You need to already know
- ; what kind of transport (UDP/TCP/IPv4/etc) the endpoint device
- ; will use.
- ;trust_id_inbound=no ; Accept identification information received from this
- ; endpoint (default: "no")
- ;trust_id_outbound=no ; Send private identification details to the endpoint
- ; (default: "no")
- ;type= ; Must be of type endpoint (default: "")
- ;use_ptime=no ; Use Endpoint s requested packetisation interval (default:
- ; "no")
- ;use_avpf=no ; Determines whether res_pjsip will use and enforce usage of
- ; AVPF for this endpoint (default: "no")
- ;media_encryption=no ; Determines whether res_pjsip will use and enforce
- ; usage of media encryption for this endpoint (default:
- ; "no")
- ;media_encryption_optimistic=no ; Use encryption if possible but don't fail the call
- ; if not possible.
- ;g726_non_standard=no ; When set to "yes" and an endpoint negotiates g.726
- ; audio then g.726 for AAL2 packing order is used contrary
- ; to what is recommended in RFC3551. Note, 'g726aal2' also
- ; needs to be specified in the codec allow list
- ; (default: "no")
- ;inband_progress=no ; Determines whether chan_pjsip will indicate ringing
- ; using inband progress (default: "no")
- ;call_group= ; The numeric pickup groups for a channel (default: "")
- ;pickup_group= ; The numeric pickup groups that a channel can pickup (default:
- ; "")
- ;named_call_group= ; The named pickup groups for a channel (default: "")
- ;named_pickup_group= ; The named pickup groups that a channel can pickup
- ; (default: "")
- ;device_state_busy_at=0 ; The number of in use channels which will cause busy
- ; to be returned as device state (default: "0")
- ;t38_udptl=no ; Whether T 38 UDPTL support is enabled or not (default: "no")
- ;t38_udptl_ec=none ; T 38 UDPTL error correction method (default: "none")
- ;t38_udptl_maxdatagram=0 ; T 38 UDPTL maximum datagram size (default:
- ; "0")
- ;fax_detect=no ; Whether CNG tone detection is enabled (default: "no")
- ;fax_detect_timeout=30 ; How many seconds into a call before fax_detect is
- ; disabled for the call.
- ; Zero disables the timeout.
- ; (default: "0")
- ;t38_udptl_nat=no ; Whether NAT support is enabled on UDPTL sessions
- ; (default: "no")
- ;tone_zone= ; Set which country s indications to use for channels created
- ; for this endpoint (default: "")
- ;language= ; Set the default language to use for channels created for this
- ; endpoint (default: "")
- ;one_touch_recording=no ; Determines whether one touch recording is allowed for
- ; this endpoint (default: "no")
- ;record_on_feature=automixmon ; The feature to enact when one touch recording
- ; is turned on (default: "automixmon")
- ;record_off_feature=automixmon ; The feature to enact when one touch recording
- ; is turned off (default: "automixmon")
- ;rtp_engine=asterisk ; Name of the RTP engine to use for channels created
- ; for this endpoint (default: "asterisk")
- ;allow_transfer=yes ; Determines whether SIP REFER transfers are allowed
- ; for this endpoint (default: "yes")
- ;sdp_owner=- ; String placed as the username portion of an SDP origin o line
- ; (default: "-")
- ;sdp_session=Asterisk ; String used for the SDP session s line (default:
- ; "Asterisk")
- ;tos_audio=0 ; DSCP TOS bits for audio streams (default: "0")
- ;tos_video=0 ; DSCP TOS bits for video streams (default: "0")
- ;cos_audio=0 ; Priority for audio streams (default: "0")
- ;cos_video=0 ; Priority for video streams (default: "0")
- ;allow_subscribe=yes ; Determines if endpoint is allowed to initiate
- ; subscriptions with Asterisk (default: "yes")
- ;sub_min_expiry=0 ; The minimum allowed expiry time for subscriptions
- ; initiated by the endpoint (default: "0")
- ;from_user= ; Username to use in From header for requests to this endpoint
- ; (default: "")
- ;mwi_from_user= ; Username to use in From header for unsolicited MWI NOTIFYs to
- ; this endpoint (default: "")
- ;from_domain= ; Domain to user in From header for requests to this endpoint
- ; (default: "")
- ;dtls_verify=no ; Verify that the provided peer certificate is valid (default:
- ; "no")
- ;dtls_rekey=0 ; Interval at which to renegotiate the TLS session and rekey
- ; the SRTP session (default: "0")
- ;dtls_cert_file= ; Path to certificate file to present to peer (default:
- ; "")
- ;dtls_private_key= ; Path to private key for certificate file (default:
- ; "")
- ;dtls_cipher= ; Cipher to use for DTLS negotiation (default: "")
- ;dtls_ca_file= ; Path to certificate authority certificate (default: "")
- ;dtls_ca_path= ; Path to a directory containing certificate authority
- ; certificates (default: "")
- ;dtls_setup= ; Whether we are willing to accept connections connect to the
- ; other party or both (default: "")
- ;dtls_fingerprint= ; Hash to use for the fingerprint placed into SDP
- ; (default: "SHA-256")
- ;srtp_tag_32=no ; Determines whether 32 byte tags should be used instead of 80
- ; byte tags (default: "no")
- ;set_var= ; Variable set on a channel involving the endpoint. For multiple
- ; channel variables specify multiple 'set_var'(s)
- ;rtp_keepalive= ; Interval, in seconds, between comfort noise RTP packets if
- ; RTP is not flowing. This setting is useful for ensuring that
- ; holes in NATs and firewalls are kept open throughout a call.
- ;rtp_timeout= ; Hang up channel if RTP is not received for the specified
- ; number of seconds when the channel is off hold (default:
- ; "0" or not enabled)
- ;rtp_timeout_hold= ; Hang up channel if RTP is not received for the specified
- ; number of seconds when the channel is on hold (default:
- ; "0" or not enabled)
- ;contact_user= ; On outgoing requests, force the user portion of the Contact
- ; header to this value (default: "")
- ;asymmetric_rtp_codec= ; Allow the sending and receiving codec to differ and
- ; not be automatically matched (default: "no")
- ;refer_blind_progress= ; Whether to notifies all the progress details on blind
- ; transfer (default: "yes"). The value "no" is useful
- ; for some SIP phones (Mitel/Aastra, Snom) which expect
- ; a sip/frag "200 OK" after REFER has been accepted.
- ;notify_early_inuse_ringing = ; Whether to notifies dialog-info 'early'
- ; on INUSE && RINGING state (default: "no").
- ; The value "yes" is useful for some SIP phones
- ; (Cisco SPA) to be able to indicate and pick up
- ; ringing devices.
- ;incoming_mwi_mailbox = ; Mailbox name to use when incoming MWI NOTIFYs are
- ; received.
- ; If an MWI NOTIFY is received FROM this endpoint,
- ; this mailbox will be used when notifying other modules
- ; of MWI status changes. If not set, incoming MWI
- ; NOTIFYs are ignored.
- ;follow_early_media_fork = ; On outgoing calls, if the UAS responds with
- ; different SDP attributes on subsequent 18X or 2XX
- ; responses (such as a port update) AND the To tag
- ; on the subsequent response is different than that
- ; on the previous one, follow it. This usually
- ; happens when the INVITE is forked to multiple UASs
- ; and more than 1 sends an SDP answer.
- ; This option must also be enabled in the system
- ; section.
- ; (default: yes)
- ;accept_multiple_sdp_answers =
- ; On outgoing calls, if the UAS responds with
- ; different SDP attributes on non-100rel 18X or 2XX
- ; responses (such as a port update) AND the To tag on
- ; the subsequent response is the same as that on the
- ; previous one, process it. This can happen when the
- ; UAS needs to change ports for some reason such as
- ; using a separate port for custom ringback.
- ; This option must also be enabled in the system
- ; section.
- ; (default: no)
- ;suppress_q850_reason_headers =
- ; Suppress Q.850 Reason headers for this endpoint.
- ; Some devices can't accept multiple Reason headers
- ; and get confused when both 'SIP' and 'Q.850' Reason
- ; headers are received. This option allows the
- ; 'Q.850' Reason header to be suppressed.
- ; (default: no)
- ;==========================AUTH SECTION OPTIONS=========================
- ;[auth]
- ; SYNOPSIS: Authentication type
- ;
- ; Note: Using the same auth section for inbound and outbound
- ; authentication is not recommended. There is a difference in
- ; meaning for an empty realm setting between inbound and outbound
- ; authentication uses. Look to the CLI config help
- ; "config show help res_pjsip auth realm" or on the wiki for the
- ; difference.
- ;
- ;auth_type=userpass ; Authentication type (default: "userpass")
- ;nonce_lifetime=32 ; Lifetime of a nonce associated with this
- ; authentication config (default: "32")
- ;md5_cred= ; MD5 Hash used for authentication (default: "")
- ;password= ; PlainText password used for authentication (default: "")
- ;realm= ; SIP realm for endpoint (default: "")
- ;type= ; Must be auth (default: "")
- ;username= ; Username to use for account (default: "")
- ;==========================DOMAIN_ALIAS SECTION OPTIONS=========================
- ;[domain_alias]
- ; SYNOPSIS: Domain Alias
- ;type= ; Must be of type domain_alias (default: "")
- ;domain= ; Domain to be aliased (default: "")
- ;==========================TRANSPORT SECTION OPTIONS=========================
- ;[transport]
- ; SYNOPSIS: SIP Transport
- ;
- ;async_operations=1 ; Number of simultaneous Asynchronous Operations
- ; (default: "1")
- ;bind= ; IP Address and optional port to bind to for this transport (default:
- ; "")
- ; Note that for the Websocket transport the TLS configuration is configured
- ; in http.conf and is applied for all HTTPS traffic.
- ;ca_list_file= ; File containing a list of certificates to read TLS ONLY
- ; (default: "")
- ;ca_list_path= ; Path to directory containing certificates to read TLS ONLY.
- ; PJProject version 2.4 or higher is required for this option to
- ; be used.
- ; (default: "")
- ;cert_file= ; Certificate file for endpoint TLS ONLY
- ; Will read .crt or .pem file but only uses cert,
- ; a .key file must be specified via priv_key_file
- ; (default: "")
- ;cipher= ; Preferred cryptography cipher names TLS ONLY (default: "")
- ;method= ; Method of SSL transport TLS ONLY (default: "")
- ;priv_key_file= ; Private key file TLS ONLY (default: "")
- ;verify_client= ; Require verification of client certificate TLS ONLY (default:
- ; "")
- ;verify_server= ; Require verification of server certificate TLS ONLY (default:
- ; "")
- ;require_client_cert= ; Require client certificate TLS ONLY (default: "")
- ;domain= ; Domain the transport comes from (default: "")
- ;external_media_address= ; External IP address to use in RTP handling
- ; (default: "")
- ;external_signaling_address= ; External address for SIP signalling (default:
- ; "")
- ;external_signaling_port=0 ; External port for SIP signalling (default:
- ; "0")
- ;local_net= ; Network to consider local used for NAT purposes (default: "")
- ;password= ; Password required for transport (default: "")
- ;protocol=udp ; Protocol to use for SIP traffic (default: "udp")
- ;type= ; Must be of type transport (default: "")
- ;tos=0 ; Enable TOS for the signalling sent over this transport (default: "0")
- ;cos=0 ; Enable COS for the signalling sent over this transport (default: "0")
- ;websocket_write_timeout=100 ; Default write timeout to set on websocket
- ; transports. This value may need to be adjusted
- ; for connections where Asterisk must write a
- ; substantial amount of data and the receiving
- ; clients are slow to process the received
- ; information. Value is in milliseconds; default
- ; is 100 ms.
- ;allow_reload=no ; Although transports can now be reloaded, that may not be
- ; desirable because of the slight possibility of dropped
- ; calls. To make sure there are no unintentional drops, if
- ; this option is set to 'no' (the default) changes to the
- ; particular transport will be ignored. If set to 'yes',
- ; changes (if any) will be applied.
- ;symmetric_transport=no ; When a request from a dynamic contact comes in on a
- ; transport with this option set to 'yes', the transport
- ; name will be saved and used for subsequent outgoing
- ; requests like OPTIONS, NOTIFY and INVITE. It's saved
- ; as a contact uri parameter named 'x-ast-txp' and will
- ; display with the contact uri in CLI, AMI, and ARI
- ; output. On the outgoing request, if a transport
- ; wasn't explicitly set on the endpoint AND the request
- ; URI is not a hostname, the saved transport will be
- ; used and the 'x-ast-txp' parameter stripped from the
- ; outgoing packet.
- ;==========================AOR SECTION OPTIONS=========================
- ;[aor]
- ; SYNOPSIS: The configuration for a location of an endpoint
- ;contact= ; Permanent contacts assigned to AoR (default: "")
- ;default_expiration=3600 ; Default expiration time in seconds for
- ; contacts that are dynamically bound to an AoR
- ; (default: "3600")
- ;mailboxes= ; Allow subscriptions for the specified mailbox(es)
- ; This option applies when an external entity subscribes to an AoR
- ; for Message Waiting Indications. (default: "")
- ;voicemail_extension= ; The voicemail extension to send in the NOTIFY Message-Account header
- ; (default: global/default_voicemail_extension)
- ;maximum_expiration=7200 ; Maximum time to keep an AoR (default: "7200")
- ;max_contacts=0 ; Maximum number of contacts that can bind to an AoR (default:
- ; "0")
- ;minimum_expiration=60 ; Minimum keep alive time for an AoR (default: "60")
- ;remove_existing=no ; Allow a registration to succeed by displacing any existing
- ; contacts that now exceed the max_contacts count. Any
- ; removed contacts are the next to expire. The behaviour is
- ; beneficial when rewrite_contact is enabled and max_contacts
- ; is greater than one. The removed contact is likely the old
- ; contact created by rewrite_contact that the device is
- ; refreshing.
- ; (default: "no")
- ;type= ; Must be of type aor (default: "")
- ;qualify_frequency=0 ; Interval at which to qualify an AoR (default: "0")
- ;qualify_timeout=3.0 ; Qualify timeout in fractional seconds (default: "3.0")
- ;authenticate_qualify=no ; Authenticates a qualify request if needed
- ; (default: "no")
- ;outbound_proxy= ; Proxy through which to send OPTIONS requests, a full SIP URI
- ; must be provided (default: "")
- ;==========================SYSTEM SECTION OPTIONS=========================
- ;[system]
- ; SYNOPSIS: Options that apply to the SIP stack as well as other system-wide settings
- ;timer_t1=500 ; Set transaction timer T1 value milliseconds (default: "500")
- ;timer_b=32000 ; Set transaction timer B value milliseconds (default: "32000")
- ;compact_headers=no ; Use the short forms of common SIP header names
- ; (default: "no")
- ;threadpool_initial_size=0 ; Initial number of threads in the res_pjsip
- ; threadpool (default: "0")
- ;threadpool_auto_increment=5 ; The amount by which the number of threads is
- ; incremented when necessary (default: "5")
- ;threadpool_idle_timeout=60 ; Number of seconds before an idle thread
- ; should be disposed of (default: "60")
- ;threadpool_max_size=0 ; Maximum number of threads in the res_pjsip threadpool
- ; A value of 0 indicates no maximum (default: "0")
- ;disable_tcp_switch=yes ; Disable automatic switching from UDP to TCP transports
- ; if outgoing request is too large.
- ; See RFC 3261 section 18.1.1.
- ; Disabling this option has been known to cause interoperability
- ; issues, so disable at your own risk.
- ; (default: "yes")
- ;follow_early_media_fork = ; On outgoing calls, if the UAS responds with
- ; different SDP attributes on subsequent 18X or 2XX
- ; responses (such as a port update) AND the To tag
- ; on the subsequent response is different than that
- ; on the previous one, follow it. This usually
- ; happens when the INVITE is forked to multiple UASs
- ; and more than 1 sends an SDP answer.
- ; This option must also be enabled on endpoints that
- ; require this functionality.
- ; (default: yes)
- ;accept_multiple_sdp_answers =
- ; On outgoing calls, if the UAS responds with
- ; different SDP attributes on non-100rel 18X or 2XX
- ; responses (such as a port update) AND the To tag on
- ; the subsequent response is the same as that on the
- ; previous one, process it. This can happen when the
- ; UAS needs to change ports for some reason such as
- ; using a separate port for custom ringback.
- ; This option must also be enabled on endpoints that
- ; require this functionality.
- ; (default: no)
- ;type= ; Must be of type system (default: "")
- ;==========================GLOBAL SECTION OPTIONS=========================
- ;[global]
- ; SYNOPSIS: Options that apply globally to all SIP communications
- ;max_forwards=70 ; Value used in Max Forwards header for SIP requests
- ; (default: "70")
- ;type= ; Must be of type global (default: "")
- ;user_agent=Asterisk PBX ; Allows you to change the user agent string
- ; The default user agent string also contains
- ; the Asterisk version. If you don't want to
- ; expose this, change the user_agent string.
- ;default_outbound_endpoint=default_outbound_endpoint ; Endpoint to use when
- ; sending an outbound
- ; request to a URI
- ; without a specified
- ; endpoint (default: "d
- ; efault_outbound_endpo
- ; int")
- ;debug=no ; Enable/Disable SIP debug logging. Valid options include yes|no
- ; or a host address (default: "no")
- ;keep_alive_interval=20 ; The interval (in seconds) at which to send keepalive
- ; messages on all active connection-oriented transports
- ; (default: "0")
- ;contact_expiration_check_interval=30
- ; The interval (in seconds) to check for expired contacts.
- ;disable_multi_domain=no
- ; Disable Multi Domain support.
- ; If disabled it can improve realtime performace by reducing
- ; number of database requsts
- ; (default: "no")
- ;endpoint_identifier_order=ip,username,anonymous
- ; The order by which endpoint identifiers are given priority.
- ; Currently, "ip", "header", "username", "auth_username" and "anonymous"
- ; are valid identifiers as registered by the res_pjsip_endpoint_identifier_*
- ; modules. Some modules like res_pjsip_endpoint_identifier_user register
- ; more than one identifier. Use the CLI command "pjsip show identifiers"
- ; to see the identifiers currently available.
- ; (default: ip,username,anonymous)
- ;max_initial_qualify_time=4 ; The maximum amount of time (in seconds) from
- ; startup that qualifies should be attempted on all
- ; contacts. If greater than the qualify_frequency
- ; for an aor, qualify_frequency will be used instead.
- ;regcontext=sipregistrations ; If regcontext is specified, Asterisk will dynamically
- ; create and destroy a NoOp priority 1 extension for a
- ; given endpoint who registers or unregisters with us.
- ; The extension added is the name of the endpoint.
- ;default_voicemail_extension=asterisk
- ; The voicemail extension to send in the NOTIFY Message-Account header
- ; if not set on endpoint or aor.
- ; (default: "")
- ;
- ; The following unidentified_request options are only used when "auth_username"
- ; matching is enabled in "endpoint_identifier_order".
- ;
- ;unidentified_request_count=5 ; The number of unidentified requests that can be
- ; received from a single IP address in
- ; unidentified_request_period seconds before a security
- ; event is generated. (default: 5)
- ;unidentified_request_period=5 ; See above. (default: 5 seconds)
- ;unidentified_request_prune_interval=30
- ; The interval at which unidentified requests
- ; are check to see if they can be pruned. If they're
- ; older than twice the unidentified_request_period,
- ; they're pruned.
- ;
- ;default_from_user=asterisk ; When Asterisk generates an outgoing SIP request, the
- ; From header username will be set to this value if
- ; there is no better option (such as CallerID or
- ; endpoint/from_user) to be used
- ;default_realm=asterisk ; When Asterisk generates a challenge, the digest realm
- ; will be set to this value if there is no better option
- ; (such as auth/realm) to be used.
- ; Asterisk Task Processor Queue Size
- ; On heavy loaded system with DB storage you may need to increase
- ; taskprocessor queue.
- ; If the taskprocessor queue size reached high water level,
- ; the alert is triggered.
- ; If the alert is set the pjsip distibutor stops processing incoming
- ; requests until the alert is cleared.
- ; The alert is cleared when taskprocessor queue size drops to the
- ; low water clear level.
- ; The next options set taskprocessor queue levels for MWI.
- ;mwi_tps_queue_high=500 ; Taskprocessor high water alert trigger level.
- ;mwi_tps_queue_low=450 ; Taskprocessor low water clear alert level.
- ; The default is -1 for 90% of high water level.
- ; Unsolicited MWI
- ; If there are endpoints configured with unsolicited MWI
- ; then res_pjsip_mwi module tries to send MWI to all endpoints on startup.
- ;mwi_disable_initial_unsolicited=no ; Disable sending unsolicited mwi to all endpoints on startup.
- ; If disabled then unsolicited mwi will start processing
- ; on the endpoint's next contact update.
- ;ignore_uri_user_options=no ; Enable/Disable ignoring SIP URI user field options.
- ; If you have this option enabled and there are semicolons
- ; in the user field of a SIP URI then the field is truncated
- ; at the first semicolon. This effectively makes the semicolon
- ; a non-usable character for PJSIP endpoint names, extensions,
- ; and AORs. This can be useful for improving compatability with
- ; an ITSP that likes to use user options for whatever reason.
- ; Example:
- ; URI: "sip:1235557890;phone-context=national@x.x.x.x;user=phone"
- ; The user field is "1235557890;phone-context=national"
- ; Which becomes this: "1235557890"
- ;
- ; Note: The caller-id and redirecting number strings obtained
- ; from incoming SIP URI user fields are always truncated at the
- ; first semicolon.
- ;send_contact_status_on_update_registration=yes ; Enable sending AMI ContactStatus
- ; event when a device refreshes its registration
- ; (default: "yes")
- ; MODULE PROVIDING BELOW SECTION(S): res_pjsip_acl
- ;==========================ACL SECTION OPTIONS=========================
- ;[acl]
- ; SYNOPSIS: Access Control List
- ;acl= ; List of IP ACL section names in acl conf (default: "")
- ;contact_acl= ; List of Contact ACL section names in acl conf (default: "")
- ;contact_deny= ; List of Contact header addresses to deny (default: "")
- ;contact_permit= ; List of Contact header addresses to permit (default:
- ; "")
- ;deny= ; List of IP addresses to deny access from (default: "")
- ;permit= ; List of IP addresses to permit access from (default: "")
- ;type= ; Must be of type acl (default: "")
- ; MODULE PROVIDING BELOW SECTION(S): res_pjsip_outbound_registration
- ;==========================REGISTRATION SECTION OPTIONS=========================
- ;[registration]
- ; SYNOPSIS: The configuration for outbound registration
- ;auth_rejection_permanent=yes ; Determines whether failed authentication
- ; challenges are treated as permanent failures
- ; (default: "yes")
- ;client_uri= ; Client SIP URI used when attemping outbound registration
- ; (default: "")
- ;contact_user= ; Contact User to use in request (default: "")
- ;expiration=3600 ; Expiration time for registrations in seconds
- ; (default: "3600")
- ;max_retries=10 ; Maximum number of registration attempts (default: "10")
- ;outbound_auth= ; Authentication object to be used for outbound registrations
- ; (default: "")
- ;outbound_proxy= ; Proxy through which to send registrations, a full SIP URI
- ; must be provided (default: "")
- ;retry_interval=60 ; Interval in seconds between retries if outbound
- ; registration is unsuccessful (default: "60")
- ;forbidden_retry_interval=0 ; Interval used when receiving a 403 Forbidden
- ; response (default: "0")
- ;fatal_retry_interval=0 ; Interval used when receiving a fatal response.
- ; (default: "0") A fatal response is any permanent
- ; failure (non-temporary 4xx, 5xx, 6xx) response
- ; received from the registrar. NOTE - if also set
- ; the 'forbidden_retry_interval' takes precedence
- ; over this one when a 403 is received. Also, if
- ; 'auth_rejection_permanent' equals 'yes' a 401 and
- ; 407 become subject to this retry interval.
- ;server_uri= ; SIP URI of the server to register against (default: "")
- ;transport= ; Transport used for outbound authentication (default: "")
- ;line= ; When enabled this option will cause a 'line' parameter to be
- ; added to the Contact header placed into the outgoing
- ; registration request. If the remote server sends a call
- ; this line parameter will be used to establish a relationship
- ; to the outbound registration, ultimately causing the
- ; configured endpoint to be used (default: "no")
- ;endpoint= ; When line support is enabled this configured endpoint name
- ; is used for incoming calls that are related to the outbound
- ; registration (default: "")
- ;type= ; Must be of type registration (default: "")
- ; MODULE PROVIDING BELOW SECTION(S): res_pjsip_endpoint_identifier_ip
- ;==========================IDENTIFY SECTION OPTIONS=========================
- ;[identify]
- ; SYNOPSIS: Identifies endpoints via some criteria.
- ;
- ; NOTE: If multiple matching criteria are provided then an inbound request will
- ; be matched to the endpoint if it matches ANY of the criteria.
- ;endpoint= ; Name of endpoint identified (default: "")
- ;srv_lookups=yes ; Perform SRV lookups for provided hostnames. (default: yes)
- ;match= ; Comma separated list of IP addresses, networks, or hostnames to match
- ; against (default: "")
- ;match_header= ; SIP header with specified value to match against (default: "")
- ;type= ; Must be of type identify (default: "")
- ;========================PHONEPROV_USER SECTION OPTIONS=======================
- ;[phoneprov]
- ; SYNOPSIS: Contains variables for autoprovisioning each user
- ;endpoint= ; The endpoint from which to gather username, secret, etc. (default: "")
- ;PROFILE= ; The name of a profile configured in phoneprov.conf (default: "")
- ;MAC= ; The mac address for this user (default: "")
- ;OTHERVAR= ; Any other name value pair to be used in templates (default: "")
- ; Common variables include LINE, LINEKEYS, etc.
- ; See phoneprov.conf.sample for others.
- ;type= ; Must be of type phoneprov (default: "")
- ; MODULE PROVIDING BELOW SECTION(S): res_pjsip_outbound_publish
- ;======================OUTBOUND_PUBLISH SECTION OPTIONS=====================
- ; See https://wiki.asterisk.org/wiki/display/AST/Publishing+Extension+State
- ; for more information.
- ;[outbound-publish]
- ;type=outbound-publish ; Must be of type 'outbound-publish'.
- ;expiration=3600 ; Expiration time for publications in seconds
- ;outbound_auth= ; Authentication object(s) to be used for outbound
- ; publishes.
- ; This is a comma-delimited list of auth sections
- ; defined in pjsip.conf used to respond to outbound
- ; authentication challenges.
- ; Using the same auth section for inbound and
- ; outbound authentication is not recommended. There
- ; is a difference in meaning for an empty realm
- ; setting between inbound and outbound authentication
- ; uses. See the auth realm description for details.
- ;outbound_proxy= ; SIP URI of the outbound proxy used to send
- ; publishes
- ;server_uri= ; SIP URI of the server and entity to publish to.
- ; This is the URI at which to find the entity and
- ; server to send the outbound PUBLISH to.
- ; This URI is used as the request URI of the outbound
- ; PUBLISH request from Asterisk.
- ;from_uri= ; SIP URI to use in the From header.
- ; This is the URI that will be placed into the From
- ; header of outgoing PUBLISH messages. If no URI is
- ; specified then the URI provided in server_uri will
- ; be used.
- ;to_uri= ; SIP URI to use in the To header.
- ; This is the URI that will be placed into the To
- ; header of outgoing PUBLISH messages. If no URI is
- ; specified then the URI provided in server_uri will
- ; be used.
- ;event= ; Event type of the PUBLISH.
- ;max_auth_attempts= ; Maximum number of authentication attempts before
- ; stopping the pub.
- ;transport= ; Transport used for outbound publish.
- ; A transport configured in pjsip.conf. As with other
- ; res_pjsip modules, this will use the first
- ; available transport of the appropriate type if
- ; unconfigured.
- ;multi_user=no ; Enable multi-user support (Asterisk 14+ only)
- ; MODULE PROVIDING BELOW SECTION(S): res_pjsip_pubsub
- ;=============================RESOURCE-LIST===================================
- ; See https://wiki.asterisk.org/wiki/pages/viewpage.action?pageId=30278158
- ; for more information.
- ;[resource_list]
- ;type=resource_list ; Must be of type 'resource_list'.
- ;event= ; The SIP event package that the list resource.
- ; belongs to. The SIP event package describes the
- ; types of resources that Asterisk reports the state
- ; of.
- ;list_item= ; The name of a resource to report state on.
- ; In general Asterisk looks up list items in the
- ; following way:
- ; 1. Check if the list item refers to another
- ; configured resource list.
- ; 2. Pass the name of the resource off to
- ; event-package-specific handlers to find the
- ; specified resource.
- ; The second part means that the way the list item
- ; is specified depends on what type of list this is.
- ; For instance, if you have the event set to
- ; presence, then list items should be in the form of
- ; dialplan_extension@dialplan_context. For
- ; message-summary, mailbox names should be listed.
- ;full_state=no ; Indicates if the entire list's state should be
- ; sent out.
- ; If this option is enabled, and a resource changes
- ; state, then Asterisk will construct a notification
- ; that contains the state of all resources in the
- ; list. If the option is disabled, Asterisk will
- ; construct a notification that only contains the
- ; states of resources that have changed.
- ; NOTE: Even with this option disabled, there are
- ; certain situations where Asterisk is forced to send
- ; a notification with the states of all resources in
- ; the list. When a subscriber renews or terminates
- ; its subscription to the list, Asterisk MUST send
- ; a full state notification.
- ;notification_batch_interval=0
- ; Time Asterisk should wait, in milliseconds,
- ; before sending notifications.
- ;==========================INBOUND_PUBLICATION================================
- ; See https://wiki.asterisk.org/wiki/display/AST/Exchanging+Device+and+Mailbox+State+Using+PJSIP
- ; for more information.
- ;[inbound-publication]
- ;type= ; Must be of type 'inbound-publication'.
- ;endpoint= ; Optional name of an endpoint that is only allowed
- ; to publish to this resource.
- ; MODULE PROVIDING BELOW SECTION(S): res_pjsip_publish_asterisk
- ;==========================ASTERISK_PUBLICATION===============================
- ; See https://wiki.asterisk.org/wiki/display/AST/Exchanging+Device+and+Mailbox+State+Using+PJSIP
- ; for more information.
- ;[asterisk-publication]
- ;type=asterisk-publication ; Must be of type 'asterisk-publication'.
- ;devicestate_publish= ; Optional name of a publish item that can be used
- ; to publish a req.
- ;mailboxstate_publish= ; Optional name of a publish item that can be used
- ; to publish a req.
- ;device_state=no ; Whether we should permit incoming device state
- ; events.
- ;device_state_filter= ; Optional regular expression used to filter what
- ; devices we accept events for.
- ;mailbox_state=no ; Whether we should permit incoming mailbox state
- ; events.
- ;mailbox_state_filter= ; Optional regular expression used to filter what
- ; mailboxes we accept events for.
|