SOLVED Default call parking bridges calls

Status
Not open for further replies.

djzort

Member
Feb 28, 2018
76
5
8
41
Sydney, Australia
bytefoundry.com.au
From my very recent install, these are the default call parking settings:
Untitled.png


If im following the logic correctly, in the final stage when $park_in_use == true, the referred_by_user is bridged to the parked caller.

if $park_in_use == false, then the transferred caller is placed in to the parking lot on the $park_lot number

If seems that when someone is already in the lot, $park_in_use == true and the caller being transfered in ends up being bridged with the parked caller. It doesnt seem to be acting on the case of transfering a call in on top of a used lot.

I could be misunderstanding entirely.

I found this example in the mailng list archives, which is far more comprehensive: http://lists.freeswitch.org/pipermail/freeswitch-users/2013-October/100960.html

Also, I was chasing this thread but myself got distracted by some lua parking implementation that still seems to be floating around at http://www.pbxforums.com/threads/call-park-bridging-calls-together.714/

I think there should be another section in between the two last sections, which looks for both park_in_use == true and a referred_by_user, which should send the call back ? rather than dropping it on the other parked call?

Im posting hoping someone else has tweaked the config and got it going right?
 

djzort

Member
Feb 28, 2018
76
5
8
41
Sydney, Australia
bytefoundry.com.au
Untitled.png

the above is what i got working. I found that having * in the ${park_lot} variable broke the regex. for whatever reason \Q${park_lot}\E didnt do what i was hoping - probably the regex is evaluated before the variable is sub'd in... but then the contents of the variable are still considered regex text... weird. also there doesnt seem to be an explicit way to escape variables for regexes. so i moved the captures to avoid the * then placed the * where needed

i think bound that ${cond ${sip_h_Referred_by}} == true, was always failing. So i converted it to a regex form.

the above now works correctly - if you try to park a call on a used parking spot the call bounces back to you.

this is a bug in the fusionpbx config, but alas they have disabled the bug functions in github. i could almost be bothered to send a PR... but i dont want to toss about signing CA's...

hopefully this helps someone
 

djzort

Member
Feb 28, 2018
76
5
8
41
Sydney, Australia
bytefoundry.com.au
Annoyingly this seems to have a race condition in the actual parking of the call. If two extensions park in to an empty slot they seem to be able to land them and customers talk to each other. I have no solution yet and am uncertain how atomic each dialplan stanza in freeswitch is
 
D

Deleted member 1692

Guest
Had that happen also two people parked at the same time and were talking to each other.
 
Status
Not open for further replies.