Changeset 6176
- Timestamp:
- 07/24/08 20:09:57 (4 months ago)
- Files:
-
- modules/branches/2.5/disa/functions.inc.php (modified) (3 diffs)
- modules/branches/2.5/disa/install.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
modules/branches/2.5/disa/functions.inc.php
r6175 r6176 51 51 $nopass = false; 52 52 53 // delete it incase there was one from before (of course if it was deleted??? 54 // this should all be done properly in class, see pinsets, but for now ... 55 // 56 $filename = "/etc/asterisk/disa-".$item['disa_id'].".conf"; 57 unlink($filename); 53 58 if (isset($item['pin']) && !empty($item['pin']) && (strtolower($item['pin']) != 'no-password')) { 54 59 // Create the disa-$id.conf file 55 $filename = "/etc/asterisk/disa-".$item['disa_id'].".conf";56 60 $fh = fopen($filename, "w+"); 57 61 $pinarr = explode(',' , $item['pin'] ); 58 foreach($pinarr as $pin) { 59 // Don't support remote MWI, too easy for users to break. 60 fwrite($fh, "$pin|disa-dial|".$item['cid']."\n"); 62 if (count($pinarr) > 1) { 63 $is_file = true; 64 foreach($pinarr as $pin) { 65 // Don't support remote MWI, too easy for users to break. 66 fwrite($fh, "$pin\n"); 67 } 68 fclose($fh); 69 chmod($filename, 0660); 70 } else { 71 $is_file = false; 61 72 } 62 fclose($fh);63 chmod($filename, 0660);64 73 } else { 65 74 $nopass = true; … … 76 85 $ext->add('disa', $item['disa_id'], '', new ext_gotoif('$["x${RRES}"="x"]', 'loop')); 77 86 } 78 $ext->add('disa', $item['disa_id'], '', new ext_setvar('_DISA', '"disa,'.$item['disa_id'].',1"')); 79 $ext->add('disa', $item['disa_id'], '', new ext_setvar('_DISACONTEXT', $thisitem['context'])); 87 if (!$nopass) { 88 if ($is_file) { 89 $ext->add('disa', $item['disa_id'], '', new ext_authenticate('/etc/asterisk/disa-'.$item['disa_id'].'.conf')); 90 } else { 91 $ext->add('disa', $item['disa_id'], '', new ext_authenticate($item['pin'])); 92 } 93 } 94 $ext->add('disa', $item['disa_id'], '', new ext_setvar('_DISA', '"disa,'.$item['disa_id'].',newcall"')); 95 $ext->add('disa', $item['disa_id'], 'newcall', new ext_setvar('_DISACONTEXT', $thisitem['context'])); 80 96 $ext->add('disa', $item['disa_id'], '', new ext_setvar('_KEEPCID', 'TRUE')); 81 97 if ($thisitem['hangup'] == 'CHECKED') { … … 85 101 $ext->add('disa', $item['disa_id'], '', new ext_setvar('TIMEOUT(response)', $thisitem['resptimeout'])); 86 102 87 if ($nopass) { 88 if ($item['cid']) { 89 $ext->add('disa', $item['disa_id'], '', new ext_setvar('CALLERID(all)', $item['cid'])); 90 } 91 $ext->add('disa', $item['disa_id'], '', new ext_disa('no-password,disa-dial')); 92 } else { 93 $ext->add('disa', $item['disa_id'], '', new ext_playback('enter-password')); 94 $ext->add('disa', $item['disa_id'], '', new ext_disa('/etc/asterisk/disa-'.$item['disa_id'].'.conf')); 103 if ($item['cid']) { 104 $ext->add('disa', $item['disa_id'], '', new ext_setvar('CALLERID(all)', $item['cid'])); 95 105 } 106 $ext->add('disa', $item['disa_id'], '', new ext_disa('no-password,disa-dial')); 96 107 97 108 // $ext->add('disa', $item['disa_id'], 'end', new ext_hangup('')); modules/branches/2.5/disa/install.php
r6174 r6176 14 14 digittimeout INTEGER, 15 15 resptimeout INTEGER, 16 needconf VARCHAR( 10 ) 16 needconf VARCHAR( 10 ), 17 17 hangup VARCHAR( 10 ) 18 18 );"; … … 54 54 $check = $db->getRow($sql, DB_FETCHMODE_ASSOC); 55 55 if(DB::IsError($check)) { 56 $sql = 'ALTER TABLE `disa` CHANGE `hangup``hangup` VARCHAR( 10 )';56 $sql = 'ALTER TABLE `disa` ADD COLUMN `hangup` VARCHAR( 10 )'; 57 57 $result = $db->query($sql); 58 58 if(DB::IsError($result)) {
