#!/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() { 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);