[Freeswitch-users] Forked dialing with different channelvars set...

kokoska rokoska kokoska.rokoska at post.cz
Thu Jun 5 23:30:03 PDT 2008


Rupa Schomaker (lists) napsal(a):
> I have a seemingly simple problem that I can't figure out how to implement.
> 
> Simplified Problem:
> 
> I'd like to have my cell phone and my deskphone ring at the same time.
> This seems simple, but there is a small caveat.  I need to have a
> channel variable set differently for my cellphone.
> 
> Specifically: voicepulse requires you to have the caller id number and
> caller id name set to the number in order to pass it on to the PSTN.  I
> want to see the callerid name on my deskphone however.
> 
> ===
> 
> Ok, normally, I'd just do a:
> 
> <action application="bridge"
> data="sofia/internal/101%$${domain},sofia/gateway/voicepulse/$${cellnumber}"/>
> 
> but then my cell phone shows Unknown or Blocked when receiving the call.
> 
> If prior to that I do:
> 
> <action application="set"
> data="effective_caller_id_name=${caller_id_number}"/>
> 
> Then I get the correct callerid on my cell, but only the callerid number
> on my deskphone.
> 
> I asked on #freeswitch and had some hints, but they either went over my
> head or I didn't communicate my problem right.
> 
> Using multiple extension entries with continue="yes" doesn't seem to
> execute them in parallel (so the deskphone and the cell don't ring at
> the same time).
> 
> The "obvious" answer is how I implemented this in asterisk -- and maybe
> that is my problem, thinking in terms of asterisk.
> 
> The bridge equivalent would be the dial() app.  This allows me to dial
> back into the dialplan if I use the "local" channel.  This gives a level
> of indirection that would then let me modify the channelvars as necessary.
> 
> The only way I can see to "call" back into the dialplan is to use the
> transfer application.  But that can't do multiple extensions in parallel
> so doesn't solve my problem.
> 
> What am I missing?
> 
> -Rupa
> 

I have looked for parallel "Dial back into the dialplan" few days ago 
and the solution is surprisingly simple (thanks Anthony!):

Start another sofia user agent on different port (let say 5061) and 
brigde the call to it in parallel:

<action application='bridge' 
data='sofia/default/number1 at localhost:5061,sofia/default/number2 at localhost:5061'/>

And than you are back in the default context with 2 parallel calls and 
you can do whatever you want with both of them independently...

Best regards,

kokoska.rokoska





More information about the FreeSWITCH-users mailing list