dpodolsky wrote:Looking into the empty response.
Thanks for your prompt reply!
dpodolsky wrote:When you conference calls on the phone, the phone is taking both those calls and then merging the audio on the phone.
dpodolsky wrote:The PBX doesn't know the phone has conferenced two calls it just thinks that the phone is talking to two people at the same time.
So if PBX sees that the phone is on 2 active calls, and it knows that the state of both calls is "talking", why couldn't it return some meaningful state instead of emptiness? E.g. Switchvox could return 2 <line> nodes - one per call, in which case it could also give me something for calls on hold (with status "waiting"). This would allow me to figure out what's going on without using switchvox.currentCalls.getList method, which requires admin credentials.
Another thing that could be very helpful: "call held" and "call retrieved/resumed" event notifications. Right now there is no way to figure out that the call was put on hold.
A little background:
I have a physical SIP phone connected to Switchvox box.
I am writing a desktop application which would allow me to do the following:
1. Login to switchvox (in other words, check user credentials)
2. Initiate an outgoing call.
3. Hang up current call.
4. Update my app state based on Switchvox event notifications (most basic: am I on call, ringing or idle?).
1. and 2. are not a problem.
3. and 4. I was able to implement easily for simple scenarios. Once on a conference (or on hold, or transfering, or anything else that involves complex telephony) both requirements become a pain to implement. Partially due to the problem reported in this thread, and partially because there is no clear mapping between JOB_ID and current call ID (aka src_chan). The later issue with ID inconsistencies was reported on this forum twice with no resolution so far:http://forums.digium.com/viewtopic.php? ... dc#p130547http://forums.digium.com/viewtopic.php? ... dc#p130526
Thanks again for your reply.