#!/usr/local/bin/perl package Asterisk::Embed; sub { eval "require ARIS::DB"; my $i; my $sounds = "/system2/asterisk/tfexp/sounds"; my $chan_name = shift; my $chan = asterisk_get_channel_by_name($chan_name); for $loop (1..3) { $login = asterisk_getdata($chan,"$sounds/13",10,10000); next if($login eq "hangup"); next unless($login =~ /\d/); $pass = asterisk_getdata($chan,"$sounds/14",10,10000); next if($pass eq "hangup"); if ($login and $pass) { $db = ARIS::DB::init_isp(); $sql="select user_id from dialup_info where user_id=$login and passwd='$pass' and active=1"; $user = $db->sql2str($sql); } else { next; } if ($user) { $i = asterisk_streamfile($chan,"$sounds/17",$AST_DIGIT_ANY,0); return -1 if($i < 0); asterisk_setvariable($chan,"USER_ID",$user); return; } $i = asterisk_streamfile($chan,"$sounds/16",$AST_DIGIT_ANY,0); return -1 if($i < 0); } asterisk_soft_hangup($chan); return -1; }