I have a bunch of Cisco 7821, we want to migrate them on Cisco Call Manager environment to (FreePBX v14 w/Asterisk 13 - fully patched).
I was able to provision and register them via TFTP/SEPMAC.cnf.xml
They work perfectly fine except for the conference function. When either the hard button or the softkey are pressed you can dial to another extension, answer the call on the other extension (Sangoma phone), but the external call will remain on hold. It works wonder the other way around.
Tried with extensions with the chan_sip driver and the pjsip driver without success.
The Cisco phones have the latest firmware v.12.x
Possibly, the timing of removing the first call from hold is confusing Asterisk.
See if you can make a conference this way, which mimics what most other IP phones do:
Put the first call on hold (using the Hold button).
Make a new call to the third party. Wait until it is connected.
Press Conference, select the held call, press Yes.
If no luck, post a SIP trace of a failed attempt.
I sent you the logs via a private message.
I followed yours steps, the Yes softkey works kind of random.
Conf-Hold-Softkey.txt ==> contains the logs (core set verbose 15) when the Yes softkey was responsive, consequently the conference worked. I forgot to enable the turn on the debug, sorry about that.
Debug_Conf-Hold-Softkey.txt ==> ==> contains the debug logs when the Yes softkey was not responsive.
P.S.: The No softkey is always responsive.
Wow, I’m extremely puzzled. A little background: On cheap IP phones (or ATAs or softphones), the ‘conference’ function is implemented almost entirely in the phone. A three-way call is just two normal calls with the audio bridged in the phone itself. The only unusual thing that Asterisk sees is that the first call is held while the second call is being placed. Other than the re-invites to hold and unhold, Asterisk is unaware that a conference is taking place. This style of conference is usually limited to 3 or 4 parties and often adds unnecessary latency to the call. Better phones such as Polycom can be configured to bridge in the server, avoiding these disadvantages. Of course, the server needs to support the requests. I was under the impression that Asterisk did not, and the 603 status in response to the phone’s REFER requests seemed to confirm that.
This is not new: folks have been having this trouble for more than seven years; see Cisco 79xx/89xx specific local conference bridge issue . AFAICT no one has solved it.
So far, this seemed like a simple problem (though perhaps without a simple solution). Either figure out how to make the phone do the conference internally, or somehow get Asterisk to handle the REFER requests properly.
However, there is a nasty piece of evidence that refutes my simple theory – the conference sometimes works. Between the lack of timestamps and the lack of SIP traces in Conf-Hold-Softkey.txt, I can’t figure out how. Possibly, the phone decided to fall back to bridging internally. Or, a REFER request was properly executed (though it doesn’t appear that the three parties were ever in the same bridge). Or, the calls somehow got ‘crossed’ (in which case I’d expect some one-way audio or terrible quality).
If the working case has good quality (each party can hear the other two well), post a log with SIP debug and I’ll try to figure out how it differs from the failing case.
Thank you so much Stewart for you follow up on this, I appreciate that.
I’ll capture that log as soon as I can.
After trying several times, I haven’t been able to capture the logs when the conference (Yes softkey responsive) works, to be honest I think I was very lucky when it worked that time.
Is there anything else you might need from my end?
Sorry, I don’t believe that I can help. My mental model is that this fails by design – the phone is requesting a service (normally provided by Cisco Call Manager) that Asterisk just doesn’t support. I don’t know what happened in the case where you were successful. Someone more knowledgeable may be able to make sense of your log.
There may be a provisioning option that makes the phone bridge internally; if such exists it may depend on firmware different from what you are running.
Although less convenient, I assume that you can still establish a conference by calling each of the participants, transferring them to a Conference app, then joining the conference yourself. You might be able to automate this with a script, triggered from the user’s computer or a speed dial key on the phone.
If you unearth some information that shows how these phones can be made to conference with Asterisk, I’ll try to help if you have trouble.
This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.