[Freeswitch-users] valet_park and caller Id number

Preston Hagar prestonh at gmail.com
Fri Apr 27 20:18:06 UTC 2018

Just thought I would send a followup in case someone ever runs into the
same problem and comes across this thread later.

We ended up having to modify mod_valet_parking.c to pull in the
caller_id_number channel variable and then added it as an

Then in sofia_presence.c we edited the section that builds the presence XML
for parked calls and grabbed that caller ID number and put it in the
<remote><identity display="" section instead of just having the word "park"
hardcoded like it is now.

We now get caller Id numbers on things like Voice Operator Panel by having
it monitor the presence on the parked extensions.

If anyone ever needs the code, feel free to contact me and I'm happy to

On Thu, Apr 19, 2018 at 1:23 PM, Preston Hagar <prestonh at gmail.com> wrote:

> I've setup mod_valet_park to have a set of "parking slots" so that our
> receptionist can park the calls in, page for someone to pickup, and then
> that person can dial in and pick up.  That is all working well.
> I'm using Voice Operator Panel (VOP) for the receptionist software and
> want them to be able to monitor presence on the parking slots so that they
> can see which ones have calls parked that haven't been picked up.  I'd also
> like them to be able to see the caller id of the call parked in each slot.
> VOP is monitoring presence fine, but for callerId it just shows "park" as
> the number.  I traced the presence packets in the console and the problem
> is that in the remote->identity display section of the notify packet, it
> has "park" as the value to display, instead of the caller id number parked
> there.
> (see example XML below).
> I have a couple of questions:
> 1.  Is it even possible to get mod_valet_park/freeswitch to report the
> parked caller id number in presence requests in the current
> mod_valet_park?  If so, how is it done?
> 2.  If it isn't in the current code, can anyone point me to the code block
> that generates that remote XML section of the presence notification?  I
> poked around in the valet_send_presence function of mod_valet_parking.c,
> but can't seem to figure out how that block is built.  I will admit that
> I'm still getting up to speed on how Presence works in FreeSWITCH.
> Thanks for your help!
> Here is a sample notify block:
> <?xml version="1.0"?>
>       <dialog-info xmlns="urn:ietf:params:xml:ns:dialog-info" version="0"
> state="full" entity="sip:park+8001 at pbx.myfreeswitchdomain.com">
>         <dialog id="8001" direction="recipient">
>          <state>confirmed</state>
>           <local>
>              <identity display="park">sip:8001 at pbx.myfreeswitchdomain.com
> ;proto=park</identity>
>               <target uri="sip:8001 at pbx.myfreeswitchdomain.com;proto=
> park">
>                 <param pname="+sip.rendering" pvalue="no"/>
>                </target>
>             </local>
>             <remote>
>               <identity display="park">sip:8001</identity>
>               <target uri="sip:park+8001 at pbx.myfreeswitchdomain.com"/>
>             </remote>
>            </dialog>
>         </dialog-info>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20180427/8050c90e/attachment.html>

More information about the FreeSWITCH-users mailing list