All pastes #457 Raw Edit

avizion agi

public text v1 · immutable
#457 ·published 2004-08-04 13:35 UTC
rendered paste body
#!/usr/bin/perl

use Asterisk::AGI;

$AGI = new Asterisk::AGI;
my %input = $AGI->ReadParse();

my $conf = "/etc/asterisk/queues.conf";
my($my_penalty,%penalties);
my $my_type = $input{'type'};
my $my_queue = $AGI->get_variable('ARG1');
my $my_ext = $AGI->get_variable('ARG2');
my $my_user = "$my_type/$my_ext";

open(CONF, "<$conf");
while(<CONF>) {
        chomp;
        if( /^member.*\/([0-9]+),([0-9]+)/ ) {
                $penalties{$1} = $2;
                if( $my_ext eq $1 ) {
                        $my_penalty = $2;
                }
        }
}
close(CONF);

$ret = $AGI->exec("AddQueueMember", "$my_queue|$my_user|$my_penalty");

if($ret < 0) {
    $AGI->exec("Playback", "agent-alreadyon");
}
else {
    $AGI->exec("Playback", "agent-loginok");
}

exit(0);