Re: [asterisk-users] Simple Queue Problem

2009-06-15 Thread Lenz Emilitri
You could try this one:
http://www.voip-info.org/wiki/view/Asterisk+func+Devstate
If I can add a warning, be wary of having both ACD (Queue) and non-ACD
traffic on the same operator - you risk having awful performance.
Just my two eurocents,
l.

2009/6/12 Lee, John (Sydney) john@compuware.com

 I am running Asterisk 1.4.21.2

 For reception, I defined a simple queue with one SIP phone as the only
 member.

 When I receive an incoming call, I test QUEUE_WAITING_COUNT to see if it
 is  0.
 If it is  0, then I will playback a message to tell the caller to be
 patient and then do a Queue(queue-name).
 If QUEUE_WAITING_COUNT is zero, then I will just Queue(queue-name, r)
 to ring the receptionist phone without playing any message.

 A problem arises if the receptionist is talking to someone on the phone.
 In this scenario, QUEUE_WAITING_COUNT is also zero but I will need to
 playback a pls-be-patient message as well.

 So, I need to find out whether the receptionist phone is busy even if
 QUEUE_WAITING_COUNT = 0.

 Do you know if there is anyway, without dialling a SIP channel, I can
 check if a SIP extension is engaged or not?




 ___
 -- Bandwidth and Colocation Provided by http://www.api-digital.com --

 asterisk-users mailing list
 To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users




-- 
Loway - home of QueueMetrics - http://queuemetrics.com
___
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] Simple Queue Problem

2009-06-15 Thread Danny Nicholas
I posted a simple PERL agi that uses hints to do a similar thing to Devstate
last week.  Here it is:

#!/usr/bin/perl

 

use strict;

use warnings;

 

# define variables

# show hints will get hint information from the dialplan

my $cmda = '/usr/sbin/asterisk -rx show hints ';

my $towatch = $ARGV[0];

 

# turn off I/O buffering

$| = 1;

 

# read the AGI environment

while (STDIN) {

   chomp($_);

   last if 0 == length($_);

   }

 

# assume idle

print STDOUT SET VARIABLE LINESTAT \Idle\\n;

STDIN;

 

# get trunk information

$SIG{'PIPE'} = 'IGNORE';

open (my $trunk_info, $cmda) or exit;

while   ($trunk_info) {

   if (($_ =~ /internal/)  ($_ =~ /$towatch/)) {

  my $c = unpack(x74 a16, $_);

  $c =~ s/\s//gx;

  print STDOUT SET VARIABLE LINESTAT \$c\\n;

  STDIN;

  }

   }

close $trunk_info;

 

Dialplan: exten = 2100,1,Noop(dial 102 after checking sippeer)

exten = 2100,n,Set(LINESTAT=Idle)

exten = 2100,n,AGI(steve.agi|102)

exten = 2100,n,Wait(3)

exten = 2100,n,Verbose(status is ${LINESTAT})

exten = 2100,n,Gotoif($[${LINESTAT} != Idle]?inuse)

exten = 2100,n,Dial(SIP/102,20,m)

exten = 2100,n,Background(vm-goodbye)

exten = 2100,n,Hangup

exten = 2100,n(inuse),Voicemail(1...@default)

exten = 2100,n,Background(vm-goodbye)

 

just change 102 to your receptionists number

 

  _  

From: asterisk-users-boun...@lists.digium.com
[mailto:asterisk-users-boun...@lists.digium.com] On Behalf Of Lenz Emilitri
Sent: Monday, June 15, 2009 5:10 AM
To: Asterisk Users Mailing List - Non-Commercial Discussion
Subject: Re: [asterisk-users] Simple Queue Problem

 

You could try this one:
http://www.voip-info.org/wiki/view/Asterisk+func+Devstate

If I can add a warning, be wary of having both ACD (Queue) and non-ACD
traffic on the same operator - you risk having awful performance.

Just my two eurocents,

l.

 

2009/6/12 Lee, John (Sydney) john@compuware.com

I am running Asterisk 1.4.21.2

For reception, I defined a simple queue with one SIP phone as the only
member.

When I receive an incoming call, I test QUEUE_WAITING_COUNT to see if it
is  0.
If it is  0, then I will playback a message to tell the caller to be
patient and then do a Queue(queue-name).
If QUEUE_WAITING_COUNT is zero, then I will just Queue(queue-name, r)
to ring the receptionist phone without playing any message.

A problem arises if the receptionist is talking to someone on the phone.
In this scenario, QUEUE_WAITING_COUNT is also zero but I will need to
playback a pls-be-patient message as well.

So, I need to find out whether the receptionist phone is busy even if
QUEUE_WAITING_COUNT = 0.

Do you know if there is anyway, without dialling a SIP channel, I can
check if a SIP extension is engaged or not?




___
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
  http://lists.digium.com/mailman/listinfo/asterisk-users




-- 
Loway - home of QueueMetrics - http://queuemetrics.com

___
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

[asterisk-users] Simple Queue Problem

2009-06-12 Thread Lee, John (Sydney)
I am running Asterisk 1.4.21.2

For reception, I defined a simple queue with one SIP phone as the only
member.

When I receive an incoming call, I test QUEUE_WAITING_COUNT to see if it
is  0.
If it is  0, then I will playback a message to tell the caller to be
patient and then do a Queue(queue-name).
If QUEUE_WAITING_COUNT is zero, then I will just Queue(queue-name, r)
to ring the receptionist phone without playing any message.

A problem arises if the receptionist is talking to someone on the phone.
In this scenario, QUEUE_WAITING_COUNT is also zero but I will need to
playback a pls-be-patient message as well.

So, I need to find out whether the receptionist phone is busy even if
QUEUE_WAITING_COUNT = 0.

Do you know if there is anyway, without dialling a SIP channel, I can
check if a SIP extension is engaged or not?




___
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users