SAIL Defaults

From sailpbx
Jump to: navigation, search

back to SARK Main Page

SAIL Default Value Policy

The general rule SAIL/SARK follows is that the /var/lib/asterisk/agi-bin/sarkhpe will impose a default value if the variable is empty. The said binary is bundled into the sail rpm for SME and centOS installs and for others like ARM / Debian, it is provided as a separate RPM.

The units for the variables generally follow Digium API - blame them for any inconsistency.

The values can be set in the sqlite3 database - /opt/sark/db/sark.db - preferably only if it is not settable in the SAIL GUI.

g723 and g729 codecs are available from:

SAIL Defaults

Variable Default Value Units sark.db table GUI Settable Available Since Remarks
LOCALAREA globals No v3.1.1-22, v4.0.0-41 area code prefix to be prepended
LOCALDLEN globals No v3.1.1-22, v4.0.0-41 prepend LOCALAREA if short dial length
IVRKEYWAIT 6 seconds globals No v3.1.1-22, v4.0.0-41
IVRDIGITWAIT 6000 milliseconds globals No v3.1.1-22, v4.0.0-41

Voice Mail Workarounds in SAIL

  • Refer Forum Post
  • Asterisk conf files - asterisk, SAIL and user configs are separated with a cascade of includes.
  • However, although asterisk supports includes it doesn't always follow what's in them.
  • Voicemail is a case in point. Turns out that if voicemail entries were in an included file and a user changes their vmail password in the phone, then asterisk wouldn't look in the includes, so the change would not get done. Therefore everything was moved back into voicemail.conf and includes were suppressed.
  • Therefore in SAIL v3.1.1-22 and v4.0.0, in the file /opt/sark/generator/vmailSQL.php, the lines 41-42 are commented out, but in the equivalent lines in SAIL v3.1.0-145 they were not.
//                "#include sark_vmail_main.conf  \n" .
//                "#include sark_customer_vmail_main.conf  \n") 

Queue Changes in SAIL

SAIL went over to dynamic queues and agents so didn't need generation of agent entries any more. Switch occurred earlier than 3.1.1-22. Refer Forum Post. Hence commented out lines 37-43 in opt/sark/generator/queuesSQL.php.

        foreach ($dbh->query($Agents) as $A_row) { 
            if (in_array($row['pkey'], $A_row)) {  
                $OUT .= 'member => Agent/' . $A_row['pkey'] . "\n";


  • Further info on what the LOCALAREA and LOCALDLEN variables do: They are an aid to local short-dialling over a SIP trunk but, as yet, far from complete. All it does is prepend whatever is in LOCALAREA to the dialled number, but only if the dialled number is LOCALDLEN digits in length. In the UK, local subscriber numbers can be 5,6 or 7 digits in length. Area codes are 4 5 or 6 digits in length. It just means we can dial a short local number when dealing with a SIP trunk and SAIL will prepend the correct area code before it does the dial.