voxforge.org
VoxForge Dev

Changeset 25

Show
Ignore:
Timestamp:
04/22/07 20:05:57 (2 years ago)
Author:
trevarthan
Message:

Implement channel limits (number of active lines) via an asterisk DB variable. I hate doing something this fragile, but I can't think of any other way to do it at the moment.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/extensions_voxforge.conf

    r24 r25  
    2525exten => s,3,Set(prompts-dir=/voxforge-code/prompts) 
    2626exten => s,4,Set(menu-dir=${prompts-dir}/audio/menu) 
     27exten => s,5,Gosub(sub-voxforge-channel-limit|s|1) 
    2728;exten => s,5,Flite("Welcome to the Vox Forge automated reecording system!") 
    28 exten => s,5,Playback(${menu-dir}/welcome) 
    29 exten => s,6,Goto(custom-voxforge-license|s|1) 
     29exten => s,6,Playback(${menu-dir}/welcome) 
     30exten => s,7,Goto(custom-voxforge-license|s|1) 
    3031exten => i,1,Goto(s|2) 
     32exten => h,1,Gosub(sub-voxforge-decrement-num-active-channels|s|1) 
    3133 
    3234[custom-voxforge-license] 
     
    4749exten => i,1,Background(${menu-dir}/not-a-valid-choice) 
    4850exten => i,2,Goto(s|1) 
     51exten => h,1,Gosub(sub-voxforge-decrement-num-active-channels|s|1) 
    4952 
    5053[custom-voxforge-gender] 
     
    5962exten => i,1,Background(${menu-dir}/not-a-valid-choice) 
    6063exten => i,2,Goto(s|1) 
     64exten => h,1,Gosub(sub-voxforge-decrement-num-active-channels|s|1) 
    6165 
    6266[custom-voxforge-gender-confirm] 
     
    7377exten => i,1,Background(${menu-dir}/not-a-valid-choice) 
    7478exten => i,2,Goto(s|1) 
     79exten => h,1,Gosub(sub-voxforge-decrement-num-active-channels|s|1) 
    7580 
    7681[custom-voxforge-agerange] 
     
    8792exten => i,1,Background(${menu-dir}/not-a-valid-choice) 
    8893exten => i,2,Goto(s|1) 
     94exten => h,1,Gosub(sub-voxforge-decrement-num-active-channels|s|1) 
    8995 
    9096[custom-voxforge-agerange-confirm] 
     
    106112exten => i,1,Background(${menu-dir}/not-a-valid-choice) 
    107113exten => i,2,Goto(s|1) 
     114exten => h,1,Gosub(sub-voxforge-decrement-num-active-channels|s|1) 
    108115 
    109116[custom-voxforge-selectscript] 
     
    394401exten => h,1,Gosub(sub-voxforge-unexpected-hangup-cleanup|s|1) 
    395402 
     403[sub-voxforge-channel-limit] 
     404exten => s,1,GotoIf(${DB_EXISTS(voxforge/channel-limit)}?3) 
     405exten => s,2,Return() 
     406exten => s,3,GotoIf(${DB_EXISTS(voxforge/num-active-channels)}?5) 
     407exten => s,4,Set(DB(voxforge/num-active-channels)=0) 
     408exten => s,5,GotoIf($[${DB(voxforge/num-active-channels)} + 1 > ${DB(voxforge/channel-limit)}]?8) 
     409exten => s,6,Set(DB(voxforge/num-active-channels)=$[${DB(voxforge/num-active-channels)} + 1]) 
     410exten => s,7,Return() 
     411exten => s,8,Flite("All lines are currently busy... Please try again later...") 
     412exten => s,9,Playback(vm-goodbye) 
     413exten => s,10,Hangup() 
     414 
     415[sub-voxforge-decrement-num-active-channels] 
     416exten => s,1,GotoIf($[${DB(voxforge/num-active-channels)} - 1 < 0]?4) 
     417exten => s,2,Set(DB(voxforge/num-active-channels)=$[${DB(voxforge/num-active-channels)} - 1]) 
     418exten => s,3,Return() 
     419exten => s,4,Noop(----- Had to zero voxforge/num-active-channels! Must be a bug! -----) 
     420exten => s,5,Set(DB(voxforge/num-active-channels)=0) 
     421exten => s,6,Return() 
     422 
    396423[sub-voxforge-get-script-num] 
    397424exten => s,1,GotoIf(${DB_EXISTS(voxforge/script-num)}?4) 
     
    472499exten => s, 3,Playback(${menu-dir}/instructions) 
    473500exten => s, 4,Return() 
     501exten => h,1,Gosub(sub-voxforge-decrement-num-active-channels|s|1) 
    474502 
    475503[sub-voxforge-unexpected-hangup-cleanup] 
     
    480508exten => s,5,Noop(----- Only completed ${num-complete} so will not submit -----) 
    481509exten => s,6,System(mv ${session-dir} /voxforge-audio/partial/) 
     510exten => s,7,Gosub(sub-voxforge-decrement-num-active-channels|s|1) 
    482511 
    483512[sub-voxforge-autosubmit] 
     
    488517exten => s,5,System(echo \'-------------------- STOP ${session-ident} --------------------\' >> /voxforge-audio/submit.log) 
    489518exten => s,6,Noop(----- Auto Submit of ${num-complete} phrases - Status:${SYSTEMSTATUS} APPERROR:${APPERROR} FAILURE:${FAILURE} SUCCESS:${SUCCESS} -----) 
     519exten => s,7,Gosub(sub-voxforge-decrement-num-active-channels|s|1) 
    490520 
    491521; vim: set ts=8 sw=2 filetype=asterisk: