<context name="default">
  <!-- 
  if the calling party is the called party, go to their VM
  if the calling party is NOT the called party dial the extension 
  (1000-1019) for 30 seconds and go to voicemail if the 
  call fails (continue_on_fail=true), otherwise hang up after a 
  successful bridge (hangup_after-bridge=true) 
  -->
  <extension name="Local_Extension">
    <condition field="destination_number" expression="^(10[01][0-9])$" continue="on-true">
      <action application="set" data="dialed_ext=$1"/>
    </condition>
    <condition field="destination_number" expression="^${caller_id_number}$">
      <action application="set" data="voicemail_authorized=${sip_authorized}"/>
      <action application="voicemail" data="check default $${domain} ${dialed_ext}"/>
      <anti-action application="set" data="call_timeout=30000"/>
      <anti-action application="set" data="hangup_after_bridge=true"/>
      <anti-actino application="set" data="continue_on_fail=true"/>
      <anti-action application="bridge" data="sofia/$${domain}/${dialed_ext}"/>
      <anti-action application="voicemail" data="default $${domain} ${dialed_ext}"/>
    </condition>
  </extension>                                                                                                                                                 
 
  <!--
  start a dynamic conference with the settings of the 
  "default" conference profile in conference.conf.xml
  -->                                                                                                                                                       
  <extension name="Conferences">                                                                                                                           
    <condition field="destination_number" expression="^(3\d{3})$">                                                                                             
      <action application="conference" data="$1@default"/>                                                                                                     
    </condition>                                                                                                                                               
  </extension>           
 
  <!-- dial the freeswitch conference via IAX-->
  <extension name="FS_Conf_IAX">
    <condition field="destination_number" expression="^888$">
      <action application="bridge" data="iax/guest@conference.freeswitch.org/888"/>
    </condition>
  </extension>

  <extension name="static-park">
    <condition field="destination_number" expression="^8192$">
      <action application="fifo" data="default in undef /ram/swimp.raw"/>
    </condition>
  </extension>
  
  <extension name="unpark">
    <condition field="destination_number" expression="^8193$">
      <action application="answer"/>
      <action application="fifo" data="default out nowait"/>
    </condition>
  </extension>
  
  <!--
  if the number starts with a *393 then strip the *393 
  and dial the remainder of the number out our "fwd" gateway
  -->
  <extension name="FWD">
    <condition field="destination_number" expression="^\*393([\*\d]+)$">
    <!-- Just incase they are using Asterisk let's disable VAD and only use G.711 -->
      <action application="export" data="rtp_disable_vad_out=true"/>
      <action application="export" data="absolute_codec_string=PCMU@20i,PCMA@20i"/>
      <action application="bridge" data="sofia/gateway/fwd/$1"/>
    </condition>
  </extension> 
 
  <!-- a sample IVR  -->
  <extension name="IVR_Demo">
    <condition field="destination_number" expression="5000">
      <action application="ivr" data="demo"/>
    </condition>
  </extension>
 
 
  <!-- 
  Parking extensions... transferring calls to 5900 will park them in a 
  queue. dialing 5901 will let you pull them out of the queue.
  -->
  <extension name="park">
    <condition field="destination_number" expression="^5900$">
      <action application="fifo" data="default in undef soundfiles/swimp.raw"/>
    </condition>
  </extension>
 
  <extension name="unpark">
    <condition field="destination_number" expression="^5901$">
      <action application="answer"/>
      <action application="fifo" data="default out nowait"/>
    </condition>
  </extension> 
 
  <!-- 
  this is a "catchall" extension that will match anything that's 
  unmatched thus far.... uncomment and reloadxml to activate it
  -->
  <!--
  <extension name="catchall">
    <condition>
      <action application="set" data="effective_callerid_name=another noob"/>
      <action application="bridge" data="sofia/$${domain}/888@conference.freeswitch.org"/>
    </condition>
  </extension>
  -->
</context>