Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
notes:asterisk [2022/06/03 15:55] – external edit 127.0.0.1notes:asterisk [2022/06/06 10:28] (current) maff
Line 124: Line 124:
 This part was initially extremely daunting. Not helping matters is that the fact that there are no pages online (that I could find) that discuss a viable minimal configuration for a recent Asterisk version. Apparently either nobody is starting fresh with Asterisk in 2022 or nobody is interested in writing about it. Further frustrating matters is that Asterisk's official wiki, a Confluence site, went down shortly after I began the process of setting Asterisk up. This part was initially extremely daunting. Not helping matters is that the fact that there are no pages online (that I could find) that discuss a viable minimal configuration for a recent Asterisk version. Apparently either nobody is starting fresh with Asterisk in 2022 or nobody is interested in writing about it. Further frustrating matters is that Asterisk's official wiki, a Confluence site, went down shortly after I began the process of setting Asterisk up.
  
-===== modules.conf =====+===== Files removed =====
  
-started here, and essentially trimmed the config file down to ''autoload=yes'', because I disabled all modules in ''make menuconfig'' that didn't want to actually use.+deleted the config files installed by ''make samples'' that were installed for all modules I explicitly removed:
  
-<code ini modules.conf> +  * app_skel.conf 
-[modules+  * cdr_adaptive_odbc.conf 
-autoload=yes+  * cdr_beanstalkd.conf 
 +  * cdr_odbc.conf 
 +  * cdr_pgsql.conf 
 +  * cdr_syslog.conf 
 +  * cel_beanstalkd.conf 
 +  * cel_odbc.conf 
 +  * cel_pgsql.conf 
 +  * func_odbc.conf 
 +  * misdn.conf 
 +  * osp.conf 
 +  * oss.conf 
 +  * res_odbc.conf 
 +  * res_pgsql.conf 
 +  * res_snmp.conf 
 +  * sip.conf 
 +  * sip_notify.conf 
 +  * vpb.conf 
 + 
 +===== Files edited ===== 
 + 
 +<code ini acl.conf> 
 +[acl_deny_default
 +deny    = 0.0.0.0/0 
 +deny    = :: 
 + 
 +[acl_permit_default] 
 +permit  = 0.0.0.0/0 
 +permit  = :: 
 + 
 +[acl_local_subnets] 
 +permit  = 10.13.37.0/24 
 +permit  = 10.46.0.0/16 
 +permit  = 172.31.255.0/28 
 +permit  = fd46::/16 
 + 
 +[acl_permit_local_only] 
 +deny    = 0.0.0.0/0 
 +deny    = :: 
 +permit  = 10.13.37.0/24 
 +permit  = 10.46.0.0/16 
 +permit  = 172.31.255.0/28 
 +permit  fd46::/16
 </code> </code>
  
-===== features.conf =====+<code ini adsi.conf
 +[intro] 
 +alignment center 
 +greeting => hewwo 
 +</code>
  
-I then went here, and I trimmed it down to just the things that seemed relevant.+<code ini cli.conf> 
 +[startup_commands] 
 +;sip set debug on       = yes 
 +;core set verbose 3     = yes 
 +;core set debug 1       = yes 
 +</code> 
 + 
 +<code ini codecs.conf> 
 +; custom CELT codec defs. one custom definition per sample rate. 
 +;[celt44] 
 +;type=celt 
 +;samprate=44100 
 +;framesize=480 
 + 
 +;[opus] 
 +;type=opus 
 +;max_playback_rate=8000 
 +;fec=no 
 +;packet_loss=10 
 +;complexity=10 
 +;max_bandwidth=48000 
 +;bitrate=auto 
 +;application=voip 
 +;cbr=no 
 +;dtx=no 
 + 
 +[plc] 
 +genericplc => true 
 +genericplc_on_equal_codecs => false 
 + 
 +[silk8] 
 +type = silk 
 +samprate = 8000 
 +maxbitrate = 10000 
 +fec = true 
 +packetloss_percentage = 10 
 +dtx = false 
 + 
 +[silk12] 
 +type = silk 
 +samprate = 12000 
 +maxbitrate = 12000 
 +fec = true 
 +packetloss_percentage = 10 
 +dtx = false 
 + 
 +[silk16] 
 +type = silk 
 +samprate = 16000 
 +maxbitrate = 20000 
 +fec = true 
 +packetloss_percentage = 10 
 +dtx = false 
 + 
 +[silk24] 
 +type = silk 
 +samprate = 24000 
 +maxbitrate = 30000 
 +fec = true 
 +packetloss_percentage = 10 
 +dtx = false 
 + 
 +[speex] 
 +vbr => true 
 +quality =>
 +complexity =>
 +enhancement => true 
 +vad => true 
 +abr =>
 +vbr_quality =>
 +dtx => false 
 +experimental_rtcp_feedback => false 
 +preprocess => false 
 +pp_vad => false 
 +pp_agc => false 
 +pp_agc_level => 8000 
 +pp_denoise => false 
 +pp_dereverb => false 
 +pp_dereverb_decay => 0.4 
 +pp_dereverb_level => 0.3 
 +</code> 
 + 
 +<code ini console.conf> 
 +[general] 
 + 
 +[default] 
 +active = no 
 +</code> 
 + 
 +<code ini extconfig.conf> 
 +[settings] 
 +</code>
  
 <code ini features.conf> <code ini features.conf>
Line 171: Line 307:
 [applicationmap] [applicationmap]
 </code> </code>
 +
 +<code ini hep.conf>
 +[general]
 +enabled = no
 +;capture_address = 1.2.3.4:1234
 +;capture_password = password
 +;capture_id = 1234
 +;uuid_type = call-id | channel
 +</code>
 +
 +<code ini http.conf>
 +[general]
 +servername = Puppybarks
 +enabled = yes
 +bindaddr = 0.0.0.0
 +bindport = 8088
 +tlsenable = no
 +;prefix=asterisk
 +;sessionlimit=100
 +;session_inactivity=30000
 +;session_keep_alive=15000
 +;enable_static=yes
 +;enable_status=no
 +;redirect = / /static/config/index.html
 +;tlsenable=yes
 +;tlsbindaddr=0.0.0.0:8089
 +;
 +;tlscertfile=
 +;tlsprivatekey=
 +; tlscipher=
 +; ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:
 +; ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:
 +; kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:
 +; ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:
 +; ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:
 +; DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:
 +; AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:
 +; AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:
 +; !EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA
 +; tlsdisablev1=yes
 +; tlsdisablev11=yes
 +; tlsdisablev12=yes
 +; tlsservercipherorder=yes
 +;[post_mappings]
 +;uploads = /var/lib/asterisk/uploads/
 +</code>
 +
 +<code ini modules.conf>
 +[modules]
 +autoload=yes
 +</code>
 +
 +<code ini prometheus.conf>
 +[general]
 +enabled                 = yes
 +core_metrics_enabled    = yes
 +uri                     = metrics
 +</code>
 +
 +===== pjsip.conf =====
 +
 +It was at this point that I gave up because the file is approximately three bibles long and simultaneously contains every example known to humanity and yet no information I'm capable of parsing and retaining. I'll come back to this later.
 +
 +====== Dialplan notes ======
 +
 +===== Trunk configuration =====
 +
 +A&A SIP trunks don't seem to indicate the incoming number, or maybe I configured the trunks on A&A's end wrongly. The solution is simply to specify a contact header, so I have devised the following internal dialplan for inbound trunks
 +
 +8 44 1382 00 339
 +
 +Where 8 is the incoming number prefix, 44 is the country-code, 1382 is the area code of the line, 00 is the provider number, and 339 is the last few digits.
 +
 +Provider numbers are as follows
 +
 +00 - A&A VoIP
 +
 +01 - Voipfone
 +
 +02 - sipgate
 +
 +03 - Twilio
 +
 +99 - SIPBroker
  
  
Navigation
  • Home