Ronald Wiplinger
2006-Mar-31 01:09 UTC
[Asterisk-Users] How to check if a phone / line is used?
In the past I used SetGroup and CheckGroup to figure out if my allowed providers lines are all used or not. Since most of my provider have given me a single line anyway, I wonder if there is a way to check if this (provider) line is taken already. How can I do that? Same is with the phone. How can I see in CLI if a phone is now in use or not? "Sip show peers" shows me just if it is on-line, but not if it is in a call or not. In the dialplan I could dial the number and if it is busy, it would go to the Voicemail for unavailable or busy. I expect that there is just a test function as well, without trying to call. bye Ronald Wiplinger
Jerry Jones
2006-Mar-31 07:29 UTC
[Asterisk-Users] How to check if a phone / line is used?
Show channels? On Mar 31, 2006, at 2:09 AM, Ronald Wiplinger wrote:> In the past I used SetGroup and CheckGroup to figure out if my > allowed providers lines are all used or not. > Since most of my provider have given me a single line anyway, I > wonder if there is a way to check if this (provider) line is taken > already. > > How can I do that? > > Same is with the phone. How can I see in CLI if a phone is now in > use or not? > "Sip show peers" shows me just if it is on-line, but not if it is > in a call or not. > In the dialplan I could dial the number and if it is busy, it would > go to the Voicemail for unavailable or busy. I expect that there is > just a test function as well, without trying to call. > > > bye > > Ronald Wiplinger > > > _______________________________________________ > --Bandwidth and Colocation provided by Easynews.com -- > > Asterisk-Users mailing list > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-users
Ronald Wiplinger
2006-Apr-01 03:34 UTC
[Asterisk-Users] How to check if a phone / line is used?
Jerry Jones wrote:> Show channels? >Yes, on Linux!!!! bye Ronald Wiplinger> > On Mar 31, 2006, at 2:09 AM, Ronald Wiplinger wrote: > >> In the past I used SetGroup and CheckGroup to figure out if my >> allowed providers lines are all used or not. >> Since most of my provider have given me a single line anyway, I >> wonder if there is a way to check if this (provider) line is taken >> already. >> >> How can I do that? >> >> Same is with the phone. How can I see in CLI if a phone is now in use >> or not? >> "Sip show peers" shows me just if it is on-line, but not if it is in >> a call or not. >> In the dialplan I could dial the number and if it is busy, it would >> go to the Voicemail for unavailable or busy. I expect that there is >> just a test function as well, without trying to call. >> >> >> bye >> >> Ronald Wiplinger >> >> >> _______________________________________________ >> --Bandwidth and Colocation provided by Easynews.com -- >> >> Asterisk-Users mailing list >> To UNSUBSCRIBE or update options visit: >> http://lists.digium.com/mailman/listinfo/asterisk-users > > _______________________________________________ > --Bandwidth and Colocation provided by Easynews.com -- > > Asterisk-Users mailing list > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-users > >
In the dialplan you can use ChanIsAvail command> Show channels? > > > On Mar 31, 2006, at 2:09 AM, Ronald Wiplinger wrote: > >> In the past I used SetGroup and CheckGroup to figure out if my >> allowed providers lines are all used or not. >> Since most of my provider have given me a single line anyway, I >> wonder if there is a way to check if this (provider) line is taken >> already. >> >> How can I do that? >> >> Same is with the phone. How can I see in CLI if a phone is now in use >> or not? >> "Sip show peers" shows me just if it is on-line, but not if it is in >> a call or not. >> In the dialplan I could dial the number and if it is busy, it would >> go to the Voicemail for unavailable or busy. I expect that there is >> just a test function as well, without trying to call. >> >> >> bye >> >> Ronald Wiplinger >> >> >> _______________________________________________ >
Colin Anderson
2006-Apr-05 08:20 UTC
[Asterisk-Users] How to check if a phone / line is used?
ChanIsAvail allows you to see if a channel can *accept* calls, not if it is
currently in use. Here is a script that will fix you up:
checkchannel.agi - returns number of channels in use on a SIP peer
Sets a variable in the dialplan, MYCHANNELS, indicating number of channels
in use
#!/bin/bash
#Connect to the Asterisk console and dump a SIP SHOW CHANNELS command to
grep
#and filter out everything except the peer we are looking for
CHANNEL=`asterisk -rx "SIP SHOW CHANNELS" | grep -a -A0
".201"` #Replace
.201 with the IP address of your SIP peer
#In this example, we have 4 registrations to the peer, you can carve out
unnessisary logic
#Initialize variables - here we are cutting out parts of the output to
create the variables
#You may have to change the location of the cut in order to make it work for
your install - this is for 1.0.9
CURRENTCHANNEL1=${CHANNEL:55:7}
CURRENTCHANNEL2=${CHANNEL:118:7}
CURRENTCHANNEL3=${CHANNEL:181:7}
CURRENTCHANNEL4=${CHANNEL:244:7}
TOTALCHANNELS=0
#If channel 1 is not an empty string and the string equals the ulaw codec,
it must be in use
#therefore increment the TOTALCHANNELS variable
#Replace the string 'ulaw' with the expected codec
#Optionally you could search for the string 'unknown' in order to
determine
that a channel is NOT in use
if [ "${CHANNEL:55:7}" != "" ]
then
if [ $CURRENTCHANNEL1 = "ulaw" ]
then
TOTALCHANNELS=$((TOTALCHANNELS+1))
fi
fi
#And so on - for 1 channel only, delete these 3 other if-fi's
if [ "${CHANNEL:118:7}" != "" ]
then
if [ $CURRENTCHANNEL2 = "ulaw" ]
then
TOTALCHANNELS=$((TOTALCHANNELS+1))
fi
fi
if [ "${CHANNEL:181:7}" != "" ]
then
if [ $CURRENTCHANNEL3 = "ulaw" ]
then
TOTALCHANNELS=$((TOTALCHANNELS+1))
fi
fi
if [ "${CHANNEL:244:7}" != "" ]
then
if [ $CURRENTCHANNEL4 = "ulaw" ]
then
TOTALCHANNELS=$((TOTALCHANNELS+1))
fi
fi
#finally, dump a variable back to Asterisk indicating the number of channels
in use
echo "SET VARIABLE MYCHANNELS \"$TOTALCHANNELS\""
hth
-----Original Message-----
From: Paul Zimm [mailto:pbzinc@dejazzd.com]
Sent: Wednesday, April 05, 2006 8:41 AM
To: Asterisk Users Mailing List - Non-Commercial Discussion
Subject: Re: [Asterisk-Users] How to check if a phone / line is used?
In the dialplan you can use ChanIsAvail command> Show channels?
>
>
> On Mar 31, 2006, at 2:09 AM, Ronald Wiplinger wrote:
>
>> In the past I used SetGroup and CheckGroup to figure out if my
>> allowed providers lines are all used or not.
>> Since most of my provider have given me a single line anyway, I
>> wonder if there is a way to check if this (provider) line is taken
>> already.
>>
>> How can I do that?
>>
>> Same is with the phone. How can I see in CLI if a phone is now in use
>> or not?
>> "Sip show peers" shows me just if it is on-line, but not if
it is in
>> a call or not.
>> In the dialplan I could dial the number and if it is busy, it would
>> go to the Voicemail for unavailable or busy. I expect that there is
>> just a test function as well, without trying to call.
>>
>>
>> bye
>>
>> Ronald Wiplinger
>>
>>
>> _______________________________________________
>
_______________________________________________
--Bandwidth and Colocation provided by Easynews.com --
Asterisk-Users mailing list
To UNSUBSCRIBE or update options visit:
http://lists.digium.com/mailman/listinfo/asterisk-users