SPA-941 Paging Interrupts call

Unanswered Question
  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 0 (0 ratings)
jonathan.vaught Tue, 01/26/2010 - 09:15
User Badges:

I would prefer that it not interrupt the current call...possibly a beep with the option to answer. OR it could combine the incomgin audio streams which was a feature I saw in a release document somewhere in my research.    

Alberto Montilla Tue, 01/26/2010 - 10:47
User Badges:
  • Cisco Employee,

Dear Sir;

Please go to the phone and set autoanswer page to NO, this will make paging to behave like a normal call (it will go call waiting). Note this will affect all paging, not only the ones that comes when the phone is busy.


jonathan.vaught Tue, 01/26/2010 - 10:56
User Badges:

I had already figured that out - the problem with this solution is (as you mention) when the phone is not on a call it rings like a call. We need to retain normal paging functionality when NOT on a call but NOT interrupt the call with the page when on a call. This should be easily accomplished but i can't seem to find the correct setting as other IP phone vendors (namely Aastra) can accomadate this behaviour. Please advise and thanks!

cityofwalsenburg Tue, 01/26/2010 - 18:47
User Badges:

Does 3CX have the ability to check if an extension/device is in use (device status or presence information)?

jonathan.vaught Tue, 01/26/2010 - 20:41
User Badges:

short answer is yes, e-mail me jon at if you have further questions or are in need of 3CX consulting.

Jon Vaught         

cityofwalsenburg Wed, 01/27/2010 - 09:28
User Badges:

You'll have to excuse my ignorance when it comes to 3CX.  We were experiencing the exact same problem with SPA94X and SPA50X phones and wanted the same solution as you.  We finally ended up modifying the dialplan in Asterisk so that the device state is checked on that phone.  If it is in use, the caller is directed to a recording indicating that the called extension is in use and they should try their page again later.

I do not know how similar 3CX is to Asterisk, but I would be more than happy to send you the dialplan logic we use if it would be of any help.

jonathan.vaught Wed, 01/27/2010 - 12:18
User Badges:

Thanks! I think I understand your fix but i'm not sure that will work with 3CX. can you post or e-mail that dialplan so I can take a look at it and see if there is similar functionality within 3CX. Is this a dialplan in Asterisk or within the phone thatyou changed?

cityofwalsenburg Wed, 01/27/2010 - 15:52
User Badges:

The dialplan is within Asterisk.  we use the normal extension number prefaced with a '*' to page an extension, in other words, to page extension 228 the caller would dial *228.

exten => *228,1,GotoIf($["${DEVICE_STATE(${TESTLINE})}" = "INUSE"]?inuse)

exten => *228,2,SIPAddHeader(Call-Info:\; answer-after=0)

exten => *228,3,Dial(${TESTLINE})

exten => *228,4,Hangup()

exten => *228,5(inuse),Playback(exten-in-use)

exten => *228,6,Hangup()

Line-by-line description:

Line 1. Internally Asterisk keeps track of the state of a SIP device, you can access that from the dialplan with the ${DEVICE_STATE(device-id)} variable.  The ${TESTLINE} variable is actually the name of the SIP device.  We started using variables for all the phones because it's very clear which phone we're accessing and the variable names really stick out in a 1000+ line dialplan.  The actual state can be BUSY, RINGING, INUSE, ONHOLD, etc.  We chose not to use BUSY since that is the state that the dnd button on the phone sets, which blocks intercom calls anyway.  If the state is not equal to INUSE, the dialplan proceeds with line 2, if it is, it branches to the (inuse) line, line 5.

Line 2. Standard SIP header used to activate the intercom/paging function on the SPA94x and SPA50XG phones.

Line 3. Go ahead and actually dial the phone.  The reason we don't test for a busy result on dial, is because a single extension can have more than one line key assigned to it.  If the user is on the phone, the phone won't return a 486 (busy here) answer back to the switch, it'll just put the call through on the second line key, or, in the case of a page, put the page right through and place the original call on hold.

Line 4.  Hangup the call when complete.

Line 5. We end up here if the state of the phone came back as "INUSE" in line 1.  Playback a custom recorded message that says the extension is in use and advise the caller to try the page again later.

Line 6.  Hangup after playing the recording.

Like I said, I am completely ignorant when it comes to 3CX, but if you have any way of customizing your dialplan, you might be able to run this by the 3CX support staff and see if they can tell you how to perform the same function in the 3CX dialplan language, or, maybe implement this functionality for you.

Hope this helps lead you to a solution.


This Discussion