[asterisk-users] Page() bumps user out of a call

Russ Meyerriecks rmeyerriecks at digium.com
Tue Jun 14 16:25:28 CDT 2011


On 6/14/11 9:26 AM, Cassius Smith wrote:
> Hello all,
> I'm having a problem with my intercom function that I use for under-chin
> paging. I'm running 1.6.2.13 on this server, and we use Linksys SPA-942's
> for our general phones. I have a global defined which has all the SIP
> channels concatenated together - this is ${ALL-PAGE-EXTS}.
>
> The problem comes when a user is on the line, and someone else uses the
> intercom function to page all extensions, the call in progress gets
> disconnected. I'm wondering if there is a way to either:
> 1. dynamically figure out the subset of extensions that are not in a call,
> or
> 2. use some other function that will not bump a call?
>
> Has anyone else run into this?
>
> Thanks
> Cassius
>
> Here is my intercom context:
>
> [intercom]
> exten =>  s,1,Answer
> exten =>  s,n,Playback(beep)
> exten =>  s,n,Set(TIMEOUT(digit)=5)
> exten =>  s,n,WaitExten(10)
>
> exten =>  t,1,NoOp(timeout)
> exten =>  t,n,Playback(sorry-youre-having-problems&goodbye)
> exten =>  t,n,Hangup()
>
> exten =>  *,1,SIPAddHeader(Call-Info:<sip:${SERVER_IP}>\;answer-after=0)
> exten =>  *,n,Page(${ALL-PAGE-EXTS}) ; add all your devices here
>
> exten =>  _XXXX,1,SIPAddHeader(Call-Info:
> <sip:${SERVER_IP}>\;answer-after=0) ; 4 digit extensions
> exten =>  _XXXX,n,Dial(SIP/${EXTEN})

Hey Cassius!
   Nice to hear from you, what crazy country are you deploying Asterisk 
in now? You might want to checkout the DEVICE_STATE() function. Should 
be able to build your ALL-PAGE-EXTS while leaving out the busy 
extensions. Probably not the best solution, but the first one I thought of.

-- 
Russ Meyerriecks
Digium | Linux Kernel Developer



More information about the asterisk-users mailing list