[Freeswitch-users] mod_conference: Any way to pass conference PIN in the URI?

Kristian Kielhofner kkielhofner at star2star.com
Mon Oct 13 12:08:33 PDT 2008


On Mon, Oct 13, 2008 at 1:40 PM, Andy Spitzer <woof at nortel.com> wrote:
> Woof!
>
> On Mon, 13 Oct 2008 11:02:49 -0400, Kristian Kielhofner
> <kkielhofner at star2star.com> wrote:
>
>>  Instead of modifying the URI, why not attach your own header:
>> X-conf-pin: 1234
>>  I haven't done it yet, but it might be as simple as:
>> action application="conference" data="confname+${sip_X-conf-pin}">
>
> I don't believe that has the desired effect.  It would seem the above line
> will change the conference PIN based on the value of the header in each
> call, but it will not prevent the caller from being asked to enter the PIN.
>
> Joe wants to have callers that are transfered into the conference from the
> Web UI not to have to enter a PIN via the DTMF keypad.
>
>
> --Woof!
>

Hmmm, looks like I misunderstood the OP.  But this seems even simpler:
why not just create different conditional matches (for the same
conference) in the dialplan based on something you can match to
differentiate callers coming from the web ui, and don't prompt them
for a pin (while prompting everyone else)?

Perhaps something like:

    <extension name="conference-pinskip">
      <condition field="destination_number" expression="^([0-9]\d+)$"/>
      <condition field="${sip_from_host}" expression="192.168.0.5">
        <action application="answer"/>
        <action application="log" data="INFO Conference $1 - skipping pin\n"/>
        <action application="conference" data="$1 at default"/>
      </condition>
    </extension>

    <extension name="conference-pin">
      <condition field="destination_number" expression="^([0-9]\d+)$">
        <action application="answer"/>
        <action application="log" data="INFO Conference $1 - prompting pin\n"/>
        <action application="conference" data="$1 at default+1234"/>
      </condition>
    </extension>

I'm still pretty new at this (and I'm sure there are better ways to do
it) but I *think* this should ask for ping 1234 unless you are coming
from SIP host 192.168.0.5 (at least according to the $sip_from_host,
presumably parsing the host portion of the From: header).  Obviously
replace sip_from_host with a relevant SIP variable and expression with
whatever you want to match...

Am I getting any closer? ;)

-- 
Kristian Kielhofner
http://blog.krisk.org
http://www.submityoursip.com
http://www.astlinux.org
http://www.star2star.com




More information about the FreeSWITCH-users mailing list