diff options
Diffstat (limited to '1.2-netsec/configs')
47 files changed, 5358 insertions, 0 deletions
diff --git a/1.2-netsec/configs/adsi.conf.sample b/1.2-netsec/configs/adsi.conf.sample new file mode 100644 index 000000000..0f36f80da --- /dev/null +++ b/1.2-netsec/configs/adsi.conf.sample @@ -0,0 +1,8 @@ +; +; Sample ADSI Configuration file +; +[intro] +alignment = center +greeting => Welcome to the +greeting => Asterisk +greeting => Open Source PBX diff --git a/1.2-netsec/configs/adtranvofr.conf.sample b/1.2-netsec/configs/adtranvofr.conf.sample new file mode 100644 index 000000000..dc7bcfc7c --- /dev/null +++ b/1.2-netsec/configs/adtranvofr.conf.sample @@ -0,0 +1,39 @@ +; +; Voice over Frame Relay (Adtran style) +; +; Configuration file + +[interfaces] +; +; Default language +; +;language=en +; +; Lines for which we are the user termination. They accept incoming +; and outgoing calls. We use the default context on the first 8 lines +; used by internal phones. +; +context=default +;user => voice00 +;user => voice01 +;user => voice02 +;user => voice03 +;user => voice04 +;user => voice05 +;user => voice06 +;user => voice07 +; Calls on 16 and 17 come from the outside world, so they get +; a little bit special treatment +context=remote +;user => voice16 +;user => voice17 +; +; Next we have lines which we only accept calls on, and typically +; do not send outgoing calls on (i.e. these are where we are the +; network termination) +; +;network => voice08 +;network => voice09 +;network => voice10 +;network => voice11 +;network => voice12 diff --git a/1.2-netsec/configs/agents.conf.sample b/1.2-netsec/configs/agents.conf.sample new file mode 100644 index 000000000..c47100b18 --- /dev/null +++ b/1.2-netsec/configs/agents.conf.sample @@ -0,0 +1,80 @@ +[general] +; +; Define whether callbacklogins should be stored in astdb for +; persistence. Persistent logins will be reloaded after +; Asterisk restarts. +; +persistentagents=yes +; +; Agent configuration +; +; +[agents] +; +; Define autologoff times if appropriate. This is how long +; the phone has to ring with no answer before the agent is +; automatically logged off (in seconds) +; +;autologoff=15 +; +; Define ackcall to require an acknowledgement by '#' when +; an agent logs in using agentcallbacklogin. Default is "no". +; +;ackcall=no +; +; Define wrapuptime. This is the minimum amount of time when +; after disconnecting before the caller can receive a new call +; note this is in milliseconds. +; +;wrapuptime=5000 +; +; Define the default musiconhold for agents +; musiconhold => music_class +; +;musiconhold => default +; +; Define updatecdr. This is whether or not to change the source +; channel in the CDR record for this call to agent/agent_id so +; that we know which agent generates the call +; +;updatecdr=no +; +; Group memberships for agents (may change in mid-file) +; +;group=3 +;group=1,2 +;group= +; +; -------------------------------------------------- +; This section is devoted to recording agent's calls +; The keywords are global to the chan_agent channel driver +; +; Enable recording calls addressed to agents. It's turned off by default. +;recordagentcalls=yes +; +; The format to be used to record the calls: wav, gsm, wav49. +; By default its "wav". +;recordformat=gsm +; +; Insert into CDR userfield a name of the the created recording +; By default it's turned off. +;createlink=yes +; +; The text to be added to the name of the recording. Allows forming a url link. +;urlprefix=http://localhost/calls/ +; +; The optional directory to save the conversations in. The default is +; /var/spool/asterisk/monitor +;savecallsin=/var/calls +; +; An optional custom beep sound file to play to always-connected agents. +;custom_beep=beep +; +; -------------------------------------------------- +; +; This section contains the agent definitions, in the form: +; +; agent => agentid,agentpassword,name +; +;agent => 1001,4321,Mark Spencer +;agent => 1002,4321,Will Meadows diff --git a/1.2-netsec/configs/alarmreceiver.conf.sample b/1.2-netsec/configs/alarmreceiver.conf.sample new file mode 100644 index 000000000..bf767dea3 --- /dev/null +++ b/1.2-netsec/configs/alarmreceiver.conf.sample @@ -0,0 +1,80 @@ +; +; alarmreceiver.conf +; +; Sample configuration file for the Asterisk alarm receiver application. +; + + +[general] + +; +; Specify a timestamp format for the metadata section of the event files +; Default is %a %b %d, %Y @ %H:%M:%S %Z + +timestampformat = %a %b %d, %Y @ %H:%M:%S %Z + +; +; Specify a command to execute when the caller hangs up +; +; Default is none +; + +;eventcmd = yourprogram -yourargs ... + +; +; Specify a spool directory for the event files. This setting is required +; if you want the app to be useful. Event files written to the spool +; directory will be of the template event-XXXXXX, where XXXXXX is a random +; and unique alphanumeric string. +; +; Default is none, and the events will be dropped on the floor. +; + +eventspooldir = /tmp + +; +; The alarmreceiver app can either log the events one-at-a-time to individual +; files in the spool directory, or it can store them until the caller +; disconnects and write them all to one file. +; +; The default setting for logindividualevents is no. +; + +logindividualevents = no + +; +; The timeout for receiving the first DTMF digit is adjustable from 1000 msec. +; to 10000 msec. The default is 2000 msec. Note: if you wish to test the +; receiver by entering digits manually, set this to a reasonable time out +; like 10000 milliseconds. + +fdtimeout = 2000 + +; +; The timeout for receiving subsequent DTMF digits is adjustable from +; 110 msec. to 4000 msec. The default is 200 msec. Note: if you wish to test +; the receiver by entering digits manually, set this to a reasonable time out +; like 4000 milliseconds. +; + +sdtimeout = 200 + +; +; The loudness of the ACK and Kissoff tones is adjustable from 100 to 8192. +; The default is 8192. This shouldn't need to be messed with, but is included +; just in case there are problems with signal levels. +; + +loudness = 8192 + +; +; The db-family setting allows the user to capture statistics on the number of +; calls, and the errors the alarm receiver sees. The default is for no +; db-family name to be defined and the database logging to be turned off. +; + +;db-family = yourfamily: + +; +; End of alarmreceiver.conf +; diff --git a/1.2-netsec/configs/alsa.conf.sample b/1.2-netsec/configs/alsa.conf.sample new file mode 100644 index 000000000..98819250b --- /dev/null +++ b/1.2-netsec/configs/alsa.conf.sample @@ -0,0 +1,31 @@ +; +; Open Sound System Console Driver Configuration File +; +[general] +; +; Automatically answer incoming calls on the console? Choose yes if +; for example you want to use this as an intercom. +; +autoanswer=yes +; +; Default context (is overridden with @context syntax) +; +context=local +; +; Default extension to call +; +extension=s +; +; Default language +; +;language=en +; +; Silence supression can be enabled when sound is over a certain threshold. +; The value for the threshold should probably be between 500 and 2000 or so, +; but your mileage may vary. Use the echo test to evaluate the best setting. +;silencesuppression = yes +;silencethreshold = 1000 +; +; To set which ALSA device to use, change this parameter +;input_device=hw:0,0 +;output_device=default diff --git a/1.2-netsec/configs/asterisk.adsi b/1.2-netsec/configs/asterisk.adsi new file mode 100644 index 000000000..a275502ac --- /dev/null +++ b/1.2-netsec/configs/asterisk.adsi @@ -0,0 +1,159 @@ +; +; Asterisk default ADSI script +; +; +; Begin with the preamble requirements +; +DESCRIPTION "Asterisk PBX" ; Name of vendor +VERSION 0x00 ; Version of stuff +;SECURITY "_AST" ; Security code +SECURITY 0X9BDBF7AC ; Security code +FDN 0x0000000F ; Descriptor number + +; +; Flags +; +FLAG "nocallwaiting" + +; +; Predefined strings +; +DISPLAY "titles" IS "** Asterisk PBX **" +DISPLAY "talkingto" IS "Call active." JUSTIFY LEFT +DISPLAY "callname" IS "$Call1p" JUSTIFY LEFT +DISPLAY "callnum" IS "$Call1s" JUSTIFY LEFT +DISPLAY "incoming" IS "Incoming call!" JUSTIFY LEFT +DISPLAY "ringing" IS "Calling... " JUSTIFY LEFT +DISPLAY "callended" IS "Call ended." JUSTIFY LEFT +DISPLAY "missedcall" IS "Missed call." JUSTIFY LEFT +DISPLAY "busy" IS "Busy." JUSTIFY LEFT +DISPLAY "reorder" IS "Reorder." JUSTIFY LEFT +DISPLAY "cwdisabled" IS "Callwait disabled" +DISPLAY "empty" IS "asdf" + +; +; Begin soft key definitions +; +KEY "callfwd" IS "CallFwd" OR "Call Forward" + OFFHOOK + VOICEMODE + WAITDIALTONE + SENDDTMF "*60" + GOTO "offHook" +ENDKEY + +KEY "vmail_OH" IS "VMail" OR "Voicemail" + OFFHOOK + VOICEMODE + WAITDIALTONE + SENDDTMF "8500" +ENDKEY + +KEY "vmail" IS "VMail" OR "Voicemail" + SENDDTMF "8500" +ENDKEY + +KEY "backspace" IS "BackSpc" OR "Backspace" + BACKSPACE +ENDKEY + +KEY "cwdisable" IS "CWDsble" OR "Disable Call Wait" + SENDDTMF "*70" + SETFLAG "nocallwaiting" + SHOWDISPLAY "cwdisabled" AT 4 + TIMERCLEAR + TIMERSTART 1 +ENDKEY + +KEY "cidblock" IS "CIDBlk" OR "Block Callerid" + SENDDTMF "*67" + SETFLAG "nocallwaiting" +ENDKEY + +; +; Begin main subroutine +; + +SUB "main" IS + IFEVENT NEARANSWER THEN + CLEAR + SHOWDISPLAY "titles" AT 1 NOUPDATE + SHOWDISPLAY "talkingto" AT 2 NOUPDATE + SHOWDISPLAY "callname" AT 3 + SHOWDISPLAY "callnum" AT 4 + GOTO "stableCall" + ENDIF + IFEVENT OFFHOOK THEN + CLEAR + CLEARFLAG "nocallwaiting" + CLEARDISPLAY + SHOWDISPLAY "titles" AT 1 + SHOWKEYS "vmail" + SHOWKEYS "cidblock" + SHOWKEYS "cwdisable" UNLESS "nocallwaiting" + GOTO "offHook" + ENDIF + IFEVENT IDLE THEN + CLEAR + SHOWDISPLAY "titles" AT 1 + SHOWKEYS "vmail_OH" + ENDIF + IFEVENT CALLERID THEN + CLEAR +; SHOWDISPLAY "titles" AT 1 NOUPDATE +; SHOWDISPLAY "incoming" AT 2 NOUPDATE + SHOWDISPLAY "callname" AT 3 NOUPDATE + SHOWDISPLAY "callnum" AT 4 + ENDIF + IFEVENT RING THEN + CLEAR + SHOWDISPLAY "titles" AT 1 NOUPDATE + SHOWDISPLAY "incoming" AT 2 + ENDIF + IFEVENT ENDOFRING THEN + SHOWDISPLAY "missedcall" AT 2 + CLEAR + SHOWDISPLAY "titles" AT 1 + SHOWKEYS "vmail_OH" + ENDIF + IFEVENT TIMER THEN + CLEAR + SHOWDISPLAY "empty" AT 4 + ENDIF +ENDSUB + +SUB "offHook" IS + IFEVENT FARRING THEN + CLEAR + SHOWDISPLAY "titles" AT 1 NOUPDATE + SHOWDISPLAY "ringing" AT 2 NOUPDATE + SHOWDISPLAY "callname" at 3 NOUPDATE + SHOWDISPLAY "callnum" at 4 + ENDIF + IFEVENT FARANSWER THEN + CLEAR + SHOWDISPLAY "talkingto" AT 2 + GOTO "stableCall" + ENDIF + IFEVENT BUSY THEN + CLEAR + SHOWDISPLAY "titles" AT 1 NOUPDATE + SHOWDISPLAY "busy" AT 2 NOUPDATE + SHOWDISPLAY "callname" at 3 NOUPDATE + SHOWDISPLAY "callnum" at 4 + ENDIF + IFEVENT REORDER THEN + CLEAR + SHOWDISPLAY "titles" AT 1 NOUPDATE + SHOWDISPLAY "reorder" AT 2 NOUPDATE + SHOWDISPLAY "callname" at 3 NOUPDATE + SHOWDISPLAY "callnum" at 4 + ENDIF +ENDSUB + +SUB "stableCall" IS + IFEVENT REORDER THEN + SHOWDISPLAY "callended" AT 2 + ENDIF +ENDSUB + diff --git a/1.2-netsec/configs/cdr.conf.sample b/1.2-netsec/configs/cdr.conf.sample new file mode 100644 index 000000000..331b6ed9a --- /dev/null +++ b/1.2-netsec/configs/cdr.conf.sample @@ -0,0 +1,51 @@ +; +; Asterisk Call Detail Record engine configuration +; +; CDR is Call Detail Record, which provides logging services via a variety of +; pluggable backend modules. Detailed call information can be recorded to +; databases, files, etc. Useful for billing, fraud prevention, compliance with +; Sarbanes-Oxley aka The Enron Act, QOS evaluations, and more. +; + +[general] + +; Define whether or not to use CDR logging. Setting this to "no" will override +; any loading of backend CDR modules. Default is "yes". +;enable=yes + +; Define the CDR batch mode, where instead of posting the CDR at the end of +; every call, the data will be stored in a buffer to help alleviate load on the +; asterisk server. Default is "no". +; +; WARNING WARNING WARNING +; Use of batch mode may result in data loss after unsafe asterisk termination +; ie. software crash, power failure, kill -9, etc. +; WARNING WARNING WARNING +; +;batch=no + +; Define the maximum number of CDRs to accumulate in the buffer before posting +; them to the backend engines. 'batch' must be set to 'yes'. Default is 100. +;size=100 + +; Define the maximum time to accumulate CDRs in the buffer before posting them +; to the backend engines. If this time limit is reached, then it will post the +; records, regardless of the value defined for 'size'. 'batch' must be set to +; 'yes'. Note that time is in seconds. Default is 300 (5 minutes). +;time=300 + +; The CDR engine uses the internal asterisk scheduler to determine when to post +; records. Posting can either occure inside the scheduler thread, or a new +; thread can be spawned for the submission of every batch. For small batches, +; it might be acceptable to just use the scheduler thread, so set this to "yes". +; For large batches, say anything over size=10, a new thread is recommended, so +; set this to "no". Default is "no". +;scheduleronly=no + +; When shutting down asterisk, you can block until the CDRs are submitted. If +; you don't, then data will likely be lost. You can always check the size of +; the CDR batch buffer with the CLI "cdr status" command. To enable blocking on +; submission of CDR data during asterisk shutdown, set this to "yes". Default +; is "yes". +;safeshutdown=yes + diff --git a/1.2-netsec/configs/cdr_custom.conf.sample b/1.2-netsec/configs/cdr_custom.conf.sample new file mode 100644 index 000000000..4af17c37b --- /dev/null +++ b/1.2-netsec/configs/cdr_custom.conf.sample @@ -0,0 +1,6 @@ +; +; Mappings for custom config file +; +[mappings] +Master.csv => "${CDR(clid)}","${CDR(src)}","${CDR(dst)}","${CDR(dcontext)}","${CDR(channel)}","${CDR(dstchannel)}","${CDR(lastapp)}","${CDR(lastdata)}","${CDR(start)}","${CDR(answer)}","${CDR(end)}","${CDR(duration)}","${CDR(billsec)}","${CDR(disposition)}","${CDR(amaflags)}","${CDR(accountcode)}","${CDR(uniqueid)}","${CDR(userfield)}" + diff --git a/1.2-netsec/configs/cdr_manager.conf.sample b/1.2-netsec/configs/cdr_manager.conf.sample new file mode 100644 index 000000000..1d7984ba4 --- /dev/null +++ b/1.2-netsec/configs/cdr_manager.conf.sample @@ -0,0 +1,6 @@ +; +; Asterisk Call Management CDR +; +[general] +enabled = no + diff --git a/1.2-netsec/configs/cdr_odbc.conf.sample b/1.2-netsec/configs/cdr_odbc.conf.sample new file mode 100644 index 000000000..6245e37eb --- /dev/null +++ b/1.2-netsec/configs/cdr_odbc.conf.sample @@ -0,0 +1,12 @@ +; +; cdr_odbc.conf +; + +;[global] +;dsn=MySQL-test +;username=username +;password=password +;loguniqueid=yes +;dispositionstring=yes +;table=cdr ;"cdr" is default table name +;usegmtime=no ; set to "yes" to log in GMT diff --git a/1.2-netsec/configs/cdr_pgsql.conf.sample b/1.2-netsec/configs/cdr_pgsql.conf.sample new file mode 100644 index 000000000..0784c7b08 --- /dev/null +++ b/1.2-netsec/configs/cdr_pgsql.conf.sample @@ -0,0 +1,9 @@ +; Sample Asterisk config file for CDR logging to PostgresSQL + +[global] +;hostname=localhost +;port=5432 +;dbname=asterisk +;password=password +;user=postgres +;table=cdr ;SQL table where CDRs will be inserted diff --git a/1.2-netsec/configs/cdr_tds.conf.sample b/1.2-netsec/configs/cdr_tds.conf.sample new file mode 100644 index 000000000..9fffec099 --- /dev/null +++ b/1.2-netsec/configs/cdr_tds.conf.sample @@ -0,0 +1,9 @@ +; Sample Asterisk config file for CDR logging to FreeTDS + +;[global] +;hostname=fs.malico.loc +;port=1433 +;dbname=MalicoHN +;user=mangUsr +;password= +;charset=BIG5 diff --git a/1.2-netsec/configs/codecs.conf.sample b/1.2-netsec/configs/codecs.conf.sample new file mode 100644 index 000000000..c8caeab60 --- /dev/null +++ b/1.2-netsec/configs/codecs.conf.sample @@ -0,0 +1,65 @@ +[speex] +; CBR encoding quality [0..10] +; used only when vbr = false +quality => 3 + +; codec complexity [0..10] +; tradeoff between cpu/quality +complexity => 2 + +; perceptual enhancement [true / false] +; improves clarity of decoded speech +enhancement => true + +; voice activity detection [true / false] +; reduces bitrate when no voice detected, used only for CBR +; (implicit in VBR/ABR) +vad => true + +; variable bit rate [true / false] +; uses bit rate proportionate to voice complexity +vbr => true + +; available bit rate [bps, 0 = off] +; encoding quality modulated to match this target bit rate +; not recommended with dtx or pp_vad - may cause bandwidth spikes +abr => 0 + +; VBR encoding quality [0-10] +; floating-point values allowed +vbr_quality => 4 + +; discontinuous transmission [true / false] +; stops transmitting completely when silence is detected +; pp_vad is far more effective but more CPU intensive +dtx => false + +; preprocessor configuration +; these options only affect Speex v1.1.8 or newer + +; enable preprocessor [true / false] +; allows dsp functionality below but incurs CPU overhead +preprocess => false + +; preproc voice activity detection [true / false] +; more advanced equivalent of DTX, based on voice frequencies +pp_vad => false + +; preproc automatic gain control [true / false] +pp_agc => false +pp_agc_level => 8000 + +; preproc denoiser [true / false] +pp_denoise => false + +; preproc dereverb [true / false] +pp_dereverb => false +pp_dereverb_decay => 0.4 +pp_dereverb_level => 0.3 + + +[plc] +; for all codecs which do not support native PLC +; this determines whether to perform generic PLC +; there is a minor performance penalty for this +genericplc => true diff --git a/1.2-netsec/configs/dnsmgr.conf.sample b/1.2-netsec/configs/dnsmgr.conf.sample new file mode 100644 index 000000000..e34dbcf0a --- /dev/null +++ b/1.2-netsec/configs/dnsmgr.conf.sample @@ -0,0 +1,5 @@ +[general] +;enable=yes ; enable creation of managed DNS lookups + ; default is 'no' +;refreshinterval=1200 ; refresh managed DNS lookups every <n> seconds + ; default is 300 (5 minutes)
\ No newline at end of file diff --git a/1.2-netsec/configs/dundi.conf.sample b/1.2-netsec/configs/dundi.conf.sample new file mode 100644 index 000000000..a3c8c77d9 --- /dev/null +++ b/1.2-netsec/configs/dundi.conf.sample @@ -0,0 +1,239 @@ +; +; DUNDi configuration file +; +; For more information about DUNDi, see http://www.dundi.com +; +; +[general] +; +; The "general" section contains general parameters relating +; to the operation of the dundi client and server. +; +; The first part should be your complete contact information +; should someone else in your peer group need to contact you. +; +;department=Your Department +;organization=Your Company, Inc. +;locality=Your City +;stateprov=ST +;country=US +;email=your@email.com +;phone=+12565551212 +; +; +; Specify bind address and port number. Default is +; 4520 +; +;bindaddr=0.0.0.0 +;port=4520 +; +; Our entity identifier (Should generally be the MAC address of the +; machine it's running on. Defaults to the first eth address, but you +; can override it here, as long as you set it to the MAC of *something* +; you own!) +; +;entityid=00:07:E9:3B:76:60 +; +; Peers shall cache our query responses for the specified time, +; given in seconds. Default is 3600. +; +;cachetime=3600 +; +; This defines the max depth in which to search the DUNDi system. +; Note that the maximum time that we will wait for a response is +; (2000 + 200 * ttl) ms. +; +ttl=32 +; +; If we don't get ACK to our DPDISCOVER within 2000ms, and autokill is set +; to yes, then we cancel the whole thing (that's enough time for one +; retransmission only). This is used to keep things from stalling for a long +; time for a host that is not available, but would be ill advised for bad +; connections. In addition to 'yes' or 'no' you can also specify a number +; of milliseconds. See 'qualify' for individual peers to turn on for just +; a specific peer. +; +autokill=yes +; +; pbx_dundi creates a rotating key called "secret", under the family +; 'secretpath'. The default family is dundi (resulting in +; the key being held at dundi/secret). +; +;secretpath=dundi +; +; The 'storehistory' option (also changeable at runtime with +; 'dundi store history' and 'dundi no store history') will +; cause the DUNDi engine to keep track of the last several +; queries and the amount of time each query took to execute +; for the purpose of tracking slow nodes. This option is +; off by default due to performance impacts. +; +;storehistory=yes + +[mappings] +; +; The "mappings" section maps DUNDi contexts +; to contexts on the local asterisk system. Remember +; that numbers that are made available under the e164 +; DUNDi context are regulated by the DUNDi General Peering +; Agreement (GPA) if you are a member of the DUNDi E.164 +; Peering System. +; +; dundi_context => local_context,weight,tech,dest[,options]] +; +; 'dundi_context' is the name of the context being requested +; within the DUNDi request +; +; 'local_context' is the name of the context on the local system +; in which numbers can be looked up for which responses shall be given. +; +; 'weight' is the weight to use for the responses provided from this +; mapping. The number must be >= 0 and < 60000. Since it is totally +; valid to receive multiple reponses to a query, responses received +; with a lower weight are tried first. Note that the weight has a +; special meaning in the e164 context - see the GPA for more details. +; +; 'tech' is the technology to use (IAX, SIP, H323) +; +; 'dest' is the destination to supply for reaching that number. The +; following variables can be used in the destination string and will +; be automatically substituted: +; ${NUMBER}: The number being requested +; ${IPADDR}: The IP address to connect to +; ${SECRET}: The current rotating secret key to be used +; +; Further options may include: +; +; nounsolicited: No unsolicited calls of any type permitted via this +; route +; nocomunsolicit: No commercial unsolicited calls permitted via +; this route +; residential: This number is known to be a residence +; commercial: This number is known to be a business +; mobile: This number is known to be a mobile phone +; nocomunsolicit: No commercial unsolicited calls permitted via +; this route +; nopartial: Do not search for partial matches +; +; There *must* exist an entry in mappings for DUNDi to respond +; to any request, although it may be empty. +; +;e164 => dundi-e164-canonical,0,IAX2,dundi:${SECRET}@${IPADDR}/${NUMBER},nounsolicited,nocomunsolicit,nopartial +;e164 => dundi-e164-customers,100,IAX2,dundi:${SECRET}@${IPADDR}/${NUMBER},nounsolicited,nocomunsolicit,nopartial +;e164 => dundi-e164-via-pstn,400,IAX2,dundi:${SECRET}@${IPADDR}/${NUMBER},nounsolicited,nocomunsolicit,nopartial + +;digexten => default,0,IAX2,guest@lappy/${NUMBER} +;asdf => + + +; +; +; The remaining sections represent the peers +; that we fundamentally trust. The section name +; represents the name and optionally at a specific +; DUNDi context if you want the trust to be established +; for only a specific DUNDi context. +; +; inkey - What key they will be authenticating to us with +; +; outkey - What key we use to authenticate to them +; +; host - What their host is +; +; order - What search order to use. May be 'primary', 'secondary', +; 'tertiary' or 'quartiary'. In large systems, it is beneficial +; to only query one up-stream host in order to maximize caching +; value. Adding one with primary and one with secondary gives you +; redundancy without sacraficing performance. +; +; include - Includes this peer when searching a particular context +; for lookup (set "all" to perform all lookups with that +; host. This is also the context in which peers are permitted +; to precache. +; +; noinclude - Disincludes this peer when searching a particular context +; for lookup (set "all" to perform no lookups with that +; host. +; +; permit - Permits this peer to search a given DUNDi context on +; the local system. Set "all" to permit this host to +; lookup all contexts. This is also a context for which +; we will create/forward PRECACHE commands. +; +; deny - Denies this peer to search a given DUNDi context on +; the local system. Set "all" to deny this host to +; lookup all contexts. +; +; model - inbound, outbound, or symmetric for whether we receive +; requests only, transmit requests only, or do both. +; +; precache - Utilize/Permit precaching with this peer (to pre +; cache means to provide an answer when no request +; was made and is used so that machines with few +; routes can push those routes up a to a higher level). +; outgoing means we send precache routes to this peer, +; incoming means we permit this peer to send us +; precache routes. symmetric means we do both. +; +; Note: You cannot mix symmetric/outbound model with symmetric/inbound +; precache, nor can you mix symmetric/inbound model with symmetric/outbound +; precache. +; +; +; The '*' peer is special and matches an unspecified entity +; + +; +; Sample Primary e164 DUNDi peer +; +;[00:50:8B:F3:75:BB] +;model = symmetric +;host = 64.215.96.114 +;inkey = digium +;outkey = misery +;include = e164 +;permit = e164 +;qualify = yes + +; +; Sample Secondary e164 DUNDi peer +; +;[00:A0:C9:96:92:84] +;model = symmetric +;host = misery.digium.com +;inkey = misery +;outkey = ourkey +;include = e164 +;permit = e164 +;qualify = yes +;order = secondary + +; +; Sample "push mode" downstream host +; +;[00:0C:76:96:75:28] +;model = inbound +;host = dynamic +;precache = inbound +;inkey = littleguy +;outkey = ourkey +;include = e164 ; In this case used only for precaching +;permit = e164 +;qualify = yes + +; +; Sample "push mode" upstream host +; +;[00:07:E9:3B:76:60] +;model = outbound +;precache = outbound +;host = 216.207.245.34 +;register = yes +;inkey = dhcp34 +;permit = all ; In this case used only for precaching +;include = all +;qualify = yes +;outkey=foo + +;[*] +; diff --git a/1.2-netsec/configs/enum.conf.sample b/1.2-netsec/configs/enum.conf.sample new file mode 100644 index 000000000..8d7054a24 --- /dev/null +++ b/1.2-netsec/configs/enum.conf.sample @@ -0,0 +1,22 @@ +; +; ENUM Configuration for resolving phone numbers over DNS +; +; Sample config for Asterisk +; This file is reloaded at "reload enum" in the CLI +; +[general] +; +; The search list for domains may be customized. Domains are searched +; in the order they are listed here. +; +search => e164.arpa +; +; If you'd like to use the E.164.org public ENUM registery in addition +; to the official e164.arpa one, uncomment the following line +; +;search => e164.org +; +; As there are more H323 drivers available you have to select to which +; drive a H323 URI will map. Default is "H323". +; +h323driver => H323 diff --git a/1.2-netsec/configs/extconfig.conf.sample b/1.2-netsec/configs/extconfig.conf.sample new file mode 100644 index 000000000..1cf923fb3 --- /dev/null +++ b/1.2-netsec/configs/extconfig.conf.sample @@ -0,0 +1,51 @@ +; +; Static and realtime external configuration +; engine configuration +; +; Please read doc/README.extconfig for basic table +; formatting information. +; +[settings] +; +; Static configuration files: +; +; file.conf => driver,database[,table] +; +; maps a particular configuration file to the given +; database driver, database and table (or uses the +; name of the file as the table if not specified) +; +;uncomment to load queues.conf via the odbc engine. +; +;queues.conf => odbc,asterisk,ast_config +; +; The following files CANNOT be loaded from Realtime storage: +; asterisk.conf +; extconfig.conf (this file) +; logger.conf +; +; Additionally, the following files cannot be loaded from +; Realtime storage unless the storage driver is loaded +; early using 'preload' statements in modules.conf: +; manager.conf +; cdr.conf +; rtp.conf +; +; +; Realtime configuration engine +; +; maps a particular family of realtime +; configuration to a given database driver, +; database and table (or uses the name of +; the family if the table is not specified +; +;example => odbc,asterisk,alttable +;iaxusers => odbc,asterisk +;iaxpeers => odbc,asterisk +;sipusers => odbc,asterisk +;sippeers => odbc,asterisk +;voicemail => odbc,asterisk +;extensions => odbc,asterisk +;queues => odbc,asterisk +;queue_members => odbc,asterisk + diff --git a/1.2-netsec/configs/extensions.ael.sample b/1.2-netsec/configs/extensions.ael.sample new file mode 100644 index 000000000..87fe58039 --- /dev/null +++ b/1.2-netsec/configs/extensions.ael.sample @@ -0,0 +1,62 @@ +// +// Example AEL config file +// + +macro std-exten-ael( ext , dev ) { + Dial(${dev}/${ext},20); + switch(${DIALSTATUS}) { + case BUSY: + Voicemail(b${ext}); + break; + default: + Voicemail(u${ext}); + }; + catch a { + VoiceMailMain(${ext}); + return; + }; +}; + +context ael-demo { + s => { + Wait(1); + Answer(); + TIMEOUT(digit)=5; + TIMEOUT(response)=10; +restart: + Background(demo-congrats); +instructions: + for (x=0; ${x} < 3; x=${x} + 1) { + Background(demo-instruct); + WaitExten(); + }; + }; + 2 => { + Background(demo-moreinfo); + goto s|instructions; + }; + 3 => { + LANGUAGE()=fr; + goto s|restart; + }; + 500 => { + Playback(demo-abouttotry); + Dial(IAX2/guest@misery.digium.com); + Playback(demo-nogo); + goto s|instructions; + }; + 600 => { + Playback(demo-echotest); + Echo(); + Playback(demo-echodone); + goto s|instructions; + }; + _1234 => &std-exten-ael(${EXTEN}, "IAX2"); + # => { + Playback(demo-thanks); + Hangup(); + }; + t => jump #; + i => Playback(invalid); +}; + diff --git a/1.2-netsec/configs/extensions.conf.sample b/1.2-netsec/configs/extensions.conf.sample new file mode 100644 index 000000000..d773cbbc3 --- /dev/null +++ b/1.2-netsec/configs/extensions.conf.sample @@ -0,0 +1,492 @@ +; +; Static extension configuration file, used by +; the pbx_config module. This is where you configure all your +; inbound and outbound calls in Asterisk. +; +; This configuration file is reloaded +; - With the "extensions reload" command in the CLI +; - With the "reload" command (that reloads everything) in the CLI + +; +; The "General" category is for certain variables. +; +[general] +; +; If static is set to no, or omitted, then the pbx_config will rewrite +; this file when extensions are modified. Remember that all comments +; made in the file will be lost when that happens. +; +; XXX Not yet implemented XXX +; +static=yes +; +; if static=yes and writeprotect=no, you can save dialplan by +; CLI command 'save dialplan' too +; +writeprotect=no +; +; If autofallthrough is set, then if an extension runs out of +; things to do, it will terminate the call with BUSY, CONGESTION +; or HANGUP depending on Asterisk's best guess (strongly recommended). +; +; If autofallthrough is not set, then if an extension runs out of +; things to do, asterisk will wait for a new extension to be dialed +; (this is the original behavior of Asterisk 1.0 and earlier). +; +autofallthrough=yes +; +; If clearglobalvars is set, global variables will be cleared +; and reparsed on an extensions reload, or Asterisk reload. +; +; If clearglobalvars is not set, then global variables will persist +; through reloads, and even if deleted from the extensions.conf or +; one if its included files, will remain set to the previous value. +; +clearglobalvars=no +; +; If priorityjumping is set to 'yes', then applications that support +; 'jumping' to a different priority based on the result of their operations +; will do so (this is backwards compatible behavior with pre-1.2 releases +; of Asterisk). Individual applications can also be requested to do this +; by passing a 'j' option in their arguments. +; +priorityjumping=no +; +; You can include other config files, use the #include command +; (without the ';'). Note that this is different from the "include" command +; that includes contexts within other contexts. The #include command works +; in all asterisk configuration files. +;#include "filename.conf" + +; The "Globals" category contains global variables that can be referenced +; in the dialplan with ${VARIABLE} or ${ENV(VARIABLE)} for Environmental +; variables, +; ${${VARIABLE}} or ${text${VARIABLE}} or any hybrid +; +[globals] +CONSOLE=Console/dsp ; Console interface for demo +;CONSOLE=Zap/1 +;CONSOLE=Phone/phone0 +IAXINFO=guest ; IAXtel username/password +;IAXINFO=myuser:mypass +TRUNK=Zap/g2 ; Trunk interface +; +; Note the 'g2' in the TRUNK variable above. It specifies which group (defined +; in zapata.conf) to dial, i.e. group 2, and how to choose a channel to use in +; the specified group. The four possible options are: +; +; g: select the lowest-numbered non-busy Zap channel +; (aka. ascending sequential hunt group). +; G: select the highest-numbered non-busy Zap channel +; (aka. descending sequential hunt group). +; r: use a round-robin search, starting at the next highest channel than last +; time (aka. ascending rotary hunt group). +; R: use a round-robin search, starting at the next lowest channel than last +; time (aka. descending rotary hunt group). +; +TRUNKMSD=1 ; MSD digits to strip (usually 1 or 0) +;TRUNK=IAX2/user:pass@provider + +; +; Any category other than "General" and "Globals" represent +; extension contexts, which are collections of extensions. +; +; Extension names may be numbers, letters, or combinations +; thereof. If an extension name is prefixed by a '_' +; character, it is interpreted as a pattern rather than a +; literal. In patterns, some characters have special meanings: +; +; X - any digit from 0-9 +; Z - any digit from 1-9 +; N - any digit from 2-9 +; [1235-9] - any digit in the brackets (in this example, 1,2,3,5,6,7,8,9) +; . - wildcard, matches anything remaining (e.g. _9011. matches +; anything starting with 9011 excluding 9011 itself) +; ! - wildcard, causes the matching process to complete as soon as +; it can unambiguously determine that no other matches are possible +; +; For example the extension _NXXXXXX would match normal 7 digit dialings, +; while _1NXXNXXXXXX would represent an area code plus phone number +; preceeded by a one. +; +; Each step of an extension is ordered by priority, which must +; always start with 1 to be considered a valid extension. The priority +; "next" or "n" means the previous priority plus one, regardless of whether +; the previous priority was associated with the current extension or not. +; The priority "same" or "s" means the same as the previously specified +; priority, again regardless of whether the previous entry was for the +; same extension. Priorities may be immediately followed by a plus sign +; and another integer to add that amount (most useful with 's' or 'n'). +; Priorities may then also have an alias, or label, in +; parenthesis after their name which can be used in goto situations +; +; Contexts contain several lines, one for each step of each +; extension, which can take one of two forms as listed below, +; with the first form being preferred. One may include another +; context in the current one as well, optionally with a +; date and time. Included contexts are included in the order +; they are listed. +; +;[context] +;exten => someexten,priority[+offset][(alias)],application(arg1,arg2,...) +;exten => someexten,priority[+offset][(alias)],application,arg1|arg2... +; +; Timing list for includes is +; +; <time range>|<days of week>|<days of month>|<months> +; +;include => daytime|9:00-17:00|mon-fri|*|* +; +; ignorepat can be used to instruct drivers to not cancel dialtone upon +; receipt of a particular pattern. The most commonly used example is +; of course '9' like this: +; +;ignorepat => 9 +; +; so that dialtone remains even after dialing a 9. +; + +; +; Sample entries for extensions.conf +; +; +[dundi-e164-canonical] +; +; List canonical entries here +; +;exten => 12564286000,1,Macro(std-exten,6000,IAX2/foo) +;exten => _125642860XX,1,Dial(IAX2/otherbox/${EXTEN:7}) + +[dundi-e164-customers] +; +; If you are an ITSP or Reseller, list your customers here. +; +;exten => _12564286000,1,Dial(SIP/customer1) +;exten => _12564286001,1,Dial(IAX2/customer2) + +[dundi-e164-via-pstn] +; +; If you are freely delivering calls to the PSTN, list them here +; +;exten => _1256428XXXX,1,Dial(Zap/g2/${EXTEN:7}) ; Expose all of 256-428 +;exten => _1256325XXXX,1,Dial(Zap/g2/${EXTEN:7}) ; Ditto for 256-325 + +[dundi-e164-local] +; +; Context to put your dundi IAX2 or SIP user in for +; full access +; +include => dundi-e164-canonical +include => dundi-e164-customers +include => dundi-e164-via-pstn + +[dundi-e164-switch] +; +; Just a wrapper for the switch +; +switch => DUNDi/e164 + +[dundi-e164-lookup] +; +; Locally to lookup, try looking for a local E.164 solution +; then try DUNDi if we don't have one. +; +include => dundi-e164-local +include => dundi-e164-switch +; +; DUNDi can also be implemented as a Macro instead of using +; the Local channel driver. +; +[macro-dundi-e164] +; +; ARG1 is the extension to Dial +; +exten => s,1,Goto(${ARG1},1) +include => dundi-e164-lookup + +; +; Here are the entries you need to participate in the IAXTEL +; call routing system. Most IAXTEL numbers begin with 1-700, but +; there are exceptions. For more information, and to sign +; up, please go to www.gnophone.com or www.iaxtel.com +; +[iaxtel700] +exten => _91700XXXXXXX,1,Dial(IAX2/${IAXINFO}@iaxtel.com/${EXTEN:1}@iaxtel) + +; +; The SWITCH statement permits a server to share the dialplain with +; another server. Use with care: Reciprocal switch statements are not +; allowed (e.g. both A -> B and B -> A), and the switched server needs +; to be on-line or else dialing can be severly delayed. +; +[iaxprovider] +;switch => IAX2/user:[key]@myserver/mycontext + +[trunkint] +; +; International long distance through trunk +; +exten => _9011.,1,Macro(dundi-e164,${EXTEN:4}) +exten => _9011.,n,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}}) + +[trunkld] +; +; Long distance context accessed through trunk +; +exten => _91NXXNXXXXXX,1,Macro(dundi-e164,${EXTEN:1}) +exten => _91NXXNXXXXXX,n,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}}) + +[trunklocal] +; +; Local seven-digit dialing accessed through trunk interface +; +exten => _9NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}}) + +[trunktollfree] +; +; Long distance context accessed through trunk interface +; +exten => _91800NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}}) +exten => _91888NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}}) +exten => _91877NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}}) +exten => _91866NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}}) + +[international] +; +; Master context for international long distance +; +ignorepat => 9 +include => longdistance +include => trunkint + +[longdistance] +; +; Master context for long distance +; +ignorepat => 9 +include => local +include => trunkld + +[local] +; +; Master context for local, toll-free, and iaxtel calls only +; +ignorepat => 9 +include => default +include => parkedcalls +include => trunklocal +include => iaxtel700 +include => trunktollfree +include => iaxprovider +; +; You can use an alternative switch type as well, to resolve +; extensions that are not known here, for example with remote +; IAX switching you transparently get access to the remote +; Asterisk PBX +; +; switch => IAX2/user:password@bigserver/local +; +; An "lswitch" is like a switch but is literal, in that +; variable substitution is not performed at load time +; but is passed to the switch directly (presumably to +; be substituted in the switch routine itself) +; +; lswitch => Loopback/12${EXTEN}@othercontext +; +; An "eswitch" is like a switch but the evaluation of +; variable substitution is performed at runtime before +; being passed to the switch routine. +; +; eswitch => IAX2/context@${CURSERVER} + +[macro-stdexten]; +; +; Standard extension macro: +; ${ARG1} - Extension (we could have used ${MACRO_EXTEN} here as well +; ${ARG2} - Device(s) to ring +; +exten => s,1,Dial(${ARG2},20) ; Ring the interface, 20 seconds maximum +exten => s,2,Goto(s-${DIALSTATUS},1) ; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER) + +exten => s-NOANSWER,1,Voicemail(u${ARG1}) ; If unavailable, send to voicemail w/ unavail announce +exten => s-NOANSWER,2,Goto(default,s,1) ; If they press #, return to start + +exten => s-BUSY,1,Voicemail(b${ARG1}) ; If busy, send to voicemail w/ busy announce +exten => s-BUSY,2,Goto(default,s,1) ; If they press #, return to start + +exten => _s-.,1,Goto(s-NOANSWER,1) ; Treat anything else as no answer + +exten => a,1,VoicemailMain(${ARG1}) ; If they press *, send the user into VoicemailMain + +[macro-stdPrivacyexten]; +; +; Standard extension macro: +; ${ARG1} - Extension (we could have used ${MACRO_EXTEN} here as well +; ${ARG2} - Device(s) to ring +; ${ARG3} - Optional DONTCALL context name to jump to (assumes the s,1 extension-priority) +; ${ARG4} - Optional TORTURE context name to jump to (assumes the s,1 extension-priority)` +; +exten => s,1,Dial(${ARG2},20|p) ; Ring the interface, 20 seconds maximum, call screening option (or use P for databased call screening) +exten => s,2,Goto(s-${DIALSTATUS},1) ; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER) + +exten => s-NOANSWER,1,Voicemail(u${ARG1}) ; If unavailable, send to voicemail w/ unavail announce +exten => s-NOANSWER,2,Goto(default,s,1) ; If they press #, return to start + +exten => s-BUSY,1,Voicemail(b${ARG1}) ; If busy, send to voicemail w/ busy announce +exten => s-BUSY,2,Goto(default,s,1) ; If they press #, return to start + +exten => s-DONTCALL,1,Goto(${ARG3},s,1) ; Callee chose to send this call to a polite "Don't call again" script. + +exten => s-TORTURE,1,Goto(${ARG4},s,1) ; Callee chose to send this call to a telemarketer torture script. + +exten => _s-.,1,Goto(s-NOANSWER,1) ; Treat anything else as no answer + +exten => a,1,VoicemailMain(${ARG1}) ; If they press *, send the user into VoicemailMain + +[demo] +; +; We start with what to do when a call first comes in. +; +exten => s,1,Wait,1 ; Wait a second, just for fun +exten => s,n,Answer ; Answer the line +exten => s,n,Set(TIMEOUT(digit)=5) ; Set Digit Timeout to 5 seconds +exten => s,n,Set(TIMEOUT(response)=10) ; Set Response Timeout to 10 seconds +exten => s,n(restart),BackGround(demo-congrats) ; Play a congratulatory message +exten => s,n(instruct),BackGround(demo-instruct) ; Play some instructions +exten => s,n,WaitExten ; Wait for an extension to be dialed. + +exten => 2,1,BackGround(demo-moreinfo) ; Give some more information. +exten => 2,n,Goto(s,instruct) + +exten => 3,1,Set(LANGUAGE()=fr) ; Set language to french +exten => 3,n,Goto(s,restart) ; Start with the congratulations + +exten => 1000,1,Goto(default,s,1) +; +; We also create an example user, 1234, who is on the console and has +; voicemail, etc. +; +exten => 1234,1,Playback(transfer,skip) ; "Please hold while..." + ; (but skip if channel is not up) +exten => 1234,n,Macro(stdexten,1234,${CONSOLE}) + +exten => 1235,1,Voicemail(u1234) ; Right to voicemail + +exten => 1236,1,Dial(Console/dsp) ; Ring forever +exten => 1236,n,Voicemail(u1234) ; Unless busy + +; +; # for when they're done with the demo +; +exten => #,1,Playback(demo-thanks) ; "Thanks for trying the demo" +exten => #,n,Hangup ; Hang them up. + +; +; A timeout and "invalid extension rule" +; +exten => t,1,Goto(#,1) ; If they take too long, give up +exten => i,1,Playback(invalid) ; "That's not valid, try again" + +; +; Create an extension, 500, for dialing the +; Asterisk demo. +; +exten => 500,1,Playback(demo-abouttotry); Let them know what's going on +exten => 500,n,Dial(IAX2/guest@misery.digium.com/s@default) ; Call the Asterisk demo +exten => 500,n,Playback(demo-nogo) ; Couldn't connect to the demo site +exten => 500,n,Goto(s,6) ; Return to the start over message. + +; +; Create an extension, 600, for evaulating echo latency. +; +exten => 600,1,Playback(demo-echotest) ; Let them know what's going on +exten => 600,n,Echo ; Do the echo test +exten => 600,n,Playback(demo-echodone) ; Let them know it's over +exten => 600,n,Goto(s,6) ; Start over + +; +; Give voicemail at extension 8500 +; +exten => 8500,1,VoicemailMain +exten => 8500,n,Goto(s,6) +; +; Here's what a phone entry would look like (IXJ for example) +; +;exten => 1265,1,Dial(Phone/phone0,15) +;exten => 1265,n,Goto(s,5) + +;[mainmenu] +; +; Example "main menu" context with submenu +; +;exten => s,1,Answer +;exten => s,n,Background(thanks) ; "Thanks for calling press 1 for sales, 2 for support, ..." +;exten => s,n,WaitExten +;exten => 1,1,Goto(submenu,s,1) +;exten => 2,1,Hangup +;include => default +; +;[submenu] +;exten => s,1,Ringing ; Make them comfortable with 2 seconds of ringback +;exten => s,n,Wait,2 +;exten => s,n,Background(submenuopts) ; "Thanks for calling the sales department. Press 1 for steve, 2 for..." +;exten => s,n,WaitExten +;exten => 1,1,Goto(default,steve,1) +;exten => 2,1,Goto(default,mark,2) + +[default] +; +; By default we include the demo. In a production system, you +; probably don't want to have the demo there. +; +include => demo + +; +; Extensions like the two below can be used for FWD, Nikotel, sipgate etc. +; Note that you must have a [sipprovider] section in sip.conf whereas +; the otherprovider.net example does not require such a peer definition +; +;exten => _41X.,1,Dial(SIP/${EXTEN:2}@sipprovider,,r) +;exten => _42X.,1,Dial(SIP/user:passwd@${EXTEN:2}@otherprovider.net,30,rT) + +; Real extensions would go here. Generally you want real extensions to be +; 4 or 5 digits long (although there is no such requirement) and start with a +; single digit that is fairly large (like 6 or 7) so that you have plenty of +; room to overlap extensions and menu options without conflict. You can alias +; them with names, too, and use global variables + +;exten => 6245,hint,SIP/Grandstream1&SIP/Xlite1,Joe Schmoe ; Channel hints for presence +;exten => 6245,1,Dial(SIP/Grandstream1,20,rt) ; permit transfer +;exten => 6245,n(dial),Dial(${HINT},20,rtT) ; Use hint as listed +;exten => 6245,n,Voicemail(u6245) ; Voicemail (unavailable) +;exten => 6245,s+1,Hangup ; s+1, same as n +;exten => 6245,dial+101,Voicemail(b6245) ; Voicemail (busy) +;exten => 6361,1,Dial(IAX2/JaneDoe,,rm) ; ring without time limit +;exten => 6389,1,Dial(MGCP/aaln/1@192.168.0.14) +;exten => 6394,1,Dial(Local/6275/n) ; this will dial ${MARK} + +;exten => 6275,1,Macro(stdexten,6275,${MARK}) ; assuming ${MARK} is something like Zap/2 +;exten => mark,1,Goto(6275|1) ; alias mark to 6275 +;exten => 6536,1,Macro(stdexten,6236,${WIL}) ; Ditto for wil +;exten => wil,1,Goto(6236|1) +; +; Some other handy things are an extension for checking voicemail via +; voicemailmain +; +;exten => 8500,1,VoicemailMain +;exten => 8500,n,Hangup +; +; Or a conference room (you'll need to edit meetme.conf to enable this room) +; +;exten => 8600,1,Meetme(1234) +; +; Or playing an announcement to the called party, as soon it answers +; +;exten = 8700,1,Dial(${MARK},30,A(/path/to/my/announcemsg)) +; +; For more information on applications, just type "show applications" at your +; friendly Asterisk CLI prompt. +; +; 'show application <command>' will show details of how you +; use that particular application in this file, the dial plan. +; diff --git a/1.2-netsec/configs/features.conf.sample b/1.2-netsec/configs/features.conf.sample new file mode 100644 index 000000000..346d65192 --- /dev/null +++ b/1.2-netsec/configs/features.conf.sample @@ -0,0 +1,32 @@ +; +; Sample Parking configuration +; + +[general] +parkext => 700 ; What ext. to dial to park +parkpos => 701-720 ; What extensions to park calls on +context => parkedcalls ; Which context parked calls are in +;parkingtime => 45 ; Number of seconds a call can be parked for + ; (default is 45 seconds) +;transferdigittimeout => 3 ; Number of seconds to wait between digits when transfering a call +;courtesytone = beep ; Sound file to play to the parked caller + ; when someone dials a parked call +;xfersound = beep ; to indicate an attended transfer is complete +;xferfailsound = beeperr ; to indicate a failed transfer +;adsipark = yes ; if you want ADSI parking announcements +;findslot => next ; Continue to the 'next' parking space. Defaults to 'first' available +;pickupexten = *8 ; Configure the pickup extension. Default is *8 +;featuredigittimeout = 500 ; Max time (ms) between digits for + ; feature activation. Default is 500 + + +[featuremap] +;blindxfer => #1 ; Blind transfer +;disconnect => *0 ; Disconnect +;automon => *1 ; One Touch Record +;atxfer => *2 ; Attended transfer + +[applicationmap] +;testfeature => #9,callee,Playback,tt-monkeys ;Play tt-monkeys to + ;callee if #9 was pressed + diff --git a/1.2-netsec/configs/festival.conf.sample b/1.2-netsec/configs/festival.conf.sample new file mode 100644 index 000000000..774f1a16c --- /dev/null +++ b/1.2-netsec/configs/festival.conf.sample @@ -0,0 +1,35 @@ +; +; Festival Configuration +; +[general] +; +; Host which runs the festival server (default : localhost); +; +;host=localhost +; +; Port on host where the festival server runs (default : 1314) +; +;port=1314 +; +; Use cache (yes, no - defaults to no) +; +;usecache=yes +; +; If usecache=yes, a directory to store waveform cache files. +; The cache is never cleared (yet), so you must take care of cleaning it +; yourself (just delete any or all files from the cache). +; THIS DIRECTORY *MUST* EXIST and must be writable from the asterisk process. +; Defaults to /tmp/ +; +;cachedir=/var/lib/asterisk/festivalcache/ +; +; Festival command to send to the server. +; Defaults to: (tts_textasterisk "%s" 'file)(quit)\n +; %s is replaced by the desired text to say. The command MUST end with a +; (quit) directive, or the cache handling mechanism will hang. Do not +; forget the \n at the end. +; +;festivalcommand=(tts_textasterisk "%s" 'file)(quit)\n +; +; + diff --git a/1.2-netsec/configs/iax.conf.sample b/1.2-netsec/configs/iax.conf.sample new file mode 100644 index 000000000..26d637d8d --- /dev/null +++ b/1.2-netsec/configs/iax.conf.sample @@ -0,0 +1,418 @@ + +; Inter-Asterisk eXchange driver definition +; +; This configuration is re-read at reload +; or with the CLI command +; reload chan_iax2.so +; +; General settings, like port number to bind to, and +; an option address (the default is to bind to all +; local addresses). +; +[general] +;bindport=4569 ; bindport and bindaddr may be specified +; ; NOTE: bindport must be specified BEFORE bindaddr +; ; or may be specified on a specific bindaddr if followed by +; ; colon and port (e.g. bindaddr=192.168.0.1:4569) +;bindaddr=192.168.0.1 ; more than once to bind to multiple +; ; addresses, but the first will be the +; ; default +; +; Set iaxcompat to yes if you plan to use layered switches or +; some other scenario which may cause some delay when doing a +; lookup in the dialplan. It incurs a small performance hit to +; enable it. This option causes Asterisk to spawn a separate thread +; when it receives an IAX DPREQ (Dialplan Request) instead of +; blocking while it waits for a response. +; +;iaxcompat=yes +; +; Disable UDP checksums (if nochecksums is set, then no checkums will +; be calculated/checked on systems supporting this feature) +; +;nochecksums=no +; +; +; For increased security against brute force password attacks +; enable "delayreject" which will delay the sending of authentication +; reject for REGREQ or AUTHREP if there is a password. +; +;delayreject=yes +; +; You may specify a global default AMA flag for iaxtel calls. It must be +; one of 'default', 'omit', 'billing', or 'documentation'. These flags +; are used in the generation of call detail records. +; +;amaflags=default +; +; You may specify a default account for Call Detail Records in addition +; to specifying on a per-user basis +; +;accountcode=lss0101 +; +; You may specify a global default language for users. +; Can be specified also on a per-user basis +; If omitted, will fallback to english +; +;language=en +; +; Specify bandwidth of low, medium, or high to control which codecs are used +; in general. +; +bandwidth=low +; +; You can also fine tune codecs here using "allow" and "disallow" clauses +; with specific codecs. Use "all" to represent all formats. +; +;allow=all ; same as bandwidth=high +;disallow=g723.1 ; Hm... Proprietary, don't use it... +disallow=lpc10 ; Icky sound quality... Mr. Roboto. +;allow=gsm ; Always allow GSM, it's cool :) +; + +; You can adjust several parameters relating to the jitter buffer. +; The jitter buffer's function is to compensate for varying +; network delay. +; +; There are presently two jitterbuffer implementations available for Asterisk +; and chan_iax2; the classic and the new, channel/application independent +; implementation. These are controlled at compile-time. The new jitterbuffer +; additionally has support for PLC which greatly improves quality as the +; jitterbuffer adapts size, and in compensating for lost packets. +; +; All the jitter buffer settings except dropcount are in milliseconds. +; The jitter buffer works for INCOMING audio - the outbound audio +; will be dejittered by the jitter buffer at the other end. +; +; jitterbuffer=yes|no: global default as to whether you want +; the jitter buffer at all. +; +; forcejitterbuffer=yes|no: in the ideal world, when we bridge VoIP channels +; we don't want to do jitterbuffering on the switch, since the endpoints +; can each handle this. However, some endpoints may have poor jitterbuffers +; themselves, so this option will force * to always jitterbuffer, even in this +; case. +; [This option presently applies only to the new jitterbuffer implementation] +; +; dropcount: the jitter buffer is sized such that no more than "dropcount" +; frames would have been "too late" over the last 2 seconds. +; Set to a small number. "3" represents 1.5% of frames dropped +; [This option is not applicable to, and ignored by the new jitterbuffer implementation] +; +; maxjitterbuffer: a maximum size for the jitter buffer. +; Setting a reasonable maximum here will prevent the call delay +; from rising to silly values in extreme situations; you'll hear +; SOMETHING, even though it will be jittery. +; +; resyncthreshold: when the jitterbuffer notices a significant change in delay +; that continues over a few frames, it will resync, assuming that the change in +; delay was caused by a timestamping mix-up. The threshold for noticing a +; change in delay is measured as twice the measured jitter plus this resync +; threshold. +; Resyncing can be disabled by setting this parameter to -1. +; [This option presently applies only to the new jitterbuffer implementation] +; +; maxjitterinterps: the maximum number of interpolation frames the jitterbuffer +; should return in a row. Since some clients do not send CNG/DTX frames to +; indicate silence, the jitterbuffer will assume silence has begun after +; returning this many interpolations. This prevents interpolating throughout +; a long silence. +; [This option presently applies only to the new jitterbuffer implementation] +; +; maxexcessbuffer: If conditions improve after a period of high jitter, +; the jitter buffer can end up bigger than necessary. If it ends up +; more than "maxexcessbuffer" bigger than needed, Asterisk will start +; gradually decreasing the amount of jitter buffering. +; [This option is not applicable to, and ignored by the new jitterbuffer implementation] +; +; minexcessbuffer: Sets a desired mimimum amount of headroom in +; the jitter buffer. If Asterisk has less headroom than this, then +; it will start gradually increasing the amount of jitter buffering. +; [This option is not applicable to, and ignored by the new jitterbuffer implementation] +; +; jittershrinkrate: when the jitter buffer is being gradually shrunk +; (or enlarged), how many millisecs shall we take off per 20ms frame +; received? Use a small number, or you will be able to hear it +; changing. An example: if you set this to 2, then the jitter buffer +; size will change by 100 millisecs per second. +; [This option is not applicable to, and ignored by the new jitterbuffer implementation] + +jitterbuffer=no +forcejitterbuffer=no +;dropcount=2 +;maxjitterbuffer=1000 +;maxjitterinterps=10 +;resyncthreshold=1000 +;maxexcessbuffer=80 +;minexcessbuffer=10 +;jittershrinkrate=1 + +;trunkfreq=20 ; How frequently to send trunk msgs (in ms) + +; Should we send timestamps for the individual sub-frames within trunk frames? +; There is a small bandwidth use for these (less than 1kbps/call), but they +; ensure that frame timestamps get sent end-to-end properly. If both ends of +; all your trunks go directly to TDM, _and_ your trunkfreq equals the frame +; length for your codecs, you can probably suppress these. The receiver must +; also support this feature, although they do not also need to have it enabled. +; +; trunktimestamps=yes +; +; Minimum and maximum amounts of time that IAX peers can request as +; a registration expiration interval (in seconds). +; minregexpire = 60 +; maxregexpire = 60 +; +; We can register with another IAX server to let him know where we are +; in case we have a dynamic IP address for example +; +; Register with tormenta using username marko and password secretpass +; +;register => marko:secretpass@tormenta.linux-support.net +; +; Register joe at remote host with no password +; +;register => joe@remotehost:5656 +; +; Register marko at tormenta.linux-support.net using RSA key "torkey" +; +;register => marko:[torkey]@tormenta.linux-support.net +; +; Sample Registration for iaxtel +; +; Visit http://www.iaxtel.com to register with iaxtel. Replace "user" +; and "pass" with your username and password for iaxtel. Incoming +; calls arrive at the "s" extension of "default" context. +; +;register => user:pass@iaxtel.com +; +; Sample Registration for IAX + FWD +; +; To register using IAX with FWD, it must be enabled by visiting the URL +; http://www.fwdnet.net/index.php?section_id=112 +; +; Note that you need an extension in you default context which matches +; your free world dialup number. Please replace "FWDNumber" with your +; FWD number and "passwd" with your password. +; +;register => FWDNumber:passwd@iax.fwdnet.net +; +; +; You can disable authentication debugging to reduce the amount of +; debugging traffic. +; +;authdebug=no +; +; Finally, you can set values for your TOS bits to help improve +; performance. Valid values are: +; lowdelay -- Minimize delay +; throughput -- Maximize throughput +; reliability -- Maximize reliability +; mincost -- Minimize cost +; none -- No flags +; +tos=lowdelay +; +; If mailboxdetail is set to "yes", the user receives +; the actual new/old message counts, not just a yes/no +; as to whether they have messages. this can be set on +; a per-peer basis as well +; +;mailboxdetail=yes +; +; If regcontext is specified, Asterisk will dynamically create and destroy +; a NoOp priority 1 extension for a given peer who registers or unregisters +; with us. The actual extension is the 'regexten' parameter of the registering +; peer or its name if 'regexten' is not provided. More than one regexten +; may be supplied if they are separated by '&'. Patterns may be used in +; regexten. +; +;regcontext=iaxregistrations +; +; If we don't get ACK to our NEW within 2000ms, and autokill is set to yes, +; then we cancel the whole thing (that's enough time for one retransmission +; only). This is used to keep things from stalling for a long time for a host +; that is not available, but would be ill advised for bad connections. In +; addition to 'yes' or 'no' you can also specify a number of milliseconds. +; See 'qualify' for individual peers to turn on for just a specific peer. +; +autokill=yes +; +; codecpriority controls the codec negotiation of an inbound IAX call. +; This option is inherited to all user entities. It can also be defined +; in each user entity separately which will override the setting in general. +; +; The valid values are: +; +; caller - Consider the callers preferred order ahead of the host's. +; host - Consider the host's preferred order ahead of the caller's. +; disabled - Disable the consideration of codec preference alltogether. +; (this is the original behaviour before preferences were added) +; reqonly - Same as disabled, only do not consider capabilities if +; the requested format is not available the call will only +; be accepted if the requested format is available. +; +; The default value is 'host' +; +;codecpriority=host + +;rtcachefriends=yes ; Cache realtime friends by adding them to the internal list + ; just like friends added from the config file only on a + ; as-needed basis? (yes|no) + +;rtupdate=yes ; Send registry updates to database using realtime? (yes|no) + ; If set to yes, when a IAX2 peer registers successfully, the ip address, + ; the origination port, the registration period, and the username of + ; the peer will be set to database via realtime. If not present, defaults to 'yes'. + +;rtautoclear=yes ; Auto-Expire friends created on the fly on the same schedule + ; as if it had just registered? (yes|no|<seconds>) + ; If set to yes, when the registration expires, the friend will vanish from + ; the configuration until requested again. If set to an integer, + ; friends expire within this number of seconds instead of the + ; registration interval. + +;rtignoreexpire=yes ; When reading a peer from Realtime, if the peer's registration + ; has expired based on its registration interval, used the stored + ; address information regardless. (yes|no) + +; Guest sections for unauthenticated connection attempts. Just specify an +; empty secret, or provide no secret section. +; +[guest] +type=user +context=default +callerid="Guest IAX User" + +; +; Trust Caller*ID Coming from iaxtel.com +; +[iaxtel] +type=user +context=default +auth=rsa +inkeys=iaxtel + +; +; Trust Caller*ID Coming from iax.fwdnet.net +; +[iaxfwd] +type=user +context=default +auth=rsa +inkeys=freeworlddialup + +; +; Trust callerid delivered over DUNDi/e164 +; +; +;[dundi] +;type=user +;dbsecret=dundi/secret +;context=dundi-e164-local + +; +; Further user sections may be added, specifying a context and a secret used +; for connections with that given authentication name. Limited IP based +; access control is allowed by use of "allow" and "deny" keywords. Multiple +; rules are permitted. Multiple permitted contexts may be specified, in +; which case the first will be the default. You can also override caller*ID +; so that when you receive a call you set the Caller*ID to be what you want +; instead of trusting what the remote user provides +; +; There are three authentication methods that are supported: md5, plaintext, +; and rsa. The least secure is "plaintext", which sends passwords cleartext +; across the net. "md5" uses a challenge/response md5 sum arrangement, but +; still requires both ends have plain text access to the secret. "rsa" allows +; unidirectional secret knowledge through public/private keys. If "rsa" +; authentication is used, "inkeys" is a list of acceptable public keys on the +; local system that can be used to authenticate the remote peer, separated by +; the ":" character. "outkey" is a single, private key to use to authenticate +; to the other side. Public keys are named /var/lib/asterisk/keys/<name>.pub +; while private keys are named /var/lib/asterisk/keys/<name>.key. Private +; keys should always be 3DES encrypted. +; +; +; NOTE: All hostnames and IP addresses in this file are for example purposes +; only; you should not expect any of them to actually be available for +; your use. +; +; +;[markster] +;type=user +;context=default +;context=local +;auth=md5,plaintext,rsa +;secret=markpasswd +;setvar=foo=bar +;dbsecret=mysecrets/place ; Secrets can be stored in astdb, too +;notransfer=yes ; Disable IAX native transfer +;jitterbuffer=yes ; Override global setting an enable jitter buffer +; ; for this user +;callerid="Mark Spencer" <(256) 428-6275> +;deny=0.0.0.0/0.0.0.0 +;accountcode=markster0101 +;permit=209.16.236.73/255.255.255.0 +;language=en ; Use english as default language +; +; Peers may also be specified, with a secret and +; a remote hostname. +; +[demo] +type=peer +username=asterisk +secret=supersecret +host=216.207.245.47 +;sendani=no +;host=asterisk.linux-support.net +;port=5036 +;mask=255.255.255.255 +;qualify=yes ; Make sure this peer is alive +;qualifysmoothing = yes ; use an average of the last two PONG + ; results to reduce falsly detected LAGGED hosts + ; Default: Off +;qualifyfreqok = 60000 ; how frequently to ping the peer when + ; everything seems to be ok, in milliseconds +;qualifyfreqnotok = 10000 ; how frequently to ping the peer when it's + ; either LAGGED or UNAVAILABLE, in milliseconds +;jitterbuffer=no ; Turn off jitter buffer for this peer + +; +; Peers can remotely register as well, so that they can be mobile. Default +; IP's can also optionally be given but are not required. Caller*ID can be +; suggested to the other side as well if it is for example a phone instead of +; another PBX. +; + +;[dynamichost] +;host=dynamic +;secret=mysecret +;mailbox=1234 ; Notify about mailbox 1234 +;inkeys=key1:key2 +;peercontext=local ; Default context to request for calls to peer +;defaultip=216.207.245.34 +;callerid="Some Host" <(256) 428-6011> +; + +; +;[biggateway] +;type=peer +;host=192.168.0.1 +;context=* +;secret=myscret +;trunk=yes ; Use IAX2 trunking with this host +;timezone=America/New_York ; Set a timezone for the date/time IE +; + +; +; Friends are a short cut for creating a user and +; a peer with the same values. +; +;[marko] +;type=friend +;host=dynamic +;regexten=1234 +;secret=moofoo +;context=default +;permit=0.0.0.0/0.0.0.0 + diff --git a/1.2-netsec/configs/iaxprov.conf.sample b/1.2-netsec/configs/iaxprov.conf.sample new file mode 100644 index 000000000..ad13166ed --- /dev/null +++ b/1.2-netsec/configs/iaxprov.conf.sample @@ -0,0 +1,83 @@ +; +; IAX2 Provisioning Information +; +; Contains provisioning information for templates and for specific service +; entries. +; +; Templates provide a group of settings from which provisioning takes place. +; A template may be based upon any template that has been specified before +; it. If the template that an entry is based on is not specified then it is +; presumed to be 'default' (unless it is the first of course). +; +; Templates which begin with 'si-' are used for provisioning units with +; specific service identifiers. For example the entry "si-000364000126" +; would be used when the device with the corresponding service identifier of +; "000364000126" attempts to register or make a call. +; +[default] +; +; The port number the device should use to bind to. The default is 4569. +; +;port=4569 +; +; server is our PRIMARY server for registration and placing calls +; +;server=192.168.69.3 +; +; altserver is the BACKUP server for registration and placing calls in the +; event the primary server is unavailable. +; +;altserver=192.168.69.4 +; +; port is the port number to use for IAX2 outbound. The connections to the +; server and altserver -- default is of course 4569. +;serverport=4569 +; +; language is the preferred language for the device +; +;language=en +; +; codec is the requested codec. The iaxy supports ulaw and adpcm +; +codec=ulaw +; +; flags is a comma separated list of flags which the device should +; use and may contain any of the following keywords: +; +; "register" - Register with server +; "secure" - Do not accept calls / provisioning not originated by the server +; "heartbeat" - Generate status packets on port 9999 sent to 255.255.255.255 +; "debug" - Output extra debugging to port 9999 +; +; Note that use can use += and -= to adjust parameters +; +flags=register,heartbeat +; +; tos is the requested type of service setting and may be one a number or +; 'lowdelay','throughput','reliability','mincost' or 'none' +; +tos=lowdelay +; +; Example iaxy provisioning +; +;[si-000364000126] +;user=iaxy +;pass=bitsy +;flags += debug + +;[si-000364000127] +;user=iaxy2 +;pass=bitsy2 +;template=si-000364000126 +;flags += debug + +; +;[*] +; +; If specified, the '*' provisioning is used for all devices which do not +; have another provisioning entry within the file. If unspecified, no +; provisioning will take place for devices which have no entry. DO NOT +; USE A '*' PROVISIONING ENTRY UNLESS YOU KNOW WHAT YOU'RE DOING. +; +;template=default + diff --git a/1.2-netsec/configs/indications.conf.sample b/1.2-netsec/configs/indications.conf.sample new file mode 100644 index 000000000..d70ac60ed --- /dev/null +++ b/1.2-netsec/configs/indications.conf.sample @@ -0,0 +1,611 @@ +; indications.conf +; Configuration file for location specific tone indications +; used by the pbx_indications module. +; +; NOTE: +; When adding countries to this file, please keep them in alphabetical +; order according to the 2-character country codes! +; +; The [general] category is for certain global variables. +; All other categories are interpreted as location specific indications +; +; +[general] +country=us ; default location + + +; [example] +; description = string +; The full name of your country, in English. +; alias = iso[,iso]* +; List of other countries 2-letter iso codes, which have the same +; tone indications. +; ringcadence = num[,num]* +; List of durations the physical bell rings. +; dial = tonelist +; Set of tones to be played when one picks up the hook. +; busy = tonelist +; Set of tones played when the receiving end is busy. +; congestion = tonelist +; Set of tones played when there is some congestion (on the network?) +; callwaiting = tonelist +; Set of tones played when there is a call waiting in the background. +; dialrecall = tonelist +; Not well defined; many phone systems play a recall dial tone after hook +; flash. +; record = tonelist +; Set of tones played when call recording is in progress. +; info = tonelist +; Set of tones played with special information messages (e.g., "number is +; out of service") +; 'name' = tonelist +; Every other variable will be available as a shortcut for the "PlayList" command +; but will not be used automatically by Asterisk. +; +; +; The tonelist itself is defined by a comma-separated sequence of elements. +; Each element consist of a frequency (f) with an optional duration (in ms) +; attached to it (f/duration). The frequency component may be a mixture of two +; frequencies (f1+f2) or a frequency modulated by another frequency (f1*f2). +; The implicit modulation depth is fixed at 90%, though. +; If the list element starts with a !, that element is NOT repeated, +; therefore, only if all elements start with !, the tonelist is time-limited, +; all others will repeat indefinitely. +; +; concisely: +; element = [!]freq[+|*freq2][/duration] +; tonelist = element[,element]* +; +; Please note that SPACES ARE NOT ALLOWED in tone lists! +; + +[at] +description = Austria +ringcadence = 1000,5000 +; Reference: http://www.itu.int/ITU-T/inr/forms/files/tones-0203.pdf +dial = 420 +busy = 420/400,0/400 +ring = 420/1000,0/5000 +congestion = 420/200,0/200 +callwaiting = 420/40,0/1960 +dialrecall = 420 +; RECORDTONE - not specified +record = 1400/80,0/14920 +info = 950/330,1450/330,1850/330,0/1000 +stutter = 380+420 + +[au] +description = Australia +; Reference http://www.acif.org.au/__data/page/3303/S002_2001.pdf +; Normal Ring +ringcadence = 400,200,400,2000 +; Distinctive Ring 1 - Forwarded Calls +; 400,400,200,200,400,1400 +; Distinctive Ring 2 - Selective Ring 2 + Operator + Recall +; 400,400,200,2000 +; Distinctive Ring 3 - Multiple Subscriber Number 1 +; 200,200,400,2200 +; Distinctive Ring 4 - Selective Ring 1 + Centrex +; 400,2600 +; Distinctive Ring 5 - Selective Ring 3 +; 400,400,200,400,200,1400 +; Distinctive Ring 6 - Multiple Subscriber Number 2 +; 200,400,200,200,400,1600 +; Distinctive Ring 7 - Multiple Subscriber Number 3 + Data Privacy +; 200,400,200,400,200,1600 +; Tones +dial = 413+438 +busy = 425/375,0/375 +ring = 413+438/400,0/200,413+438/400,0/2000 +; XXX Congestion: Should reduce by 10 db every other cadence XXX +congestion = 425/375,0/375,420/375,0/375 +callwaiting = 425/200,0/200,425/200,0/4400 +dialrecall = 413+438 +; Record tone used for Call Intrusion/Recording or Conference +record = !425/1000,!0/15000,425/360,0/15000 +info = 425/2500,0/500 +; Other Australian Tones +; The STD "pips" indicate the call is not an untimed local call +std = !525/100,!0/100,!525/100,!0/100,!525/100,!0/100,!525/100,!0/100,!525/100 +; Facility confirmation tone (eg. Call Forward Activated) +facility = 425 +; Message Waiting "stutter" dialtone +stutter = 413+438/100,0/40 +; Ringtone for calls to Telstra mobiles +ringmobile = 400+450/400,0/200,400+450/400,0/2000 + +[br] +description = Brazil +ringcadence = 1000,4000 +dial = 425 +busy = 425/250,0/250 +ring = 425/1000,0/4000 +congestion = 425/250,0/250,425/750,0/250 +callwaiting = 425/50,0/1000 +; Dialrecall not used in Brazil standard (using UK standard) +dialrecall = 350+440 +; Record tone is not used in Brazil, use busy tone +record = 425/250,0/250 +; Info not used in Brazil standard (using UK standard) +info = 950/330,1400/330,1800/330 +stutter = 350+440 + +[be] +description = Belgium +; Reference: http://www.itu.int/ITU-T/inr/forms/files/tones-0203.pdf +ringcadence = 1000,3000 +dial = 425 +busy = 425/500,0/500 +ring = 425/1000,0/3000 +congestion = 425/167,0/167 +callwaiting = 1400/175,0/175,1400/175,0/3500 +; DIALRECALL - not specified +dialrecall = !350+440/100,!0/100,!350+440/100,!0/100,!350+440/100,!0/100,350+440" +; RECORDTONE - not specified +record = 1400/500,0/15000 +info = 900/330,1400/330,1800/330,0/1000 +stutter = 425/1000,0/250 + +[ch] +description = Switzerland +; Reference: http://www.itu.int/ITU-T/inr/forms/files/tones-0203.pdf +ringcadence = 1000,4000 +dial = 425 +busy = 425/500,0/500 +ring = 425/1000,0/4000 +congestion = 425/200,0/200 +callwaiting = 425/200,0/200,425/200,0/4000 +; DIALRECALL - not specified +dialrecall = !425/100,!0/100,!425/100,!0/100,!425/100,!0/100,425 +; RECORDTONE - not specified +record = 1400/80,0/15000 +info = 950/330,1400/330,1800/330,0/1000 +stutter = 425+340/1100,0/1100 + +[cl] +description = Chile +; According to specs from Telefonica CTC Chile +ringcadence = 1000,3000 +dial = 400 +busy = 400/500,0/500 +ring = 400/1000,0/3000 +congestion = 400/200,0/200 +callwaiting = 400/250,0/8750 +dialrecall = !400/100,!0/100,!400/100,!0/100,!400/100,!0/100,400 +record = 1400/500,0/15000 +info = 950/333,1400/333,1800/333,0/1000 +stutter = !400/100,!0/100,!400/100,!0/100,!400/100,!0/100,!400/100,!0/100,!400/100,!0/100,!400/100,!0/100,400 + +[cn] +description = China +; Reference: http://www.itu.int/ITU-T/inr/forms/files/tones-0203.pdf +ringcadence = 1000,4000 +dial = 450 +busy = 450/350,0/350 +ring = 450/1000,0/4000 +congestion = 450/700,0/700 +callwaiting = 450/400,0/4000 +dialrecall = 450 +record = 950/400,0/10000 +info = 450/100,0/100,450/100,0/100,450/100,0/100,450/400,0/400 +; STUTTER - not specified +stutter = 450+425 + +[cz] +description = Czech Republic +; Reference: http://www.itu.int/ITU-T/inr/forms/files/tones-0203.pdf +ringcadence = 1000,4000 +dial = 425/330,0/330,425/660,0/660 +busy = 425/330,0/330 +ring = 425/1000,0/4000 +congestion = 425/165,0/165 +callwaiting = 425/330,0/9000 +; DIALRECALL - not specified +dialrecall = !425/100,!0/100,!425/100,!0/100,!425/100,!0/100,425/330,0/330,425/660,0/660 +; RECORDTONE - not specified +record = 1400/500,0/14000 +info = 950/330,0/30,1400/330,0/30,1800/330,0/1000 +; STUTTER - not specified +stutter = 425/450,0/50 + +[de] +description = Germany +; Reference: http://www.itu.int/ITU-T/inr/forms/files/tones-0203.pdf +ringcadence = 1000,4000 +dial = 425 +busy = 425/480,0/480 +ring = 425/1000,0/4000 +congestion = 425/240,0/240 +callwaiting = !425/200,!0/200,!425/200,!0/5000,!425/200,!0/200,!425/200,!0/5000,!425/200,!0/200,!425/200,!0/5000,!425/200,!0/200,!425/200,!0/5000,!425/200,!0/200,!425/200,0 +; DIALRECALL - not specified +dialrecall = !425/100,!0/100,!425/100,!0/100,!425/100,!0/100,425 +; RECORDTONE - not specified +record = 1400/80,0/15000 +info = 950/330,1400/330,1800/330,0/1000 +stutter = 425+400 + +[dk] +description = Denmark +; Reference: http://www.itu.int/ITU-T/inr/forms/files/tones-0203.pdf +ringcadence = 1000,4000 +dial = 425 +busy = 425/500,0/500 +ring = 425/1000,0/4000 +congestion = 425/200,0/200 +callwaiting = !425/200,!0/600,!425/200,!0/3000,!425/200,!0/200,!425/200,0 +; DIALRECALL - not specified +dialrecall = !425/100,!0/100,!425/100,!0/100,!425/100,!0/100,425 +; RECORDTONE - not specified +record = 1400/80,0/15000 +info = 950/330,1400/330,1800/330,0/1000 +; STUTTER - not specified +stutter = 425/450,0/50 + +[ee] +description = Estonia +; Reference: http://www.itu.int/ITU-T/inr/forms/files/tones-0203.pdf +ringcadence = 1000,4000 +dial = 425 +busy = 425/300,0/300 +ring = 425/1000,0/4000 +congestion = 425/200,0/200 +; CALLWAIT not in accordance to ITU +callwaiting = 950/650,0/325,950/325,0/30,1400/1300,0/2600 +; DIALRECALL - not specified +dialrecall = 425/650,0/25 +; RECORDTONE - not specified +record = 1400/500,0/15000 +; INFO not in accordance to ITU +info = 950/650,0/325,950/325,0/30,1400/1300,0/2600 +; STUTTER not specified +stutter = !425/100,!0/100,!425/100,!0/100,!425/100,!0/100,!425/100,!0/100,!425/100,!0/100,!425/100,!0/100,425 + +[es] +description = Spain +ringcadence = 1500,3000 +dial = 425 +busy = 425/200,0/200 +ring = 425/1500,0/3000 +congestion = 425/200,0/200,425/200,0/200,425/200,0/600 +callwaiting = 425/175,0/175,425/175,0/3500 +dialrecall = !425/200,!0/200,!425/200,!0/200,!425/200,!0/200,425 +record = 1400/500,0/15000 +info = 950/330,0/1000 +dialout = 500 + + +[fi] +description = Finland +ringcadence = 1000,4000 +dial = 425 +busy = 425/300,0/300 +ring = 425/1000,0/4000 +congestion = 425/200,0/200 +callwaiting = 425/150,0/150,425/150,0/8000 +dialrecall = 425/650,0/25 +record = 1400/500,0/15000 +info = 950/650,0/325,950/325,0/30,1400/1300,0/2600 +stutter = 425/650,0/25 + +[fr] +description = France +; Reference: http://www.itu.int/ITU-T/inr/forms/files/tones-0203.pdf +ringcadence = 1500,3500 +; Dialtone can also be 440+330 +dial = 440 +busy = 440/500,0/500 +ring = 440/1500,0/3500 +; CONGESTION - not specified +congestion = 440/250,0/250 +callwait = 440/300,0/10000 +; DIALRECALL - not specified +dialrecall = !350+440/100,!0/100,!350+440/100,!0/100,!350+440/100,!0/100,350+440 +; RECORDTONE - not specified +record = 1400/500,0/15000 +info = !950/330,!1400/330,!1800/330 +stutter = !440/100,!0/100,!440/100,!0/100,!440/100,!0/100,!440/100,!0/100,!440/100,!0/100,!440/100,!0/100,440 + +[gr] +description = Greece +ringcadence = 1000,4000 +dial = 425/200,0/300,425/700,0/800 +busy = 425/300,0/300 +ring = 425/1000,0/4000 +congestion = 425/200,0/200 +callwaiting = 425/150,0/150,425/150,0/8000 +dialrecall = 425/650,0/25 +record = 1400/400,0/15000 +info = !950/330,!1400/330,!1800/330,!0/1000,!950/330,!1400/330,!1800/330,!0/1000,!950/330,!1400/330,!1800/330,!0/1000,0 +stutter = 425/650,0/25 + +[hu] +description = Hungary +; Reference: http://www.itu.int/ITU-T/inr/forms/files/tones-0203.pdf +ringcadence = 1250,3750 +dial = 425 +busy = 425/300,0/300 +ring = 425/1250,0/3750 +congestion = 425/300,0/300 +callwaiting = 425/40,0/1960 +dialrecall = 425+450 +; RECORDTONE - not specified +record = 1400/400,0/15000 +info = !950/330,!1400/330,!1800/330,!0/1000,!950/330,!1400/330,!1800/330,!0/1000,!950/330,!1400/330,!1800/330,!0/1000,0 +stutter = 350+375+400 + +[it] +description = Italy +; Reference: http://www.itu.int/ITU-T/inr/forms/files/tones-0203.pdf +ringcadence = 1000,4000 +dial = 425/200,0/200,425/600,0/1000 +busy = 425/500,0/500 +ring = 425/1000,0/4000 +congestion = 425/200,0/200 +callwaiting = 425/400,0/100,425/250,0/100,425/150,0/14000 +dialrecall = 470/400,425/400 +record = 1400/400,0/15000 +info = !950/330,!1400/330,!1800/330,!0/1000,!950/330,!1400/330,!1800/330,!0/1000,!950/330,!1400/330,!1800/330,!0/1000,0 +stutter = 470/400,425/400 + +[lt] +description = Lithuania +ringcadence = 1000,4000 +dial = 425 +busy = 425/350,0/350 +ring = 425/1000,0/4000 +congestion = 425/200,0/200 +callwaiting = 425/150,0/150,425/150,0/4000 +; DIALRECALL - not specified +dialrecall = 425/500,0/50 +; RECORDTONE - not specified +record = 1400/500,0/15000 +info = !950/330,!1400/330,!1800/330,!0/1000,!950/330,!1400/330,!1800/330,!0/1000,!950/330,!1400/330,!1800/330,!0/1000,0 +; STUTTER - not specified +stutter = !425/100,!0/100,!425/100,!0/100,!425/100,!0/100,!425/100,!0/100,!425/100,!0/100,!425/100,!0/100,425 + +[mx] +description = Mexico +ringcadence = 2000,4000 +dial = 425 +busy = 425/250,0/250 +ring = 425/1000,0/4000 +congestion = 425/250,0/250 +callwaiting = 425/200,0/600,425/200,0/10000 +dialrecall = !350+440/100,!0/100,!350+440/100,!0/100,!350+440/100,!0/100,350+440 +record = 1400/500,0/15000 +info = 950/330,0/30,1400/330,0/30,1800/330,0/1000 +stutter = !350+440/100,!0/100,!350+440/100,!0/100,!350+440/100,!0/100,!350+440/100,!0/100,!350+440/100,!0/100,!350+440/100,!0/100,350+440 + +[nl] +description = Netherlands +; Reference: http://www.itu.int/ITU-T/inr/forms/files/tones-0203.pdf +ringcadence = 1000,4000 +; Most of these 425's can also be 450's +dial = 425 +busy = 425/500,0/500 +ring = 425/1000,0/4000 +congestion = 425/250,0/250 +callwaiting = 425/500,0/9500 +; DIALRECALL - not specified +dialrecall = 425/500,0/50 +; RECORDTONE - not specified +record = 1400/500,0/15000 +info = 950/330,1400/330,1800/330,0/1000 +stutter = 425/500,0/50 + +[no] +description = Norway +ringcadence = 1000,4000 +dial = 425 +busy = 425/500,0/500 +ring = 425/1000,0/4000 +congestion = 425/200,0/200 +callwaiting = 425/200,0/600,425/200,0/10000 +dialrecall = 470/400,425/400 +record = 1400/400,0/15000 +info = !950/330,!1400/330,!1800/330,!0/1000,!950/330,!1400/330,!1800/330,!0/1000,!950/330,!1400/330,!1800/330,!0/1000,0 +stutter = 470/400,425/400 + +[nz] +description = New Zealand +;NOTE - the ITU has different tonesets for NZ, but according to some residents there, +; this is, indeed, the correct way to do it. +ringcadence = 400,200,400,2000 +dial = 400 +busy = 400/250,0/250 +ring = 400+450/400,0/200,400+450/400,0/2000 +congestion = 400/375,0/375 +callwaiting = !400/200,!0/3000,!400/200,!0/3000,!400/200,!0/3000,!400/200 +dialrecall = !400/100!0/100,!400/100,!0/100,!400/100,!0/100,400 +record = 1400/425,0/15000 +info = 400/750,0/100,400/750,0/100,400/750,0/100,400/750,0/400 +stutter = !400/100!0/100,!400/100,!0/100,!400/100,!0/100,!400/100!0/100,!400/100,!0/100,!400/100,!0/100,400 + +[pl] +description = Poland +ringcadence = 1000,4000 +dial = 425 +busy = 425/500,0/500 +ring = 425/1000,0/4000 +congestion = 425/500,0/500 +callwaiting = 425/150,0/150,425/150,0/4000 +; DIALRECALL - not specified +dialrecall = 425/500,0/50 +; RECORDTONE - not specified +record = 1400/500,0/15000 +; 950/1400/1800 3x0.33 on 1.0 off repeated 3 times +info = !950/330,!1400/330,!1800/330,!0/1000,!950/330,!1400/330,!1800/330,!0/1000,!950/330,!1400/330,!1800/330,!0/1000 +; STUTTER - not specified +stutter = !425/100,!0/100,!425/100,!0/100,!425/100,!0/100,!425/100,!0/100,!425/100,!0/100,!425/100,!0/100,425 + +[pt] +description = Portugal +ringcadence = 1000,5000 +dial = 425 +busy = 425/500,0/500 +ring = 425/1000,0/5000 +congestion = 425/200,0/200 +callwaiting = 440/300,0/10000 +dialrecall = 425/1000,0/200 +record = 1400/500,0/15000 +info = 950/330,1400/330,1800/330,0/1000 +stutter = !425/100,!0/100,!425/100,!0/100,!425/100,!0/100,!425/100,!0/100,!425/100,!0/100,!425/100,!0/100,425 + +[ru] +description = Russia / ex Soviet Union +ringcadence = 800,3200 +dial = 425 +busy = 425/350,0/350 +ring = 425/800,0/3200 +congestion = 425/350,0/350 +callwaiting = 425/200,0/5000 +dialrecall = !350+440/100,!0/100,!350+440/100,!0/100,!350+440/100,!0/100,350+440 +record = 1400/500,0/15000 +info = !950/330,!1400/330,!1800/330,0 + +[se] +description = Sweden +ringcadence = 1000,5000 +dial = 425 +busy = 425/250,0/250 +ring = 425/1000,0/5000 +congestion = 425/250,0/750 +callwaiting = 425/200,0/500,425/200,0/9100 +dialrecall = !425/100,!0/100,!425/100,!0/100,!425/100,!0/100,425 +record = 1400/500,0/15000 +info = !950/332,!0/24,!1400/332,!0/24,!1800/332,!0/2024,!950/332,!0/24,!1400/332,!0/24,!1800/332,!0/2024,!950/332,!0/24,!1400/332,!0/24,!1800/332,!0/2024,!950/332,!0/24,!1400/332,!0/24,!1800/332,!0/2024,!950/332,!0/24,!1400/332,!0/24,!1800/332,0 +stutter = !425/100,!0/100,!425/100,!0/100,!425/100,!0/100,!425/100,!0/100,!425/100,!0/100,!425/100,!0/100,425 +; stutter = 425/320,0/20 ; Real swedish standard, not used for now + +[sg] +description = Singapore +; Singapore +; Reference: http://www.ida.gov.sg/idaweb/doc/download/I397/ida_ts_pstn1_i4r2.pdf +; Frequency specs are: 425 Hz +/- 20Hz; 24 Hz +/- 2Hz; modulation depth 100%; SIT +/- 50Hz +ringcadence = 400,200,400,2000 +dial = 425 +ring = 425*24/400,0/200,425*24/400,0/2000 ; modulation should be 100%, not 90% +busy = 425/750,0/750 +congestion = 425/250,0/250 +callwaiting = 425*24/300,0/200,425*24/300,0/3200 +stutter = !425/200,!0/200,!425/600,!0/200,!425/200,!0/200,!425/600,!0/200,!425/200,!0/200,!425/600,!0/200,!425/200,!0/200,!425/600,!0/200,425 +info = 950/330,1400/330,1800/330,0/1000 ; not currently in use acc. to reference +dialrecall = 425*24/500,0/500,425/500,0/2500 ; unspecified in IDA reference, use repeating Holding Tone A,B +record = 1400/500,0/15000 ; unspecified in IDA reference, use 0.5s tone every 15s +; additionally defined in reference +nutone = 425/2500,0/500 +intrusion = 425/250,0/2000 +warning = 425/624,0/4376 ; end of period tone, warning +acceptance = 425/125,0/125 +holdinga = !425*24/500,!0/500 ; followed by holdingb +holdingb = !425/500,!0/2500 + +[uk] +description = United Kingdom +ringcadence = 400,200,400,2000 +; These are the official tones taken from BT SIN350. The actual tones +; used by BT include some volume differences so sound slightly different +; from Asterisk-generated ones. +dial = 350+440 +; Special dial is the intermittent dial tone heard when, for example, +; you have a divert active on the line +specialdial = 350+440/750,440/750 +; Busy is also called "Engaged" +busy = 400/375,0/375 +; "Congestion" is the Beep-bip engaged tone +congestion = 400/400,0/350,400/225,0/525 +; "Special Congestion" is not used by BT very often if at all +specialcongestion = 400/200,1004/300 +unobtainable = 400 +ring = 400+450/400,0/200,400+450/400,0/2000 +callwaiting = 400/100,0/4000 +; BT seem to use "Special Call Waiting" rather than just "Call Waiting" tones +specialcallwaiting = 400/250,0/250,400/250,0/250,400/250,0/5000 +; "Pips" used by BT on payphones. (Sounds wrong, but this is what BT claim it +; is and I've not used a payphone for years) +creditexpired = 400/125,0/125 +; These two are used to confirm/reject service requests on exchanges that +; don't do voice announcements. +confirm = 1400 +switching = 400/200,0/400,400/2000,0/400 +; This is the three rising tones Doo-dah-dee "Special Information Tone", +; usually followed by the BT woman saying an appropriate message. +info = 950/330,0/15,1400/330,0/15,1800/330,0/1000 +; Not listed in SIN350 +record = 1400/500,0/60000 +stutter = 350+440/750,440/750 + +[us] +description = United States / North America +ringcadence = 2000,4000 +dial = 350+440 +busy = 480+620/500,0/500 +ring = 440+480/2000,0/4000 +congestion = 480+620/250,0/250 +callwaiting = 440/300,0/10000 +dialrecall = !350+440/100,!0/100,!350+440/100,!0/100,!350+440/100,!0/100,350+440 +record = 1400/500,0/15000 +info = !950/330,!1400/330,!1800/330,0 +stutter = !350+440/100,!0/100,!350+440/100,!0/100,!350+440/100,!0/100,!350+440/100,!0/100,!350+440/100,!0/100,!350+440/100,!0/100,350+440 + +[us-old] +description = United States Circa 1950/ North America +ringcadence = 2000,4000 +dial = 600*120 +busy = 500*100/500,0/500 +ring = 420*40/2000,0/4000 +congestion = 500*100/250,0/250 +callwaiting = 440/300,0/10000 +dialrecall = !600*120/100,!0/100,!600*120/100,!0/100,!600*120/100,!0/100,600*120 +record = 1400/500,0/15000 +info = !950/330,!1400/330,!1800/330,0 +stutter = !600*120/100,!0/100,!600*120/100,!0/100,!600*120/100,!0/100,!600*120/100,!0/100,!600*120/100,!0/100,!600*120/100,!0/100,600*120 + +[tw] +description = Taiwan +; http://nemesis.lonestar.org/reference/telecom/signaling/dialtone.html +; http://nemesis.lonestar.org/reference/telecom/signaling/busy.html +; http://www.iproducts.com.tw/ee/kylink/06ky-1000a.htm +; http://www.pbx-manufacturer.com/ky120dx.htm +; http://www.nettwerked.net/tones.txt +; http://www.cisco.com/univercd/cc/td/doc/product/tel_pswt/vco_prod/taiw_sup/taiw2.htm +; +; busy tone 480+620Hz 0.5 sec. on ,0.5 sec. off +; reorder tone 480+620Hz 0.25 sec. on,0.25 sec. off +; ringing tone 440+480Hz 1 sec. on ,2 sec. off +; +ringcadence = 1000,4000 +dial = 350+440 +busy = 480+620/500,0/500 +ring = 440+480/1000,0/2000 +congestion = 480+620/250,0/250 +callwaiting = 350+440/250,0/250,350+440/250,0/3250 +dialrecall = 300/1500,0/500 +record = 1400/500,0/15000 +info = !950/330,!1400/330,!1800/330,0 +stutter = !350+440/100,!0/100,!350+440/100,!0/100,!350+440/100,!0/100,!350+440/100,!0/100,!350+440/100,!0/100,!350+440/100,!0/100,350+440 + +[za] +description = South Africa +; http://www.cisco.com/univercd/cc/td/doc/product/tel_pswt/vco_prod/safr_sup/saf02.htm +; (definitions for other countries can also be found there) +; Note, though, that South Africa uses two switch types in their network -- +; Alcatel switches -- mainly in the Western Cape, and Siemens elsewhere. +; The former use 383+417 in dial, ringback etc. The latter use 400*33 +; I've provided both, uncomment the ones you prefer +ringcadence = 400,200,400,2000 +; dial/ring/callwaiting for the Siemens switches: +dial = 400*33 +ring = 400*33/400,0/200,400*33/400,0/2000 +callwaiting = 400*33/250,0/250,400*33/250,0/250,400*33/250,0/250,400*33/250,0/250 +; dial/ring/callwaiting for the Alcatel switches: +; dial = 383+417 +; ring = 383+417/400,0/200,383+417/400,0/2000 +; callwaiting = 383+417/250,0/250,383+417/250,0/250,383+417/250,0/250,383+417/250,0/250 +congestion = 400/250,0/250 +busy = 400/500,0/500 +dialrecall = 350+440 +; XXX Not sure about the RECORDTONE +record = 1400/500,0/10000 +info = 950/330,1400/330,1800/330,0/330 +stutter = !400*33/100,!0/100,!400*33/100,!0/100,!400*33/100,!0/100,!400*33/100,!0/100,!400*33/100,!0/100,!400*33/100,!0/100,400*33 diff --git a/1.2-netsec/configs/logger.conf.sample b/1.2-netsec/configs/logger.conf.sample new file mode 100644 index 000000000..f2ff0ea7e --- /dev/null +++ b/1.2-netsec/configs/logger.conf.sample @@ -0,0 +1,69 @@ +; +; Logging Configuration +; +; In this file, you configure logging to files or to +; the syslog system. +; +; "logger reload" at the CLI will reload configuration +; of the logging system. + +[general] +; Customize the display of debug message time stamps +; this example is the ISO 8601 date format (yyyy-mm-dd HH:MM:SS) +; see strftime(3) Linux manual for format specifiers +;dateformat=%F %T +; +; This appends the hostname to the name of the log files. +;appendhostname = yes +; +; This determines whether or not we log queue events to a file +; (defaults to yes). +;queue_log = no +; +; This determines whether or not we log generic events to a file +; (defaults to yes). +;event_log = no +; +; +; For each file, specify what to log. +; +; For console logging, you set options at start of +; Asterisk with -v for verbose and -d for debug +; See 'asterisk -h' for more information. +; +; Directory for log files is configures in asterisk.conf +; option astlogdir +; +[logfiles] +; +; Format is "filename" and then "levels" of debugging to be included: +; debug +; notice +; warning +; error +; verbose +; dtmf +; +; Special filename "console" represents the system console +; +; We highly recommend that you DO NOT turn on debug mode if you are simply +; running a production system. Debug mode turns on a LOT of extra messages, +; most of which you are unlikely to understand without an understanding of +; the underlying code. Do NOT report debug messages as code issues, unless +; you have a specific issue that you are attempting to debug. They are +; messages for just that -- debugging -- and do not rise to the level of +; something that merit your attention as an Asterisk administrator. Debug +; messages are also very verbose and can and do fill up logfiles quickly; +; this is another reason not to have debug mode on a production system unless +; you are in the process of debugging a specific issue. +; +;debug => debug +console => notice,warning,error +;console => notice,warning,error,debug +messages => notice,warning,error +;full => notice,warning,error,debug,verbose + +;syslog keyword : This special keyword logs to syslog facility +; +;syslog.local0 => notice,warning,error +; diff --git a/1.2-netsec/configs/manager.conf.sample b/1.2-netsec/configs/manager.conf.sample new file mode 100644 index 000000000..ff37f8a1b --- /dev/null +++ b/1.2-netsec/configs/manager.conf.sample @@ -0,0 +1,37 @@ +; +; AMI - The Asterisk Manager Interface +; +; Third party application call management support and PBX event supervision +; +; This configuration file is read every time someone logs in +; +; Use the "show manager commands" at the CLI to list available manager commands +; and their authorization levels. +; +; "show manager command <command>" will show a help text. +; +; ---------------------------- SECURITY NOTE ------------------------------- +; Note that you should not enable the AMI on a public IP address. If needed, +; block this TCP port with iptables (or another FW software) and reach it +; with IPsec, SSH, or SSL vpn tunnel +; +[general] +enabled = no +port = 5038 +bindaddr = 0.0.0.0 +;displayconnects = yes + +;[mark] +;secret = mysecret +;deny=0.0.0.0/0.0.0.0 +;permit=209.16.236.73/255.255.255.0 +; +; If the device connected via this user accepts input slowly, +; the timeout for writes to it can be increased to keep it +; from being disconnected (value is in milliseconds) +; +; writetimeout = 100 +; +; Authorization for various classes +;read = system,call,log,verbose,command,agent,user +;write = system,call,log,verbose,command,agent,user diff --git a/1.2-netsec/configs/meetme.conf.sample b/1.2-netsec/configs/meetme.conf.sample new file mode 100644 index 000000000..308ec0772 --- /dev/null +++ b/1.2-netsec/configs/meetme.conf.sample @@ -0,0 +1,21 @@ +; +; Configuration file for MeetMe simple conference rooms for Asterisk of course. +; +; This configuration file is read every time you call app meetme() + +[general] +;audiobuffers=32 ; The number of 20ms audio buffers to be used + ; when feeding audio frames from non-Zap channels + ; into the conference; larger numbers will allow + ; for the conference to 'de-jitter' audio that arrives + ; at different timing than the conference's timing + ; source, but can also allow for latency in hearing + ; the audio from the speaker. Minimum value is 2, + ; maximum value is 32. +; +[rooms] +; +; Usage is conf => confno[,pin][,adminpin] +; +;conf => 1234 +;conf => 2345,9938 diff --git a/1.2-netsec/configs/mgcp.conf.sample b/1.2-netsec/configs/mgcp.conf.sample new file mode 100644 index 000000000..cf7b2c916 --- /dev/null +++ b/1.2-netsec/configs/mgcp.conf.sample @@ -0,0 +1,75 @@ +; +; MGCP Configuration for Asterisk +; +[general] +;port = 2427 +;bindaddr = 0.0.0.0 + +;[dlinkgw] +;host = 192.168.0.64 +;context = default +;canreinvite = no +;line => aaln/2 +;line => aaln/1 + +;; The MGCP channel supports the following service codes: +;; # - Transfer +;; *67 - Calling Number Delivery Blocking +;; *70 - Cancel Call Waiting +;; *72 - Call Forwarding Activation +;; *73 - Call Forwarding Deactivation +;; *78 - Do Not Disturb Activation +;; *79 - Do Not Disturb Deactivation +;; *8 - Call pick-up +; +; known to work with Swissvoice IP10s +;[192.168.1.20] +;context=local +;host=192.168.1.20 +;callerid = "John Doe" <123> +;callgroup=0 +;pickupgroup=0 +;nat=no +;threewaycalling=yes +;transfer=yes ; transfer requires threewaycalling=yes. Use FLASH to transfer +;callwaiting=yes ; this might be a cause of trouble for ip10s +;cancallforward=yes +;line => aaln/1 +; + +;[dph100] +; +; Supporting the DPH100M requires defining DLINK_BUGGY_FIRMWARE in +; chan_mgcp.c in addition to enabling the slowsequence mode due to +; bugs in the D-Link firmware +; +;context=local +;host=dynamic +;dtmfmode=none ; DTMF Mode can be 'none', 'rfc2833', or 'inband' or + ; 'hybrid' which starts in none and moves to inband. Default is none. +;slowsequence=yes ; The DPH100M does not follow MGCP standards for sequencing +;line => aaln/1 + +; known to work with wave7optics FTTH LMGs +;[192.168.1.20] +;accountcode = 1000 ; record this in cdr as account identification for billing +;amaflags = billing ; record this in cdr as flagged for 'billing', 'documentation', or 'omit' +;context = local +;host = 192.168.1.20 +;wcardep = aaln/* ; enables wildcard endpoint and sets it to 'aaln/*' another common format is '*' +;callerid = "Duane Cox" <123> ; now lets setup line 1 using per endpoint configuration... +;callwaiting = no +;callreturn = yes +;cancallforward = yes +;canreinvite = no +;transfer = no +;dtmfmode = inband +;line => aaln/1 ; now lets save this config to line1 aka aaln/1 +;callerid = "Duane Cox" <456> ; now lets setup line 2 +;callwaiting = no +;callreturn = yes +;cancallforward = yes +;canreinvite = no +;transfer = no +;dtmfmode = inband +;line => aaln/2 ; now lets save this config to line2 aka aaln/2 diff --git a/1.2-netsec/configs/misdn.conf.sample b/1.2-netsec/configs/misdn.conf.sample new file mode 100644 index 000000000..8957e2fa6 --- /dev/null +++ b/1.2-netsec/configs/misdn.conf.sample @@ -0,0 +1,267 @@ +; +; chan_misdn sample config +; + +; general section: +; +; for debugging and general setup, things that are not bound to port groups +; + +[general] + +; set debugging flag: +; 0 - No Debug +; 1 - mISDN Messages and * - Messages, and * - State changes +; 2 - Messages + Message specific Informations (e.g. bearer capability) +; 3 - very Verbose, the above + lots of Driver specific infos +; 4 - even more Verbose than 3 +; +; default value: 0 +; +debug=0 + +; the big trace +; +; default value: [not set] +; +;tracefile=/var/log/misdn.trace + +; single call trace files +; set to true if you want to have them +; they depend on debug level +; +; default values: trace_calls : false +; trace_dir : /var/log/ +; +trace_calls=false +trace_dir=/var/log/ + +; set to yes if you want mISDN_dsp to bridge the calls in HW +; +; default value: yes +; +bridging=yes + +; stops dialtone after getting first digit on nt Port +; +; default value: yes +; +stop_tone_after_first_digit=yes + +; wether to append overlapdialed Digits to Extension or not +; +; default value: yes +; +append_digits2exten=yes + +; set this to yes if you have jollys mISDN which sends correct L1 Infos +; +; default value: yes +; +l1_info_ok=yes + +; set this to yes if you want to clear the l3 in case the l2 deactivates +; some environments have a flickering l2 which causes this option to +; damage active calls .. highly experimental +; +; default value: no +; +clear_l3=no + +; set the method to use for channel selection: +; standard - always choose the first free channel with the lowest number +; round_robin - use the round robin algorithm to select a channel. use this +; if you want to balance your load. +; +; default value: standard +; +method=standard + +;;; CRYPTION STUFF + +; Wether to look for dynamic crypting attempt +; +; default value: no +; +dynamic_crypt=no + +; crypt_prefix, what is used for crypting Protocol +; +; default value: [not set] +; +crypt_prefix=** + +; Keys for cryption, you reference them in the dialplan +; later also in dynamic encr. +; +; default value: [not set] +; +crypt_keys=test,muh + +; users sections: +; +; name your sections as you which but not "general" ! +; the secions are Groups, you can dial out in extensions.conf +; with Dial(mISDN/g:extern/101) where extern is a section name, +; chan_misdn tries every port in this section to find a +; new free channel +; + +; The default section is not a group section, it just contains config elements +; which are inherited by group sections. +; + +[default] + +; define your default context here +; +; default value: default +; +context=misdn + +; language +; +; default value: en +; +language=en + +; Prefixes for national and international, those are put before the +; oad if an according dialplan is set by the other end. +; +; default values: nationalprefix : 0 +; internationalprefix : 00 +; +nationalprefix=0 +internationalprefix=00 + +; set rx/tx gains between -8 and 8 to change the RX/TX Gain +; +; default values: rxgain: 0 +; txgain: 0 +; +rxgain=0 +txgain=0 + +; some telcos espacially in NL seem to need this set to yes, also in +; switzerland this seems to be important +; +; default value: no +; +te_choose_channel=no + +; dialplan options: +; +; 0 - unknown +; 1 - National +; 2 - International +; 4 - Subscriber +; +; This setting is used for outgoing calls +; +; default value: 0 +; +dialplan=0 + +; This is only for asterisk head and will result in only considering +; misdn.confs and misdn_set_opts callingpresentation informations if set to no. +; Otherwise asterisks callingpresentation overwrites misdn.confs settings. +; +; default value: yes +; +use_callingpres=yes + +; uncomment the following to get into s extension at extension conf +; there you can use DigitTimeout if you can't or don't want to use +; isdn overlap dial. +; note: This will jump into the s exten for every exten! +; +; default value: no +; +;always_immediate=no + +; uncomment the following if you want callers which called exactly the +; base number (so no extension is set) jump to the s extension. +; if the user dials something more it jumps to the correct extension +; instead +; +; default value: no +; +;immediate=no + +; uncomment the following to have hold and retrieve support +; +; default value: no +; +;hold_allowed=yes + +; Pickup and Callgroup +; +; deafult values: not set = 0 +; +;callgroup=1 +;pickupgroup=1 + +; Allows/Screens Callerid +; +; possible values: allowed,not_screened +; +; be aware, if you set to allowed you need to set a correct +; callerid in the dialplan or set it here in the misdn.conf +; Some Telcos don't care about wrong callerids, others do ! +; +; default value: allowed +; +;presentation=not_screened + +; this enables echocancellation, with the given number of taps +; be aware, move this setting only to outgoing portgroups! +; A value of zero turns echocancellation off. +; +; possible values are: 0,32,64,128,256,yes(=128),no(=0) +; +; default value: no +; +;echocancel=no + +; this disables echocancellation when the call is bridged between +; mISDN channels +; +; default value: no +; +echocancelwhenbridged=no + +; Set this to no to disable echotraining +; +; default value: yes +; +echotraining=yes + +[intern] +; define your ports, e.g. 1,2 (depends on mISDN-driver loading order) +ports=1,2 +; context where to go to when incoming Call on one of the above ports +context=Intern + +[internPP] +; if you want to have pp Protocol on one nt Port, you need +; to add a ptp directly after the portnumber, you can still add +; more ports and multiple ptp adds in your config. +ports=3ptp + +[first_extern] +; again port defs +ports=4 +; again a context for incomming calls +context=Extern1 +; msns for te ports, listen on those numbers on the above ports, and +; indicate the incoming calls to asterisk +; here you can give a comma seperated list or simply an '*' for +; any msn. +msns=* + +; here an example with given msns +[second_extern] +ports=5 +context=Extern2 +callerid=15 +msns=102,144,101,104 diff --git a/1.2-netsec/configs/modem.conf.sample b/1.2-netsec/configs/modem.conf.sample new file mode 100644 index 000000000..4bcd58abb --- /dev/null +++ b/1.2-netsec/configs/modem.conf.sample @@ -0,0 +1,92 @@ +; +; isdn4linux +; +; Configuration file +; +[interfaces] +; +; By default, incoming calls should come in on the "remote" context +; +context=remote +; +; Modem Drivers to load +; +driver=aopen ; modem by AOpen +;driver=i4l ; isdn4linux - an alternative to i4l is to use chan_capi +; +; Default language +; +;language=en +; +; We can optionally override the auto detection. This is necessary +; particularly if asterisk does not know about our kind of modem. +; +;type=autodetect +;type=aopen +; +; We can strip a given number of digits on outgoing dialing, so, for example +; you can have it dial "8871042" when given "98871042". +; +stripmsd=0 +; +; Type of dialing +; +dialtype=tone +;dialtype=pulse +; +; Mode selection. "Immediate" means that as soon as you dial, you're connected +; and the line is considered up. "Ring" means we wait until the ring cadence +; occurs at least once. "Answer" means we wait until the other end picks up. +; +;mode=answer +;mode=ring +mode=immediate +; +; List all devices we can use. +; +;device => /dev/ttyS3 +; +; ISDN example (using i4l) +; +;msn=39907835 +;device => /dev/ttyI0 + +;=============== +; More complex ISDN example +; +; A single device which listens to 3 MSNs +; the wildcard '*' can be used when all MSN's should be accepted. +; (The incoming number can be used to go directly into the extension +; with the matching number. I.e. if MSN 33 is called, (context,33) +; will tried first, than (context,s) and finally (default,s). +; +;msn=50780020 +;incomingmsn=50780020,50780021,50780022 +;device => /dev/ttyI2 +; +; If set, only these numbers are allowed to be set as A number +; when making an outbound call. callerid is used to set A +; number. +;outgoingmsn=50780023,50780024 +; + +; Set DTMF-detection/generation mode to: +; asterisk: Let Asterisk do inband detection (default) +; i4l: Use the inband detection made by ISDN4Linux +; none: Don't detect inband DTMF +; both: Transmit using both in-band and out of band (generation only) +; +; You may specify either one mode, or the detection/generation mode +; individually separated by a '/'. +; +;dtmfmode=asterisk ; Detect using Asterisk +;dtmfmode=asterisk/both ; Detect using Asterisk, generate w/ both +; two other devices, which are in group '1' and are used when an +; outgoing dial used: exten => s,1,Dial,Modem/g1:1234|60|r +; (we do not need more outgoing devices, since ISDN2 has only 2 channels.) +; Lines can be in more than one group (0-63); comma separated list. +; +group=1 ; group=1,2,3,9-12 +;msn=50780023 +;device => /dev/ttyI3 +;device => /dev/ttyI4 diff --git a/1.2-netsec/configs/modules.conf.sample b/1.2-netsec/configs/modules.conf.sample new file mode 100644 index 000000000..418433688 --- /dev/null +++ b/1.2-netsec/configs/modules.conf.sample @@ -0,0 +1,53 @@ +; +; Asterisk configuration file +; +; Module Loader configuration file +; + +[modules] +autoload=yes +; +; Any modules that need to be loaded before the Asterisk core has been +; initialized (just after the logger has been initialized) can be loaded +; using 'preload'. This will frequently be needed if you wish to map all +; module configuration files into Realtime storage, since the Realtime +; driver will need to be loaded before the modules using those configuration +; files are initialized. +; +; An example of loading ODBC support would be: +;preload => res_odbc.so +;preload => res_config_odbc.so +; +; If you want, load the GTK console right away. +; Don't load the KDE console since +; it's not as sophisticated right now. +; +noload => pbx_gtkconsole.so +;load => pbx_gtkconsole.so +noload => pbx_kdeconsole.so +; +; Intercom application is obsoleted by +; chan_oss. Don't load it. +; +noload => app_intercom.so +; +; The 'modem' channel driver and its subdrivers are +; obsolete, don't load them. +; +noload => chan_modem.so +noload => chan_modem_aopen.so +noload => chan_modem_bestdata.so +noload => chan_modem_i4l.so +; +load => res_musiconhold.so +; +; Load either OSS or ALSA, not both +; By default, load OSS only (automatically) and do not load ALSA +; +noload => chan_alsa.so +;noload => chan_oss.so +; +; Module names listed in "global" section will have symbols globally +; exported to modules loaded after them. +; +[global] diff --git a/1.2-netsec/configs/musiconhold.conf.sample b/1.2-netsec/configs/musiconhold.conf.sample new file mode 100644 index 000000000..6b3e7b694 --- /dev/null +++ b/1.2-netsec/configs/musiconhold.conf.sample @@ -0,0 +1,64 @@ +; +; Music on Hold -- Sample Configuration +; + +[default] +mode=quietmp3 +directory=/var/lib/asterisk/mohmp3 + +; valid mode options: +; quietmp3 -- default +; mp3 -- loud +; mp3nb -- unbuffered +; quietmp3nb -- quiet unbuffered +; custom -- run a custom application +; files -- read files from a directory in any Asterisk supported format + +;[manual] +;mode=custom +; Note that with mode=custom, a directory is not required, such as when reading +; from a stream. +;directory=/var/lib/asterisk/mohmp3 +;application=/usr/bin/mpg123 -q -r 8000 -f 8192 -b 2048 --mono -s + +;[ulawstream] +;mode=custom +;application=/usr/bin/streamplayer 192.168.100.52 888 +;format=ulaw + +; mpg123 on Solaris does not always exit properly; madplay may be a better +; choice +;[solaris] +;mode=custom +;directory=/var/lib/asterisk/mohmp3 +;application=/site/sw/bin/madplay -Q -o raw:- --mono -R 8000 -a -12 +; + +; +; File-based (native) music on hold +; +; This plays files directly from the specified directory, no external +; processes are required. Files are played in normal sorting order +; (same as a sorted directory listing), and no volume or other +; sound adjustments are available. If the file is available in +; the same format as the channel's codec, then it will be played +; without transcoding (same as Playback would do in the dialplan). +; Files can be present in as many formats as you wish, and the +; 'best' format will be chosen at playback time. +; +; NOTE: +; If you are not using "autoload" in modules.conf, then you +; must ensure that the format modules for any formats you wish +; to use are loaded _before_ res_musiconhold. If you do not do +; this, res_musiconhold will skip the files it is not able to +; understand when it loads. +; + +;[native] +;mode=files +;directory=/var/lib/asterisk/moh-native +; +;[native-random] +;mode=files +;directory=/var/lib/asterisk/moh-native +;random=yes ; Play the files in a random order diff --git a/1.2-netsec/configs/osp.conf.sample b/1.2-netsec/configs/osp.conf.sample new file mode 100644 index 000000000..e7e04036a --- /dev/null +++ b/1.2-netsec/configs/osp.conf.sample @@ -0,0 +1,64 @@ +; +; Open Settlement Protocol Sample Configuration File +; +; +; This file contains configuration of providers that +; are used by the OSP subsystem of Asterisk. The section +; "general" is reserved for global options. Each other +; section declares an OSP Provider. The provider "default" +; is used when no provider is otherwise specified. +; +[general] +; +; Should hardware accelleration be enabled? May not be changed +; on a reload. +; +;accelerate=yes +; +; Defines the token format that Asterisk can validate. +; 0 - signed tokens only +; 1 - unsigned tokens only +; 2 - both signed and unsigned +; The defaults to 0, i.e. the Asterisk can validate signed tokens only. +; +;tokenformat=0 + +;[default] +; +; All paths are presumed to be under /var/lib/asterisk/keys unless +; the path begins with '/' +; +; Specify the private keyfile. If unspecified, defaults to the name +; of the section followed by "-privatekey.pem" (e.g. default-privatekey.pem) +; +;privatekey=pkey.pem +; +; Specify the local certificate file. If unspecified, defaults to +; the name of the section followed by "-localcert.pem" +; +;localcert=localcert.pem +; +; Specify one or more Certificate Authority keys. If none are listed, +; a single one is added with the name "-cacert.pem" +; +;cacert=cacert_0.pem +; +; Specific parameters can be tuned as well: +; +; maxconnections: Max number of simultaneous connections to the provider (default=20) +; retrydelay: Extra delay between retries (default=0) +; retrylimit: Max number of retries before giving up (default=2) +; timeout: Timeout for response in milliseconds (default=500) +; +;maxconnections=20 +;retrydelay=0 +;retrylimit=2 +;timeout=500 +; +; List all service points for this provider +; +;servicepoint=http://osptestserver.transnexus.com:1080/osp +; +; Set the "source" for requesting authorization +; +;source=foo diff --git a/1.2-netsec/configs/oss.conf.sample b/1.2-netsec/configs/oss.conf.sample new file mode 100644 index 000000000..148a2a656 --- /dev/null +++ b/1.2-netsec/configs/oss.conf.sample @@ -0,0 +1,39 @@ +; +; Open Sound System Console Driver Configuration File +; +[general] +; +; Automatically answer incoming calls on the console? Choose yes if +; for example you want to use this as an intercom. +; +autoanswer=yes +; +; Default context (is overridden with @context syntax) +; +context=local +; +; Set overridecontext to yes if you want the context specified above +; to override what someone places on the command line. +; +;overridecontext=yes +; +; Default extension to call +; +extension=s +; +; Default language +; +;language=en +; +; Silence supression can be enabled when sound is over a certain threshold. +; The value for the threshold should probably be between 500 and 2000 or so, +; but your mileage may vary. Use the echo test to evaluate the best setting. +;silencesuppression = yes +;silencethreshold = 1000 +; +; On half-duplex cards, the driver attempts to switch back and forth between +; read and write modes. Unfortunately, this fails sometimes on older hardware. +; To prevent the driver from switching (ie. only play files on your speakers), +; then set the playbackonly option to yes. Default is no. Note this option has +; no effect on full-duplex cards. +;playbackonly=no diff --git a/1.2-netsec/configs/phone.conf.sample b/1.2-netsec/configs/phone.conf.sample new file mode 100644 index 000000000..ca028f9a1 --- /dev/null +++ b/1.2-netsec/configs/phone.conf.sample @@ -0,0 +1,47 @@ +; +; Linux Telephony Interface +; +; Configuration file +; +[interfaces] +; +; Select a mode, either the phone jack provides dialtone, reads digits, +; then starts PBX with the given extension (dialtone mode), or +; immediately provides the PBX without reading any digits or providing +; any dialtone (this is the immediate mode, the default). Also, you +; can set the mode to "fxo" if you have a linejack to make it operate +; properly. +; +mode=immediate +;mode=dialtone +;mode=fxo +; +; You can decide which format to use by default, "g723.1" or "slinear". +; XXX Be careful, sometimes the card causes kernel panics when running +; in signed linear mode for some reason... XXX +; +format=slinear +;format=g723.1 +; +; And set the echo cancellation to "off", "low", "medium", and "high". +; This is not supported on all phones. +; +echocancel=medium +; +; You can optionally use VAD/CNG silence supression +; +;silencesupression=yes +; +; List all devices we can use. Contexts may also be specified +; +;context=local +; +; You can set txgain and rxgain for each device in the same way as context. +; If you want to change default gain value (1.0 =~ 100%) for device, simple +; add txgain or rxgain line before device line. But rememeber, if you change +; volume all cards listed below will be affected by these values. You can +; use float values (1.0, 0.5, 2.0) or percentage values (100%, 150%, 50%). +; +;txgain=100% +;rxgain=1.0 +;device => /dev/phone0 diff --git a/1.2-netsec/configs/privacy.conf.sample b/1.2-netsec/configs/privacy.conf.sample new file mode 100644 index 000000000..0236bccb7 --- /dev/null +++ b/1.2-netsec/configs/privacy.conf.sample @@ -0,0 +1,3 @@ +[general] + +maxretries = 2 ;How many chances the caller has to enter their number diff --git a/1.2-netsec/configs/queues.conf.sample b/1.2-netsec/configs/queues.conf.sample new file mode 100644 index 000000000..ba7a082b5 --- /dev/null +++ b/1.2-netsec/configs/queues.conf.sample @@ -0,0 +1,200 @@ +[general] +; +; Global settings for call queues +; +; Persistent Members +; Store each dynamic agent in each queue in the astdb so that +; when asterisk is restarted, each agent will be automatically +; readded into their recorded queues. Default is 'yes'. +; +persistentmembers = yes +; +; Note that a timeout to fail out of a queue may be passed as part of +; an application call from extensions.conf: +; Queue(queuename|[options]|[optionalurl]|[announceoverride]|[timeout]) +; example: Queue(dave|t|||45) + +;[markq] +; +; A sample call queue +; +; Musiconhold sets which music applies for this particular +; call queue (configure classes in musiconhold.conf) +; +;musiconhold = default +; +; An announcement may be specified which is played for the member as +; soon as they answer a call, typically to indicate to them which queue +; this call should be answered as, so that agents or members who are +; listening to more than one queue can differentiated how they should +; engage the customer +; +;announce = queue-markq +; +; A strategy may be specified. Valid strategies include: +; +; ringall - ring all available channels until one answers (default) +; roundrobin - take turns ringing each available interface +; leastrecent - ring interface which was least recently called by this queue +; fewestcalls - ring the one with fewest completed calls from this queue +; random - ring random interface +; rrmemory - round robin with memory, remember where we left off last ring pass +; +;strategy = ringall +; +; Second settings for service level (default 0) +; Used for service level statistics (calls answered within service level time +; frame) +;servicelevel = 60 +; +; A context may be specified, in which if the user types a SINGLE +; digit extension while they are in the queue, they will be taken out +; of the queue and sent to that extension in this context. +; +;context = qoutcon +; +; How long do we let the phone ring before we consider this a timeout... +; +;timeout = 15 +; +; How long do we wait before trying all the members again? +; +;retry = 5 +; +; Weight of queue - when compared to other queues, higher weights get +; first shot at available channels when the same channel is included in +; more than one queue. +; +;weight=0 +; +; After a successful call, how long to wait before sending a potentially +; free member another call (default is 0, or no delay) +; +;wrapuptime=15 +; +; Maximum number of people waiting in the queue (0 for unlimited) +; +;maxlen = 0 +; +; +; How often to announce queue position and/or estimated holdtime to caller (0=off) +; +;announce-frequency = 90 +; +; +; How often to make any periodic announcement (see periodic-announce) +; +;periodic-announce-frequency=60 +; +; Should we include estimated hold time in position announcements? +; Either yes, no, or only once. +; Hold time will be announced as the estimated time, +; or "less than 2 minutes" when appropriate. +; +;announce-holdtime = yes|no|once + +; +; What's the rounding time for the seconds? +; If this is non-zero, then we announce the seconds as well as the minutes +; rounded to this value. +; +; announce-round-seconds = 10 +; +; Use these sound files in making position/holdtime announcements. The +; defaults are as listed below -- change only if you need to. +; +;queue-youarenext = queue-youarenext ; ("You are now first in line.") +;queue-thereare = queue-thereare ; ("There are") +;queue-callswaiting = queue-callswaiting ; ("calls waiting.") +;queue-holdtime = queue-holdtime ; ("The current est. holdtime is") +;queue-minutes = queue-minutes ; ("minutes.") +;queue-seconds = queue-seconds ; ("seconds.") +;queue-thankyou = queue-thankyou ; ("Thank you for your patience.") +;queue-lessthan = queue-less-than ; ("less than") +;queue-reporthold = queue-reporthold ; ("Hold time") +;periodic-announce = queue-periodic-announce ; ("All reps busy / wait for next") +; +; Calls may be recorded using Asterisk's monitor resource +; This can be enabled from within the Queue application, starting recording +; when the call is actually picked up; thus, only successful calls are +; recorded, and you are not recording while people are listening to MOH. +; To enable monitoring, simply specify "monitor-format"; it will be disabled +; otherwise. +; +; You can specify the monitor filename with by calling +; Set(MONITOR_FILENAME=foo) +; Otherwise it will use MONITOR_FILENAME=${UNIQUEID} +; +; monitor-format = gsm|wav|wav49 +; +; If you wish to have the two files joined together when the call ends, set this +; to yes. +; +; monitor-join = yes +; +; This setting controls whether callers can join a queue with no members. There +; are three choices: +; +; yes - callers can join a queue with no members or only unavailable members +; no - callers cannot join a queue with no members +; strict - callers cannot join a queue with no members or only unavailable +; members +; +; joinempty = yes +; +; If you wish to remove callers from the queue when new callers cannot join, +; set this setting to one of the same choices for 'joinempty' +; +; leavewhenempty = yes +; +; +; If this is set to yes, the following manager events will be generated: +; AgentCalled, AgentDump, AgentConnect, AgentComplete +; (may generate some extra manager events, but probably ones you want) +; +; eventwhencalled = yes +; +; If this is set to no, the following manager events will be generated: +; QueueMemberStatus +; (may generate a WHOLE LOT of extra manager events) +; +; eventmemberstatusoff = no +; +; If you wish to report the caller's hold time to the member before they are +; connected to the caller, set this to yes. +; +; reportholdtime = no +; +; +; If you wish to have a delay before the member is connected to the caller (or +; before the member hears any announcement messages), set this to the number of +; seconds to delay. +; +; memberdelay = 0 +; +; If timeoutrestart is set to yes, then the timeout for an agent to answer is +; reset if a BUSY or CONGESTION is received. This can be useful if agents +; are able to cancel a call with reject or similar. +; +; timeoutrestart = no +; +; Each member of this call queue is listed on a separate line in +; the form technology/dialstring. "member" means a normal member of a +; queue. An optional penalty may be specified after a comma, such that +; entries with higher penalties are considered last. +; +;member => Zap/1 +;member => Zap/2 +;member => Agent/1001 +;member => Agent/1002 + +; +; Note that using agent groups is probably not what you want. Strategies do +; not propagate down to the Agent system so if you want round robin, least +; recent, etc, you should list all the agents in this file individually and not +; use agent groups. +; +;member => Agent/@1 ; Any agent in group 1 +;member => Agent/:1,1 ; Any agent in group 1, wait for first + ; available, but consider with penalty + diff --git a/1.2-netsec/configs/res_odbc.conf.sample b/1.2-netsec/configs/res_odbc.conf.sample new file mode 100644 index 000000000..59d5c68c3 --- /dev/null +++ b/1.2-netsec/configs/res_odbc.conf.sample @@ -0,0 +1,31 @@ +;;; odbc setup file + +; ENV is a global set of environmental variables that will get set. +; Note that all environmental variables can be seen by all connections, +; so you can't have different values for different connections. +[ENV] +INFORMIXSERVER => my_special_database +INFORMIXDIR => /opt/informix + +; All other sections are arbitrary names for database connections. + +[asterisk] +enabled => yes +dsn => asterisk +;username => myuser +;password => mypass +pre-connect => yes + + +[mysql2] +enabled => no +dsn => MySQL-asterisk +username => myuser +password => mypass +pre-connect => yes + + + + + + diff --git a/1.2-netsec/configs/rpt.conf.sample b/1.2-netsec/configs/rpt.conf.sample new file mode 100644 index 000000000..a66e50b92 --- /dev/null +++ b/1.2-netsec/configs/rpt.conf.sample @@ -0,0 +1,180 @@ +; Radio Repeater / Remote Base configuration file (for use with app_rpt) +; As of app_rpt version 0.36, 10/26/2005 +; + +;[000] ; Node ID of first repeater + +;rxchannel = Zap/1 ; Rx audio/signalling channel +; Note: if you use a unified interface (tx/rx on one channel), only +; specify the rxchannel and the txchannel will be assumed from the rxchannel +;txchannel = Zap/2 ; Tx audio/signalling channel +;functions = functions-repeater ; DTMF function list +;; specify this for a different function list then local when on link +;;link_functions = functions-different ; DTMF function list for link +;;phone_functions = functions-phone ; (optional) different functions for 'P' mode +;;dphone_functions = functions-dphone ; (optional) different functions for 'D' mode +;;nodes = nodes-different ; (optional) different node list +;tonezone = us ; use US tones (default) +;context = default ; dialing context for phone +;callerid = "WB6NIL Repeater" <(213) 555-0123> ; Callerid for phone calls +;idrecording = wb6nil ; id recording +;accountcode=RADIO ; account code (optional) +;funcchar = * ; function lead-in character (defaults to '*') +;endchar = # ; command mode end character (defaults to '#') +;;nobusyout=yes ; (optional) Do not busy-out reverse-patch when + ; normal patch in use +;hangtime=1000 ; squelch tail hang time (in ms) (optional) +;totime=100000 ; transmit time-out time (in ms) (optional) +;idtime=30000 ; id interval time (in ms) (optional) +;politeid=30000 ; time in milliseconds before ID timer + ; expires to try and ID in the tail. + ; (optional, default is 30000). +;idtalkover=|iwb6nil/rpt ; Talkover ID (optional) default is none +;unlinkedct=ct2 ; unlinked courtesy tone (optional) default is none + +; The default values for hangtime, time-out time, and id interval time are +; 5 seconds (5000 ms), 3 minutes (180000 ms), and 5 minutes (300000 ms) +; respectively + +;[001] ; Node ID of first repeater + +;rxchannel = Zap/3 ; Rx audio/signalling channel +; Note: if you use a unified interface (tx/rx on one channel), only +; specify the rxchannel and the txchannel will be assumed from the rxchannel +;txchannel = Zap/4 ; Tx audio/signalling channel +;functions = functions-repeater ; DTMF function list +;; specify this for a different function list then local when on link +;;link_functions = functions-different ; DTMF function list for link +;;phone_functions = functions-phone ; (optional) different functions for 'P' mode +;;dphone_functions = functions-dphone ; (optional) different functions for 'D' mode +;;nodes = nodes-different ; (optional) different node list +;tonezone = us ; use US tones (default) +;context = default ; dialing context for phone +;callerid = "WB6NIL Repeater" <(213) 555-0123> ; Callerid for phone calls +;idrecording = wb6nil ; id recording +;accountcode=RADIO ; account code (optional) +;funcchar = * ; function lead-in character (defaults to '*') +;endchar = # ; command mode end character (defaults to '#') +;;nobusyout=yes ; (optional) Do not busy-out reverse-patch when + ; normal patch in use +;hangtime=1000 ; squelch tail hang time (in ms) (optional) +;totime=100000 ; transmit time-out time (in ms) (optional) +;idtime=30000 ; id interval time (in ms) (optional) +;politeid=30000 ; time in milliseconds before ID timer + ; expires to try and ID in the tail. + ; (optional, default is 30000). +;idtalkover=|iwb6nil/rpt ; Talkover ID (optional) default is none +;unlinkedct=ct2 ; unlinked courtesy tone (optional) default is none + +;[002] ; Node ID of remote base + +;rxchannel = Zap/5 ; Rx audio/signalling channel +; Note: if you use a unified interface (tx/rx on one channel), only +; specify the rxchannel and the txchannel will be assumed from the rxchannel +;txchannel = Zap/6 ; Tx audio/signalling channel +;functions = functions-remote +;remote = ft897 ; Set remote=y for dumb remote or + ; remote=ft897 for Yaesu FT-897 or + ; remote=rbi for Doug Hall RBI1 +;iobase = 0x378 ; Specify IO port for parallel port (optional) + +;[functions-repeater] +;1=ilink,1 ; Specific link disconnect +;2=ilink,2 ; Specific Link connect - monitor only +;3=ilink,3 ; Specific Link connect - transceive +;4=ilink,4 ; Enter command mode on a specific link +;7=ilink,5 ; Link status +;;XX=ilink,6 ; Disconnect all links (not used here) + +;80=status,1 ; System info +;81=status,2 ; Time +;82=status,3 ; app_rpt.c Version + +;6=autopatchup ; Autopatch up +;0=autopatchdn ; Autopatch down + +;90=cop,1 ; System warm boot +;91=cop,2 ; System enable +;92=cop,3 ; System disable + +;[functions-remote] + +;0=remote,1 ; Retrieve Memory +;1=remote,2 ; Set freq. +;2=remote,3 ; Set Rx PL tone. +;40=remote,100 ; Rx PL off +;41=remote,101 ; Rx PL on +;42=remote,102 ; Tx PL off +;43=remote,103 ; Tx PL on +;44=remote,104 ; Low Pwr +;45=remote,105 ; Med Pwr +;46=remote,106 ; Hi Pwr +;5=remote,5 ; Status + +;[telemetry] + +; Telemetry entries are shared across all repeaters +; Can be a tone sequence, morse string, or a file +; +; |t - Tone escape sequence +; +; Tone sequences consist of 1 or more 4-tuple entries (freq1, freq2, duration, amplitude) +; Single frequencies are created by setting freq1 or freq2 to zero. +; +; |m - Morse escape sequence +; +; Sends Morse code at the telemetry amplitude and telemetry frequency as defined in the +; [morse] section. +; +; Follow with an alphanumeric string +; +; |i - Morse ID escape sequence +; +; Sends Morse code at the ID amplitude and ID frequency as defined in the +; [morse] section. +; +; Follow with an alphanumeric string + + +;ct1=|t(350,0,100,2048)(500,0,100,2048)(660,0,100,2048) +;ct2=|t(660,880,150,2048) +;ct3=|t(440,0,150,2048) +;ct4=|t(550,0,150,2048) +;ct5=|t(660,0,150,2048) +;ct6=|t(880,0,150,2048) +;ct7=|t(660,440,150,2048) +;ct8=|t(700,1100,150,2048) +;remotetx=|t(2000,0,75,2048)(0,0,75,0)(1600,0,75,2048); +;remotemon=|t(1600,0,75,2048) +;cmdmode=|t(900,903,200,2048) +;functcomplete=|t(1000,0,100,2048)(0,0,100,0)(1000,0,100,2048) + + +;[morse] + +;speed=20 ; Approximate speed in WPM +;frequency=800 ; Morse Telemetry Frequency +;amplitude=4096 ; Morse Telemetry Amplitude +;idfrequency=330 ; Morse ID Frequency +;idamplitude=2048 ; Morse ID Amplitude + +;[nodes] + +;000 = context_A@foo.bar.com/1234,foo.bar.com +;001 = context_B@baz.waldo.com/4321,baz.waldo.com +;002 = context_C@pepper.salt.com/5678,pepper.salt.com,y ; this is a remote + +;of course, you can also specify these with domain names, but why rely +;on DNS working unnecessarily? + +;[memory] + +;; this example gives you 146.460, simplex, 100.0 HZ PL, hi-power, transmit PL +;00 = 146.460,100.0,sht +;; this example gives you 146.940, minus offset, 100.0 HZ PL, low-power, no PL +;01 = 146.940,100.0,-l + +; The format for these entries is: Receive-Freq,Receive-PL,Attrbutes +; Attributes: l=low power, m=medium power, h=high power, -=minus offset, +; s=simplex, +=plus offset, t=tx PL enable, r=rx PL enable + diff --git a/1.2-netsec/configs/rtp.conf.sample b/1.2-netsec/configs/rtp.conf.sample new file mode 100644 index 000000000..fa16f0d93 --- /dev/null +++ b/1.2-netsec/configs/rtp.conf.sample @@ -0,0 +1,20 @@ +; +; RTP Configuration +; +[general] +; +; RTP start and RTP end configure start and end addresses +; +; Defaults are rtpstart=5000 and rtpend=31000 +; +rtpstart=10000 +rtpend=20000 +; +; Whether to enable or disable UDP checksums on RTP traffic +; +;rtpchecksums=no +; +; The amount of time a DTMF digit with no 'end' marker should be +; allowed to continue (in 'samples', 1/8000 of a second) +; +;dtmftimeout=3000 diff --git a/1.2-netsec/configs/sip.conf.sample b/1.2-netsec/configs/sip.conf.sample new file mode 100644 index 000000000..3d9299c05 --- /dev/null +++ b/1.2-netsec/configs/sip.conf.sample @@ -0,0 +1,441 @@ +; +; SIP Configuration example for Asterisk +; +; Syntax for specifying a SIP device in extensions.conf is +; SIP/devicename where devicename is defined in a section below. +; +; You may also use +; SIP/username@domain to call any SIP user on the Internet +; (Don't forget to enable DNS SRV records if you want to use this) +; +; If you define a SIP proxy as a peer below, you may call +; SIP/proxyhostname/user or SIP/user@proxyhostname +; where the proxyhostname is defined in a section below +; +; Useful CLI commands to check peers/users: +; sip show peers Show all SIP peers (including friends) +; sip show users Show all SIP users (including friends) +; sip show registry Show status of hosts we register with +; +; sip debug Show all SIP messages +; +; reload chan_sip.so Reload configuration file +; Active SIP peers will not be reconfigured +; + +[general] +context=default ; Default context for incoming calls +;allowguest=no ; Allow or reject guest calls (default is yes, this can also be set to 'osp' + ; if asterisk was compiled with OSP support. +;realm=mydomain.tld ; Realm for digest authentication + ; defaults to "asterisk" + ; Realms MUST be globally unique according to RFC 3261 + ; Set this to your host name or domain name +bindport=5060 ; UDP Port to bind to (SIP standard port is 5060) +bindaddr=0.0.0.0 ; IP address to bind to (0.0.0.0 binds to all) +srvlookup=yes ; Enable DNS SRV lookups on outbound calls + ; Note: Asterisk only uses the first host + ; in SRV records + ; Disabling DNS SRV lookups disables the + ; ability to place SIP calls based on domain + ; names to some other SIP users on the Internet + +;domain=mydomain.tld ; Set default domain for this host + ; If configured, Asterisk will only allow + ; INVITE and REFER to non-local domains + ; Use "sip show domains" to list local domains +;domain=mydomain.tld,mydomain-incoming + ; Add domain and configure incoming context + ; for external calls to this domain +;domain=1.2.3.4 ; Add IP address as local domain + ; You can have several "domain" settings +;allowexternalinvites=no ; Disable INVITE and REFER to non-local domains + ; Default is yes +;autodomain=yes ; Turn this on to have Asterisk add local host + ; name and local IP to domain list. +;pedantic=yes ; Enable slow, pedantic checking for Pingtel + ; and multiline formatted headers for strict + ; SIP compatibility (defaults to "no") +;tos=184 ; Set IP QoS to either a keyword or numeric val +;tos=lowdelay ; lowdelay,throughput,reliability,mincost,none +;maxexpiry=3600 ; Max length of incoming registration we allow +;defaultexpiry=120 ; Default length of incoming/outoing registration +;notifymimetype=text/plain ; Allow overriding of mime type in MWI NOTIFY +;checkmwi=10 ; Default time between mailbox checks for peers +;vmexten=voicemail ; dialplan extension to reach mailbox sets the + ; Message-Account in the MWI notify message + ; defaults to "asterisk" +;videosupport=yes ; Turn on support for SIP video +;recordhistory=yes ; Record SIP history by default + ; (see sip history / sip no history) + +;disallow=all ; First disallow all codecs +;allow=ulaw ; Allow codecs in order of preference +;allow=ilbc ; +;musicclass=default ; Sets the default music on hold class for all SIP calls + ; This may also be set for individual users/peers +;language=en ; Default language setting for all users/peers + ; This may also be set for individual users/peers +;relaxdtmf=yes ; Relax dtmf handling +;rtptimeout=60 ; Terminate call if 60 seconds of no RTP activity + ; when we're not on hold +;rtpholdtimeout=300 ; Terminate call if 300 seconds of no RTP activity + ; when we're on hold (must be > rtptimeout) +;trustrpid = no ; If Remote-Party-ID should be trusted +;sendrpid = yes ; If Remote-Party-ID should be sent +;progressinband=never ; If we should generate in-band ringing always + ; use 'never' to never use in-band signalling, even in cases + ; where some buggy devices might not render it +;useragent=Asterisk PBX ; Allows you to change the user agent string +;promiscredir = no ; If yes, allows 302 or REDIR to non-local SIP address + ; Note that promiscredir when redirects are made to the + ; local system will cause loops since SIP is incapable + ; of performing a "hairpin" call. +;usereqphone = no ; If yes, ";user=phone" is added to uri that contains + ; a valid phone number +;dtmfmode = rfc2833 ; Set default dtmfmode for sending DTMF. Default: rfc2833 + ; Other options: + ; info : SIP INFO messages + ; inband : Inband audio (requires 64 kbit codec -alaw, ulaw) + ; auto : Use rfc2833 if offered, inband otherwise + +;compactheaders = yes ; send compact sip headers. +;sipdebug = yes ; Turn on SIP debugging by default, from + ; the moment the channel loads this configuration +;subscribecontext = default ; Set a specific context for SUBSCRIBE requests + ; Useful to limit subscriptions to local extensions + ; Settable per peer/user also +;notifyringing = yes ; Notify subscriptions on RINGING state + +; +; If regcontext is specified, Asterisk will dynamically create and destroy a +; NoOp priority 1 extension for a given peer who registers or unregisters with +; us. The actual extension is the 'regexten' parameter of the registering +; peer or its name if 'regexten' is not provided. More than one regexten may +; be supplied if they are separated by '&'. Patterns may be used in regexten. +; +;regcontext=sipregistrations +; +; Asterisk can register as a SIP user agent to a SIP proxy (provider) +; Format for the register statement is: +; register => user[:secret[:authuser]]@host[:port][/extension] +; +; If no extension is given, the 's' extension is used. The extension needs to +; be defined in extensions.conf to be able to accept calls from this SIP proxy +; (provider). +; +; host is either a host name defined in DNS or the name of a section defined +; below. +; +; Examples: +; +;register => 1234:password@mysipprovider.com +; +; This will pass incoming calls to the 's' extension +; +; +;register => 2345:password@sip_proxy/1234 +; +; Register 2345 at sip provider 'sip_proxy'. Calls from this provider +; connect to local extension 1234 in extensions.conf, default context, +; unless you configure a [sip_proxy] section below, and configure a +; context. +; Tip 1: Avoid assigning hostname to a sip.conf section like [provider.com] +; Tip 2: Use separate type=peer and type=user sections for SIP providers +; (instead of type=friend) if you have calls in both directions + +;registertimeout=20 ; retry registration calls every 20 seconds (default) +;registerattempts=10 ; Number of registration attempts before we give up + ; 0 = continue forever, hammering the other server until it + ; accepts the registration + ; Default is 0 tries, continue forever +;callevents=no ; generate manager events when sip ua performs events (e.g. hold) + +;----------------------------------------- NAT SUPPORT ------------------------ +; The externip, externhost and localnet settings are used if you use Asterisk +; behind a NAT device to communicate with services on the outside. + +;externip = 200.201.202.203 ; Address that we're going to put in outbound SIP messages + ; if we're behind a NAT + + ; The externip and localnet is used + ; when registering and communicating with other proxies + ; that we're registered with +;externhost=foo.dyndns.net ; Alternatively you can specify an + ; external host, and Asterisk will + ; perform DNS queries periodically. Not + ; recommended for production + ; environments! Use externip instead +;externrefresh=10 ; How often to refresh externhost if + ; used + ; You may add multiple local networks. A reasonable set of defaults + ; are: +;localnet=192.168.0.0/255.255.0.0; All RFC 1918 addresses are local networks +;localnet=10.0.0.0/255.0.0.0 ; Also RFC1918 +;localnet=172.16.0.0/12 ; Another RFC1918 with CIDR notation +;localnet=169.254.0.0/255.255.0.0 ;Zero conf local network + +; The nat= setting is used when Asterisk is on a public IP, communicating with +; devices hidden behind a NAT device (broadband router). If you have one-way +; audio problems, you usually have problems with your NAT configuration or your +; firewall's support of SIP+RTP ports. You configure Asterisk choice of RTP +; ports for incoming audio in rtp.conf +; +;nat=no ; Global NAT settings (Affects all peers and users) + ; yes = Always ignore info and assume NAT + ; no = Use NAT mode only according to RFC3581 + ; never = Never attempt NAT mode or RFC3581 support + ; route = Assume NAT, don't send rport + ; (work around more UNIDEN bugs) + +;rtcachefriends=yes ; Cache realtime friends by adding them to the internal list + ; just like friends added from the config file only on a + ; as-needed basis? (yes|no) + +;rtupdate=yes ; Send registry updates to database using realtime? (yes|no) + ; If set to yes, when a SIP UA registers successfully, the ip address, + ; the origination port, the registration period, and the username of + ; the UA will be set to database via realtime. If not present, defaults to 'yes'. + +;rtautoclear=yes ; Auto-Expire friends created on the fly on the same schedule + ; as if it had just registered? (yes|no|<seconds>) + ; If set to yes, when the registration expires, the friend will vanish from + ; the configuration until requested again. If set to an integer, + ; friends expire within this number of seconds instead of the + ; registration interval. + +;ignoreregexpire=yes ; Enabling this setting has two functions: + ; + ; For non-realtime peers, when their registration expires, the information + ; will _not_ be removed from memory or the Asterisk database; if you attempt + ; to place a call to the peer, the existing information will be used in spite + ; of it having expired + ; + ; For realtime peers, when the peer is retrieved from realtime storage, + ; the registration information will be used regardless of whether + ; it has expired or not; if it expires while the realtime peer is still in + ; memory (due to caching or other reasons), the information will not be + ; removed from realtime storage + +; Incoming INVITE and REFER messages can be matched against a list of 'allowed' +; domains, each of which can direct the call to a specific context if desired. +; By default, all domains are accepted and sent to the default context or the +; context associated with the user/peer placing the call. +; Domains can be specified using: +; domain=<domain>[,<context>] +; Examples: +; domain=myasterisk.dom +; domain=customer.com,customer-context +; +; In addition, all the 'default' domains associated with a server should be +; added if incoming request filtering is desired. +; autodomain=yes +; +; To disallow requests for domains not serviced by this server: +; allowexternaldomains=no + +; fromdomain=mydomain.tld ; When making outbound SIP INVITEs to + ; non-peers, use your primary domain "identity" + ; for From: headers instead of just your IP + ; address. This is to be polite and + ; it may be a mandatory requirement for some + ; destinations which do not have a prior + ; account relationship with your server. + +[authentication] +; Global credentials for outbound calls, i.e. when a proxy challenges your +; Asterisk server for authentication. These credentials override +; any credentials in peer/register definition if realm is matched. +; +; This way, Asterisk can authenticate for outbound calls to other +; realms. We match realm on the proxy challenge and pick an set of +; credentials from this list +; Syntax: +; auth = <user>:<secret>@<realm> +; auth = <user>#<md5secret>@<realm> +; Example: +;auth=mark:topsecret@digium.com +; +; You may also add auth= statements to [peer] definitions +; Peer auth= override all other authentication settings if we match on realm + +;------------------------------------------------------------------------------ +; Users and peers have different settings available. Friends have all settings, +; since a friend is both a peer and a user +; +; User config options: Peer configuration: +; -------------------- ------------------- +; context context +; permit permit +; deny deny +; secret secret +; md5secret md5secret +; dtmfmode dtmfmode +; canreinvite canreinvite +; nat nat +; callgroup callgroup +; pickupgroup pickupgroup +; language language +; allow allow +; disallow disallow +; insecure insecure +; trustrpid trustrpid +; progressinband progressinband +; promiscredir promiscredir +; useclientcode useclientcode +; accountcode accountcode +; setvar setvar +; callerid callerid +; amaflags amaflags +; call-limit call-limit +; restrictcid restrictcid +; subscribecontext subscribecontext +; mailbox +; username +; template +; fromdomain +; regexten +; fromuser +; host +; port +; qualify +; defaultip +; rtptimeout +; rtpholdtimeout +; sendrpid + +;[sip_proxy] +; For incoming calls only. Example: FWD (Free World Dialup) +; We match on IP address of the proxy for incoming calls +; since we can not match on username (caller id) +;type=peer +;context=from-fwd +;host=fwd.pulver.com + +;[sip_proxy-out] +;type=peer ; we only want to call out, not be called +;secret=guessit +;username=yourusername ; Authentication user for outbound proxies +;fromuser=yourusername ; Many SIP providers require this! +;fromdomain=provider.sip.domain +;host=box.provider.com +;usereqphone=yes ; This provider requires ";user=phone" on URI +;call-limit=5 ; permit only 5 simultaneous outgoing calls to this peer + +;------------------------------------------------------------------------------ +; Definitions of locally connected SIP phones +; +; type = user a device that authenticates to us by "from" field to place calls +; type = peer a device we place calls to or that calls us and we match by host +; type = friend two configurations (peer+user) in one +; +; For local phones, type=friend works most of the time +; +; If you have one-way audio, you propably have NAT problems. +; If Asterisk is on a public IP, and the phone is inside of a NAT device +; you will need to configure nat option for those phones. +; Also, turn on qualify=yes to keep the nat session open + +;[grandstream1] +;type=friend +;context=from-sip ; Where to start in the dialplan when this phone calls +;callerid=John Doe <1234> ; Full caller ID, to override the phones config +;host=192.168.0.23 ; we have a static but private IP address + ; No registration allowed +;nat=no ; there is not NAT between phone and Asterisk +;canreinvite=yes ; allow RTP voice traffic to bypass Asterisk +;dtmfmode=info ; either RFC2833 or INFO for the BudgeTone +;call-limit=1 ; permit only 1 outgoing call and 1 incoming call at a time + ; from the phone to asterisk + ; (1 for the explicit peer, 1 for the explicit user, + ; remember that a friend equals 1 peer and 1 user in + ; memory) +;mailbox=1234@default ; mailbox 1234 in voicemail context "default" +;disallow=all ; need to disallow=all before we can use allow= +;allow=ulaw ; Note: In user sections the order of codecs + ; listed with allow= does NOT matter! +;allow=alaw +;allow=g723.1 ; Asterisk only supports g723.1 pass-thru! +;allow=g729 ; Pass-thru only unless g729 license obtained +;astdb=chan2ext/SIP/grandstream1=1234 ; ensures an astDB entry exists + + +;[xlite1] +; Turn off silence suppression in X-Lite ("Transmit Silence"=YES)! +; Note that Xlite sends NAT keep-alive packets, so qualify=yes is not needed +;type=friend +;regexten=1234 ; When they register, create extension 1234 +;callerid="Jane Smith" <5678> +;host=dynamic ; This device needs to register +;nat=yes ; X-Lite is behind a NAT router +;canreinvite=no ; Typically set to NO if behind NAT +;disallow=all +;allow=gsm ; GSM consumes far less bandwidth than ulaw +;allow=ulaw +;allow=alaw +;mailbox=1234@default,1233@default ; Subscribe to status of multiple mailboxes + + +;[snom] +;type=friend ; Friends place calls and receive calls +;context=from-sip ; Context for incoming calls from this user +;secret=blah +;subscribecontext=localextensions ; Only allow SUBSCRIBE for local extensions +;language=de ; Use German prompts for this user +;host=dynamic ; This peer register with us +;dtmfmode=inband ; Choices are inband, rfc2833, or info +;defaultip=192.168.0.59 ; IP used until peer registers +;mailbox=1234@context,2345 ; Mailbox(-es) for message waiting indicator +;vmexten=voicemail ; dialplan extension to reach mailbox + ; sets the Message-Account in the MWI notify message + ; defaults to global vmexten which defaults to "asterisk" +;restrictcid=yes ; To have the callerid restriced -> sent as ANI +;disallow=all +;allow=ulaw ; dtmfmode=inband only works with ulaw or alaw! + + +;[polycom] +;type=friend ; Friends place calls and receive calls +;context=from-sip ; Context for incoming calls from this user +;secret=blahpoly +;host=dynamic ; This peer register with us +;dtmfmode=rfc2833 ; Choices are inband, rfc2833, or info +;username=polly ; Username to use in INVITE until peer registers + ; Normally you do NOT need to set this parameter +;disallow=all +;allow=ulaw ; dtmfmode=inband only works with ulaw or alaw! +;progressinband=no ; Polycom phones don't work properly with "never" + + +;[pingtel] +;type=friend +;secret=blah +;host=dynamic +;insecure=port ; Allow matching of peer by IP address without matching port number +;insecure=invite ; Do not require authentication of incoming INVITEs +;insecure=port,invite ; (both) +;qualify=1000 ; Consider it down if it's 1 second to reply + ; Helps with NAT session + ; qualify=yes uses default value +;callgroup=1,3-4 ; We are in caller groups 1,3,4 +;pickupgroup=1,3-5 ; We can do call pick-p for call group 1,3,4,5 +;defaultip=192.168.0.60 ; IP address to use if peer has not registred + +;[cisco1] +;type=friend +;secret=blah +;qualify=200 ; Qualify peer is no more than 200ms away +;nat=yes ; This phone may be natted + ; Send SIP and RTP to the IP address that packet is + ; received from instead of trusting SIP headers +;host=dynamic ; This device registers with us +;canreinvite=no ; Asterisk by default tries to redirect the + ; RTP media stream (audio) to go directly from + ; the caller to the callee. Some devices do not + ; support this (especially if one of them is + ; behind a NAT). +;defaultip=192.168.0.4 ; IP address to use until registration +;username=goran ; Username to use when calling this device before registration + ; Normally you do NOT need to set this parameter +;setvar=CUSTID=5678 ; Channel variable to be set for all calls from this device + diff --git a/1.2-netsec/configs/sip_notify.conf.sample b/1.2-netsec/configs/sip_notify.conf.sample new file mode 100644 index 000000000..8b10da555 --- /dev/null +++ b/1.2-netsec/configs/sip_notify.conf.sample @@ -0,0 +1,22 @@ +[polycom-check-cfg] +Event=>check-sync +Content-Length=>0 + +; Untested +[sipura-check-cfg] +Event=>resync +Content-Length=>0 + +; Untested +[grandstream-check-cfg] +Event=>sys-control + +; Untested +[cisco-check-cfg] +Event=>check-sync +Content-Length=>0 + +; Untested - from Snom docs +[reboot-snom] +Event=>reboot +Content-Length=>0 diff --git a/1.2-netsec/configs/skinny.conf.sample b/1.2-netsec/configs/skinny.conf.sample new file mode 100644 index 000000000..d57923d85 --- /dev/null +++ b/1.2-netsec/configs/skinny.conf.sample @@ -0,0 +1,55 @@ +; +; Skinny Configuration for Asterisk +; +[general] +port = 2000 ; Port to bind to, default tcp/2000 +bindaddr = 0.0.0.0 ; Address to bind to +dateFormat = M-D-Y ; M,D,Y in any order (5 chars max) +keepAlive = 120 + +; allow = all +; disallow = + + +; Typical config for 12SP+ +;[florian] +;device=SEP00D0BA847E6B +;model=12SP ; Specific model of device, for button templates + ; Valid models: 12SP, 30VIP, 7910, 7920 (so far) +;version=P002G204 ; Thanks critch +;context=did +;line => 120 ; Dial(Skinny/120@florian) + + +; Typical config for a 7910 +;[duba] ; Device name +;model=7910 ; Device model +;device=SEP0007EB463101 ; Offical identifier +;version=P002F202 ; Firmware version identifier +;host=192.168.1.144 ; +;permit=192.168.0/24 ; Optional, used for authentication +;nat=0 +;callerid="George W. Bush" <202-456-1414> +;mailbox=500 +;callwaiting=1 +;transfer=1 +;threewaycalling=1 +;context=default +;line => 500 ; Dial(Skinny/500@duba) + +; Typical config for a 7940 / ATA +;[support] +;device=SEP0007EB463121 +;nat=0 +;callerid="Customer Support" <810-234-1212> +;mailbox=100 +;context=inbound +;linelabel="Support Line" ; Displays next to the line button on 7940's and 7960s +;line => 100 +;callerid="John Chambers" <408-526-4000> +;context=did +;linelabel="John" +;mailbox=110 +;line => 110 + + diff --git a/1.2-netsec/configs/telcordia-1.adsi b/1.2-netsec/configs/telcordia-1.adsi new file mode 100644 index 000000000..1486aa95e --- /dev/null +++ b/1.2-netsec/configs/telcordia-1.adsi @@ -0,0 +1,83 @@ +; +; Asterisk default ADSI script +; +; +; Begin with the preamble requirements +; +DESCRIPTION "Telcordia Demo" ; Name of vendor +VERSION 0x02 ; Version of stuff +;SECURITY "_AST" ; Security code +SECURITY 0x0000 ; Security code +FDN 0x0000000f ; Descriptor number + +; +; Predefined strings +; +DISPLAY "talkingto" IS "Talking To" "$Call1p" WRAP +DISPLAY "titles" IS "20th Century IQ Svc" +DISPLAY "newcall" IS "New Call From" "$Call1p" WRAP +DISPLAY "ringing" IS "Ringing" + +; +; Begin state definitions +; +STATE "callup" ; Call is currently up +STATE "inactive" ; No active call + +; +; Begin soft key definitions +; +KEY "CB_OH" IS "Block" OR "Call Block" + OFFHOOK + VOICEMODE + WAITDIALTONE + SENDDTMF "*60" + SUBSCRIPT "offHook" +ENDKEY + +KEY "CB" IS "Block" OR "Call Block" + SENDDTMF "*60" +ENDKEY + +; +; Begin main subroutine +; + +SUB "main" IS + IFEVENT NEARANSWER THEN + CLEAR + SHOWDISPLAY "talkingto" AT 1 + GOTO "stableCall" + ENDIF + IFEVENT OFFHOOK THEN + CLEAR + SHOWDISPLAY "titles" AT 1 + SHOWKEYS "CB" + GOTO "offHook" + ENDIF + IFEVENT IDLE THEN + CLEAR + SHOWDISPLAY "titles" AT 1 + SHOWKEYS "CB_OH" + ENDIF + IFEVENT CALLERID THEN + CLEAR + SHOWDISPLAY "newcall" AT 1 + ENDIF +ENDSUB + +SUB "offHook" IS + IFEVENT FARRING THEN + CLEAR + SHOWDISPLAY "ringing" AT 1 + ENDIF + IFEVENT FARANSWER THEN + CLEAR + SHOWDISPLAY "talkingto" AT 1 + GOTO "stableCall" + ENDIF +ENDSUB + +SUB "stableCall" IS + +ENDSUB diff --git a/1.2-netsec/configs/voicemail.conf.sample b/1.2-netsec/configs/voicemail.conf.sample new file mode 100644 index 000000000..fa362c95d --- /dev/null +++ b/1.2-netsec/configs/voicemail.conf.sample @@ -0,0 +1,213 @@ +; +; Voicemail Configuration +; + +; +; NOTE: Asterisk has to edit this file to change a user's password. This does +; note currently work with the "#include <file>" directive for Asterisk +; configuration files. Do not use it with this configuration file. +; + +[general] +; Default formats for writing Voicemail +;format=g723sf|wav49|wav +format=wav49|gsm|wav +; +; WARNING: +; If you change the list of formats that you record voicemail in +; when you have mailboxes that contain messages, you _MUST_ absolutely +; manually go through those mailboxes and convert/delete/add the +; the message files so that they appear to have been stored using +; your new format list. If you don't do this, very unpleasant +; things may happen to your users while they are retrieving and +; manipulating their voicemail. +; +; In other words: don't change the format list on a production system +; unless you are _VERY_ sure that you know what you are doing and are +; prepared for the consequences. +; +; Who the e-mail notification should appear to come from +serveremail=asterisk +;serveremail=asterisk@linux-support.net +; Should the email contain the voicemail as an attachment +attach=yes +; Maximum number of messages per folder. If not specified, a default value +; (100) is used. Maximum value for this option is 9999. +;maxmsg=100 +; Maximum length of a voicemail message in seconds +;maxmessage=180 +; Minimum length of a voicemail message in seconds for the message to be kept +; The default is no minimum. +;minmessage=3 +; Maximum length of greetings in seconds +;maxgreet=60 +; How many miliseconds to skip forward/back when rew/ff in message playback +skipms=3000 +; How many seconds of silence before we end the recording +maxsilence=10 +; Silence threshold (what we consider silence, the lower, the more sensitive) +silencethreshold=128 +; Max number of failed login attempts +maxlogins=3 +; If you need to have an external program, i.e. /usr/bin/myapp called when a +; voicemail is left, delivered, or your voicemailbox is checked, uncomment +; this: +;externnotify=/usr/bin/myapp +; If you need to have an external program, i.e. /usr/bin/myapp called when a +; voicemail password is changed, uncomment this: +;externpass=/usr/bin/myapp +; For the directory, you can override the intro file if you want +;directoryintro=dir-intro +; The character set for voicemail messages can be specified here +;charset=ISO-8859-1 +; The ADSI feature descriptor number to download to +;adsifdn=0000000F +; The ADSI security lock code +;adsisec=9BDBF7AC +; The ADSI voicemail application version number. +;adsiver=1 +; Skip the "[PBX]:" string from the message title +;pbxskip=yes +; Change the From: string +;fromstring=The Asterisk PBX +; Permit finding entries for forward/compose from the directory +;usedirectory=yes +; +; Change the from, body and/or subject, variables: +; VM_NAME, VM_DUR, VM_MSGNUM, VM_MAILBOX, VM_CALLERID, VM_CIDNUM, +; VM_CIDNAME, VM_DATE +; +; Note: The emailbody config row can only be up to 512 characters due to a +; limitation in the Asterisk configuration subsystem. +;emailsubject=[PBX]: New message ${VM_MSGNUM} in mailbox ${VM_MAILBOX} +; The following definition is very close to the default, but the default shows +; just the CIDNAME, if it is not null, otherise just the CIDNUM, or "an unknown +; caller", if they are both null. +;emailbody=Dear ${VM_NAME}:\n\n\tjust wanted to let you know you were just left a ${VM_DUR} long message (number ${VM_MSGNUM})\nin mailbox ${VM_MAILBOX} from ${VM_CALLERID}, on ${VM_DATE}, so you might\nwant to check it when you get a chance. Thanks!\n\n\t\t\t\t--Asterisk\n +; +; You can also change the Pager From: string, the pager body and/or subject. +; The above defined variables also can be used here +;pagerfromstring=The Asterisk PBX +;pagersubject=New VM +;pagerbody=New ${VM_DUR} long msg in box ${VM_MAILBOX}\nfrom ${VM_CALLERID}, on ${VM_DATE} +; +; Set the date format on outgoing mails. Valid arguments can be found on the +; strftime(3) man page +; +; Default +emaildateformat=%A, %B %d, %Y at %r +; 24h date format +;emaildateformat=%A, %d %B %Y at %H:%M:%S +; +; You can override the default program to send e-mail if you wish, too +; +;mailcmd=/usr/sbin/sendmail -t +; +; Users may be located in different timezones, or may have different +; message announcements for their introductory message when they enter +; the voicemail system. Set the message and the timezone each user +; hears here. Set the user into one of these zones with the tz= attribute +; in the options field of the mailbox. Of course, language substitution +; still applies here so you may have several directory trees that have +; alternate language choices. +; +; Look in /usr/share/zoneinfo/ for names of timezones. +; Look at the manual page for strftime for a quick tutorial on how the +; variable substitution is done on the values below. +; +; Supported values: +; 'filename' filename of a soundfile (single ticks around the filename +; required) +; ${VAR} variable substitution +; A or a Day of week (Saturday, Sunday, ...) +; B or b or h Month name (January, February, ...) +; d or e numeric day of month (first, second, ..., thirty-first) +; Y Year +; I or l Hour, 12 hour clock +; H Hour, 24 hour clock (single digit hours preceded by "oh") +; k Hour, 24 hour clock (single digit hours NOT preceded by "oh") +; M Minute, with 00 pronounced as "o'clock" +; N Minute, with 00 pronounced as "hundred" (US military time) +; P or p AM or PM +; Q "today", "yesterday" or ABdY +; (*note: not standard strftime value) +; q "" (for today), "yesterday", weekday, or ABdY +; (*note: not standard strftime value) +; R 24 hour time, including minute +; +; + +; +; Each mailbox is listed in the form <mailbox>=<password>,<name>,<email>,<pager_email>,<options> +; if the e-mail is specified, a message will be sent when a message is +; received, to the given mailbox. If pager is specified, a message will be +; sent there as well. If the password is prefixed by '-', then it is +; considered to be unchangable. +; +; Advanced options example is extension 4069 +; NOTE: All options can be expressed globally in the general section, and +; overriden in the per-mailbox settings, unless listed otherwise. +; +; tz=central ; Timezone from zonemessages above. Irrelevant if envelope=no. +; attach=yes ; Attach the voicemail to the notification email *NOT* the pager email +; saycid=yes ; Say the caller id information before the message. If not described, + ; or set to no, it will be in the envelope +; cidinternalcontexts=intern ; Internal Context for Name Playback instead of extension digits when saying caller id. +; sayduration=no ; Turn on/off the duration information before the message. [ON by default] +; saydurationm=2 ; Specify the minimum duration to say. Default is 2 minutes +; dialout=fromvm ; Context to dial out from [option 4 from the advanced menu] + ; if not listed, dialing out will not be permitted +sendvoicemail=yes ; Context to Send voicemail from [option 5 from the advanced menu] + ; if not listed, sending messages from inside voicemail will not be + ; permitted +; searchcontexts=yes ; Current default behavior is to search only the default context + ; if one is not specified. The older behavior was to search all contexts. + ; This option restores the old behavior [DEFAULT=no] +; callback=fromvm ; Context to call back from + ; if not listed, calling the sender back will not be permitted +; review=yes ; Allow sender to review/rerecord their message before saving it [OFF by default +; operator=yes ; Allow sender to hit 0 before/after/during leaving a voicemail to + ; reach an operator [OFF by default] +; envelope=no ; Turn on/off envelope playback before message playback. [ON by default] + ; This does NOT affect option 3,3 from the advanced options menu +; delete=yes ; After notification, the voicemail is deleted from the server. [per-mailbox only] + ; This is intended for use with users who wish to receive their voicemail ONLY by email. + ; Note: deletevoicemail is provided as an equivalent option for Realtime configuration. +; nextaftercmd=yes ; Skips to the next message after hitting 7 or 9 to delete/save current message. + ; [global option only at this time] +; forcename=yes ; Forces a new user to record their name. A new user is + ; determined by the password being the same as + ; the mailbox number. The default is "no". +; forcegreetings=no ; This is the same as forcename, except for recording + ; greetings. The default is "no". +; hidefromdir=yes ; Hide this mailbox from the directory produced by app_directory + ; The default is "no". + +[zonemessages] +eastern=America/New_York|'vm-received' Q 'digits/at' IMp +central=America/Chicago|'vm-received' Q 'digits/at' IMp +central24=America/Chicago|'vm-received' q 'digits/at' H N 'hours' +military=Zulu|'vm-received' q 'digits/at' H N 'hours' 'phonetic/z_p' + +[default] +; Define maximum number of messages per folder for partcular context. +;maxmsg=50 + +1234 => 4242,Example Mailbox,root@localhost +;4200 => 9855,Mark Spencer,markster@linux-support.net,mypager@digium.com,attach=no|serveremail=myaddy@digium.com|tz=central|maxmsg=10 +;4300 => 3456,Ben Rigas,ben@american-computer.net +;4310 => -5432,Sales,sales@marko.net +;4069 => 6522,Matt Brooks,matt@marko.net,,|tz=central|attach=yes|saycid=yes|dialout=fromvm|callback=fromvm|review=yes|operator=yes|envelope=yes|sayduration=yes|saydurationm=1 +;4073 => 1099,Bianca Paige,bianca@biancapaige.com,,delete=1 +;4110 => 3443,Rob Flynn,rflynn@blueridge.net + + +; +; Mailboxes may be organized into multiple contexts for +; voicemail virtualhosting +; + +[other] +;The intro can be customized on a per-context basis +;directoryintro=dir-company2 +1234 => 5678,Company2 User,root@localhost diff --git a/1.2-netsec/configs/vpb.conf.sample b/1.2-netsec/configs/vpb.conf.sample new file mode 100644 index 000000000..d16283802 --- /dev/null +++ b/1.2-netsec/configs/vpb.conf.sample @@ -0,0 +1,108 @@ +; +; V6PCI/V12PCI config file for VoiceTronix Hardware +; +; Options for [general] section +; +; type = v12pci|v6pci|v4pci +; cards = number of cards +; To use Asterisk indication tones +; indication = 1 +; none,-24db,-18db only for use with OpenLine4 +; ecsuppthres = 0|2048|4096 +; Inter Digit Delay timeout for when collecting DTMF tones for dialling +; from a Station port, in ms +; dtmfidd = 3000 +; To use Asterisk DTMF detection +; ast-dtmf-det=1 +; Used with ast-dtmf-det +; relaxdtmf=1 +; When a native bridge occurs between 2 vpb channels, it will only break +; the connection for '#' and '*' +; break-for-dtmf=no +; Set the maximum period between received rings, default 4000ms +; timer_period_ring=4000 +; +; Options for [interface] section +; board = board_number (1, 2, 3, ...) +; channel = channel_number (1,2,3...) +; mode = fxo|immediate|dialtone -- for type of line and line handling +; context = starting context +; echocancel = on|off (on by default of v4pci, off by default for others) +; callerid = on|off|v23|bell (on => to collect caller ID if available between 1st/2nd rings using vpb functions) +; (v23|bell => collect caller ID using asterisk functions) +; Or for use with FXS channels a '"name" <location>' format can be used to set the channels CID +; +; UseLoopDrop = 0|1 (enables the use of Loop Drop detection, on by default in +; some cases spurious loop-drops can cause unexpected +; hangup detection) +; +; Gain settings +; txgain => Transmit Software Gain (-12 => 12) +; rxgain => Receive Software Gain (-12 => 12) +; txhwgain => Transmit hardware gain (-12 => 12) +; rxhwgain => Receive Hardware gain (-12 => 12) +; +; These are advanced settings and only mentioned for fullnes. +; bal1 => Hybrid balance codec register 1 +; bal2 => Hybrid balance codec register 2 +; bal3 => Hybrid balance codec register 3 +; +; Dial translations - if you want a pause or hook-flash in your dial string +; you can use "w" for pause (wait) or "f" for "hook-flash", eg: +; exten => _9XXX,1,Dial(vpb/g1/ww${EXTEN:${TRUNKMSD}}) +; +; + +[general] +type = v12pci +;type = v6pci +;type = v4pci +cards = 1 + +[interfaces] + +board = 1 +echocancel = on + + +; For OpenLine4 cards +;context = demo +;mode = fxo +;channel = 1 +;channel = 2 +;channel = 3 +;channel = 4 + +; For OpenSwith12 with jumpers at factory default +context = demo +mode = fxo +channel = 9 +channel = 10 +channel = 11 +channel = 12 + +context = local +mode = dialtone +channel = 1 +channel = 2 +channel = 3 +channel = 4 +channel = 5 +channel = 6 +channel = 7 +channel = 8 +; +; For OpenSwitch6 +; Note that V6PCI channel numbers start at 7! +;context = demo +;mode = fxo +;channel = 7 +;channel = 8 + +;mode = dialtone +;channel = 9 +;channel = 10 +;channel = 11 +;channel = 12 + + diff --git a/1.2-netsec/configs/zapata.conf.sample b/1.2-netsec/configs/zapata.conf.sample new file mode 100644 index 000000000..06aa48283 --- /dev/null +++ b/1.2-netsec/configs/zapata.conf.sample @@ -0,0 +1,569 @@ +; +; Zapata telephony interface +; +; Configuration file +; +; You need to restart Asterisk to re-configure the Zap channel +; CLI> reload chan_zap.so +; will reload the configuration file, +; but not all configuration options are +; re-configured during a reload. + + + +[trunkgroups] +; +; Trunk groups are used for NFAS or GR-303 connections. +; +; Group: Defines a trunk group. +; group => <trunkgroup>,<dchannel>[,<backup1>...] +; +; trunkgroup is the numerical trunk group to create +; dchannel is the zap channel which will have the +; d-channel for the trunk. +; backup1 is an optional list of backup d-channels. +; +;trunkgroup => 1,24,48 +;trunkgroup => 1,24 +; +; Spanmap: Associates a span with a trunk group +; spanmap => <zapspan>,<trunkgroup>[,<logicalspan>] +; +; zapspan is the zap span number to associate +; trunkgroup is the trunkgroup (specified above) for the mapping +; logicalspan is the logical span number within the trunk group to use. +; if unspecified, no logical span number is used. +; +;spanmap => 1,1,1 +;spanmap => 2,1,2 +;spanmap => 3,1,3 +;spanmap => 4,1,4 + +[channels] +; +; Default language +; +;language=en +; +; Default context +; +context=default +; +; Switchtype: Only used for PRI. +; +; national: National ISDN 2 (default) +; dms100: Nortel DMS100 +; 4ess: AT&T 4ESS +; 5ess: Lucent 5ESS +; euroisdn: EuroISDN +; ni1: Old National ISDN 1 +; qsig: Q.SIG +; +switchtype=national +; +; Some switches (AT&T especially) require network specific facility IE +; supported values are currently 'none', 'sdn', 'megacom', 'accunet' +; +;nsf=none +; +; PRI Dialplan: Only RARELY used for PRI. +; +; unknown: Unknown +; private: Private ISDN +; local: Local ISDN +; national: National ISDN +; international: International ISDN +; +;pridialplan=national +; +; PRI Local Dialplan: Only RARELY used for PRI (sets the calling number's numbering plan) +; +; unknown: Unknown +; private: Private ISDN +; local: Local ISDN +; national: National ISDN +; international: International ISDN +; +;prilocaldialplan=national +; +; PRI callerid prefixes based on the given TON/NPI (dialplan) +; This is especially needed for euroisdn E1-PRIs +; +; sample 1 for Germany +;internationalprefix = 00 +;nationalprefix = 0 +;localprefix = 0711 +;privateprefix = 07115678 +;unknownprefix = +; +; sample 2 for Germany +;internationalprefix = + +;nationalprefix = +49 +;localprefix = +49711 +;privateprefix = +497115678 +;unknownprefix = +; +; PRI resetinterval: sets the time in seconds between restart of unused +; channels, defaults to 3600; minimum 60 seconds. Some PBXs don't like +; channel restarts. so set the interval to a very long interval e.g. 100000000 +; or 'never' to disable *entirely*. +; +;resetinterval = 3600 +; +; Overlap dialing mode (sending overlap digits) +; +;overlapdial=yes +; +; PRI Out of band indications. +; Enable this to report Busy and Congestion on a PRI using out-of-band +; notification. Inband indication, as used by Asterisk doesn't seem to work +; with all telcos. +; +; outofband: Signal Busy/Congestion out of band with RELEASE/DISCONNECT +; inband: Signal Busy/Congestion using in-band tones +; +; priindication = outofband +; +; If you need to override the existing channels selection routine and force all +; PRI channels to be marked as exclusively selected, set this to yes. +; priexclusive = yes +; +; ISDN Timers +; All of the ISDN timers and counters that are used are configurable. Specify +; the timer name, and its value (in ms for timers). +; +; pritimer => t200,1000 +; pritimer => t313,4000 +; +; To enable transmission of facility-based ISDN supplementary services (such +; as caller name from CPE over facility), enable this option. +; facilityenable = yes +; +; +; Signalling method (default is fxs). Valid values: +; em: E & M +; em_w: E & M Wink +; featd: Feature Group D (The fake, Adtran style, DTMF) +; featdmf: Feature Group D (The real thing, MF (domestic, US)) +; featdmf_ta: Feature Group D (The real thing, MF (domestic, US)) through +; a Tandem Access point +; featb: Feature Group B (MF (domestic, US)) +; fxs_ls: FXS (Loop Start) +; fxs_gs: FXS (Ground Start) +; fxs_ks: FXS (Kewl Start) +; fxo_ls: FXO (Loop Start) +; fxo_gs: FXO (Ground Start) +; fxo_ks: FXO (Kewl Start) +; pri_cpe: PRI signalling, CPE side +; pri_net: PRI signalling, Network side +; gr303fxoks_net: GR-303 Signalling, FXO Loopstart, Network side +; gr303fxsks_cpe: GR-303 Signalling, FXS Loopstart, CPE side +; sf: SF (Inband Tone) Signalling +; sf_w: SF Wink +; sf_featd: SF Feature Group D (The fake, Adtran style, DTMF) +; sf_featdmf: SF Feature Group D (The real thing, MF (domestic, US)) +; sf_featb: SF Feature Group B (MF (domestic, US)) +; e911: E911 (MF) style signalling +; +; The following are used for Radio interfaces: +; fxs_rx: Receive audio/COR on an FXS kewlstart interface (FXO at the +; channel bank) +; fxs_tx: Transmit audio/PTT on an FXS loopstart interface (FXO at the +; channel bank) +; fxo_rx: Receive audio/COR on an FXO loopstart interface (FXS at the +; channel bank) +; fxo_tx: Transmit audio/PTT on an FXO groundstart interface (FXS at +; the channel bank) +; em_rx: Receive audio/COR on an E&M interface (1-way) +; em_tx: Transmit audio/PTT on an E&M interface (1-way) +; em_txrx: Receive audio/COR AND Transmit audio/PTT on an E&M interface +; (2-way) +; em_rxtx: Same as em_txrx (for our dyslexic friends) +; sf_rx: Receive audio/COR on an SF interface (1-way) +; sf_tx: Transmit audio/PTT on an SF interface (1-way) +; sf_txrx: Receive audio/COR AND Transmit audio/PTT on an SF interface +; (2-way) +; sf_rxtx: Same as sf_txrx (for our dyslexic friends) +; +signalling=fxo_ls +; +; For Feature Group D Tandem access, to set the default CIC and OZZ use these +; parameters: +;defaultozz=0000 +;defaultcic=303 +; +; A variety of timing parameters can be specified as well +; Including: +; prewink: Pre-wink time (default 50ms) +; preflash: Pre-flash time (default 50ms) +; wink: Wink time (default 150ms) +; flash: Flash time (default 750ms) +; start: Start time (default 1500ms) +; rxwink: Receiver wink time (default 300ms) +; rxflash: Receiver flashtime (default 1250ms) +; debounce: Debounce timing (default 600ms) +; +rxwink=300 ; Atlas seems to use long (250ms) winks +; +; How long generated tones (DTMF and MF) will be played on the channel +; (in miliseconds) +;toneduration=100 +; +; Whether or not to do distinctive ring detection on FXO lines +; +;usedistinctiveringdetection=yes + +; +; Whether or not to use caller ID +; +usecallerid=yes +; +; Type of caller ID signalling in use +; bell = bell202 as used in US +; v23 = v23 as used in the UK +; dtmf = DTMF as used in Denmark, Sweden and Netherlands +; +;cidsignalling=bell +; +; What signals the start of caller ID +; ring = a ring signals the start +; polarity = polarity reversal signals the start +; +;cidstart=ring +; +; Whether or not to hide outgoing caller ID (Override with *67 or *82) +; +hidecallerid=no +; +; Whether or not to enable call waiting on FXO lines +; +callwaiting=yes +; +; Whether or not restrict outgoing caller ID (will be sent as ANI only, not +; available for the user) +; Mostly use with FXS ports +; +;restrictcid=no +; +; Whether or not use the caller ID presentation for the outgoing call that the +; calling switch is sending. +; +usecallingpres=yes +; +; Some countries (UK) have ring tones with different ring tones (ring-ring), +; which means the callerid needs to be set later on, and not just after +; the first ring, as per the default. +; +;sendcalleridafter=1 +; +; +; Support Caller*ID on Call Waiting +; +callwaitingcallerid=yes +; +; Support three-way calling +; +threewaycalling=yes +; +; Support flash-hook call transfer (requires three way calling) +; Also enables call parking (overrides the 'canpark' parameter) +; +transfer=yes +; +; Allow call parking +; ('canpark=no' is overridden by 'transfer=yes') +; +canpark=yes +; +; Support call forward variable +; +cancallforward=yes +; +; Whether or not to support Call Return (*69) +; +callreturn=yes +; +; Stutter dialtone support: If a mailbox is specified without a voicemail +; context, then when voicemail is received in a mailbox in the default +; voicemail context in voicemail.conf, taking the phone off hook will cause a +; stutter dialtone instead of a normal one. +; +; If a mailbox is specified *with* a voicemail context, the same will result +; if voicemail recieved in mailbox in the specified voicemail context. +; +; for default voicemail context, the example below is fine: +; +;mailbox=1234 +; +; for any other voicemail context, the following will produce the stutter tone: +; +;mailbox=1234@context +; +; Enable echo cancellation +; Use either "yes", "no", or a power of two from 32 to 256 if you wish to +; actually set the number of taps of cancellation. +; +echocancel=yes +; +; Generally, it is not necessary (and in fact undesirable) to echo cancel when +; the circuit path is entirely TDM. You may, however, reverse this behavior +; by enabling the echo cancel during pure TDM bridging below. +; +echocancelwhenbridged=yes +; +; In some cases, the echo canceller doesn't train quickly enough and there +; is echo at the beginning of the call. Enabling echo training will cause +; asterisk to briefly mute the channel, send an impulse, and use the impulse +; response to pre-train the echo canceller so it can start out with a much +; closer idea of the actual echo. Value may be "yes", "no", or a number of +; milliseconds to delay before training (default = 400) +; +;echotraining=yes +;echotraining=800 +; +; If you are having trouble with DTMF detection, you can relax the DTMF +; detection parameters. Relaxing them may make the DTMF detector more likely +; to have "talkoff" where DTMF is detected when it shouldn't be. +; +;relaxdtmf=yes +; +; You may also set the default receive and transmit gains (in dB) +; +rxgain=0.0 +txgain=0.0 +; +; Logical groups can be assigned to allow outgoing rollover. Groups range +; from 0 to 63, and multiple groups can be specified. +; +group=1 +; +; Ring groups (a.k.a. call groups) and pickup groups. If a phone is ringing +; and it is a member of a group which is one of your pickup groups, then +; you can answer it by picking up and dialing *8#. For simple offices, just +; make these both the same +; +callgroup=1 +pickupgroup=1 + +; +; Specify whether the channel should be answered immediately or if the simple +; switch should provide dialtone, read digits, etc. +; +immediate=no +; +; Specify whether flash-hook transfers to 'busy' channels should complete or +; return to the caller performing the transfer (default is yes). +; +;transfertobusy=no +; +; CallerID can be set to "asreceived" or a specific number if you want to +; override it. Note that "asreceived" only applies to trunk interfaces. +; +;callerid=2564286000 +; +; AMA flags affects the recording of Call Detail Records. If specified +; it may be 'default', 'omit', 'billing', or 'documentation'. +; +;amaflags=default +; +; Channels may be associated with an account code to ease +; billing +; +;accountcode=lss0101 +; +; ADSI (Analog Display Services Interface) can be enabled on a per-channel +; basis if you have (or may have) ADSI compatible CPE equipment +; +;adsi=yes +; +; On trunk interfaces (FXS) and E&M interfaces (E&M, Wink, Feature Group D +; etc, it can be useful to perform busy detection either in an effort to +; detect hangup or for detecting busies. This enables listening for +; the beep-beep busy pattern. +; +;busydetect=yes +; +; If busydetect is enabled, it is also possible to specify how many busy tones +; to wait for before hanging up. The default is 4, but better results can be +; achieved if set to 6 or even 8. Mind that the higher the number, the more +; time that will be needed to hangup a channel, but lowers the probability +; that you will get random hangups. +; +;busycount=4 +; +; If busydetect is enabled, it is also possible to specify the cadence of your +; busy signal. In many countries, it is 500msec on, 500msec off. Without +; busypattern specified, we'll accept any regular sound-silence pattern that +; repeats <busycount> times as a busy signal. If you specify busypattern, +; then we'll further check the length of the sound (tone) and silence, which +; will further reduce the chance of a false positive. +; +;busypattern=500,500 +; +; NOTE: In the Asterisk Makefile you'll find further options to tweak the busy +; detector. If your country has a busy tone with the same length tone and +; silence (as many countries do), consider defining the +; -DBUSYDETECT_COMPARE_TONE_AND_SILENCE option. +; +; Use a polarity reversal to mark when a outgoing call is answered by the +; remote party. +; +;answeronpolarityswitch=yes +; +; In some countries, a polarity reversal is used to signal the disconnect of a +; phone line. If the hanguponpolarityswitch option is selected, the call will +; be considered "hung up" on a polarity reversal. +; +;hanguponpolarityswitch=yes +; +; On trunk interfaces (FXS) it can be useful to attempt to follow the progress +; of a call through RINGING, BUSY, and ANSWERING. If turned on, call +; progress attempts to determine answer, busy, and ringing on phone lines. +; This feature is HIGHLY EXPERIMENTAL and can easily detect false answers, +; so don't count on it being very accurate. +; +; Few zones are supported at the time of this writing, but may be selected +; with "progzone" +; +; This feature can also easily detect false hangups. The symptoms of this is +; being disconnected in the middle of a call for no reason. +; +;callprogress=yes +;progzone=us +; +; FXO (FXS signalled) devices must have a timeout to determine whe there was a +; hangup before the line was answered. This value can be tweaked to shorten +; how long it takes before Zap considers a non-ringing line to have hungup. +; +;ringtimeout=8000 +; +; For FXO (FXS signalled) devices, whether to use pulse dial instead of DTMF +; +;pulsedial=yes +; +; For fax detection, uncomment one of the following lines. The default is *OFF* +; +;faxdetect=both +;faxdetect=incoming +;faxdetect=outgoing +;faxdetect=no +; +; Select which class of music to use for music on hold. If not specified +; then the default will be used. +; +;musiconhold=default +; +; PRI channels can have an idle extension and a minunused number. So long as +; at least "minunused" channels are idle, chan_zap will try to call "idledial" +; on them, and then dump them into the PBX in the "idleext" extension (which +; is of the form exten@context). When channels are needed the "idle" calls +; are disconnected (so long as there are at least "minidle" calls still +; running, of course) to make more channels available. The primary use of +; this is to create a dynamic service, where idle channels are bundled through +; multilink PPP, thus more efficiently utilizing combined voice/data services +; than conventional fixed mappings/muxings. +; +;idledial=6999 +;idleext=6999@dialout +;minunused=2 +;minidle=1 +; +; Configure jitter buffers in zapata (each one is 20ms, default is 4) +; +;jitterbuffers=4 +; +; You can define your own custom ring cadences here. You can define up to 8 +; pairs. If the silence is negative, it indicates where the callerid spill is +; to be placed. Also, if you define any custom cadences, the default cadences +; will be turned off. +; +; Syntax is: cadence=ring,silence[,ring,silence[...]] +; +; These are the default cadences: +; +;cadence=125,125,2000,-4000 +;cadence=250,250,500,1000,250,250,500,-4000 +;cadence=125,125,125,125,125,-4000 +;cadence=1000,500,2500,-5000 +; +; Each channel consists of the channel number or range. It inherits the +; parameters that were specified above its declaration. +; +; For GR-303, CRV's are created like channels except they must start with the +; trunk group followed by a colon, e.g.: +; +; crv => 1:1 +; crv => 2:1-2,5-8 +; +; +;callerid="Green Phone"<(256) 428-6121> +;channel => 1 +;callerid="Black Phone"<(256) 428-6122> +;channel => 2 +;callerid="CallerID Phone" <(256) 428-6123> +;callerid="CallerID Phone" <(630) 372-1564> +;callerid="CallerID Phone" <(256) 704-4666> +;channel => 3 +;callerid="Pac Tel Phone" <(256) 428-6124> +;channel => 4 +;callerid="Uniden Dead" <(256) 428-6125> +;channel => 5 +;callerid="Cortelco 2500" <(256) 428-6126> +;channel => 6 +;callerid="Main TA 750" <(256) 428-6127> +;channel => 44 +; +; For example, maybe we have some other channels which start out in a +; different context and use E & M signalling instead. +; +;context=remote +;sigalling=em +;channel => 15 +;channel => 16 + +;signalling=em_w +; +; All those in group 0 I'll use for outgoing calls +; +; Strip most significant digit (9) before sending +; +;stripmsd=1 +;callerid=asreceived +;group=0 +;signalling=fxs_ls +;channel => 45 + +;signalling=fxo_ls +;group=1 +;callerid="Joe Schmoe" <(256) 428-6131> +;channel => 25 +;callerid="Megan May" <(256) 428-6132> +;channel => 26 +;callerid="Suzy Queue" <(256) 428-6233> +;channel => 27 +;callerid="Larry Moe" <(256) 428-6234> +;channel => 28 +; +; Sample PRI (CPE) config: Specify the switchtype, the signalling as either +; pri_cpe or pri_net for CPE or Network termination, and generally you will +; want to create a single "group" for all channels of the PRI. +; +; switchtype = national +; signalling = pri_cpe +; group = 2 +; channel => 1-23 + +; + +; Used for distintive ring support for x100p. +; You can see the dringX patterns is to set any one of the dringXcontext fields +; and they will be printed on the console when an inbound call comes in. +; +;dring1=95,0,0 +;dring1context=internal1 +;dring2=325,95,0 +;dring2context=internal2 +; If no pattern is matched here is where we go. +;context=default +;channel => 1 + |