[SR-Users] Is this idea even feasible?

David Villasmil david.villasmil.work at gmail.com
Wed Aug 18 13:40:25 CEST 2021

In freeswitch you have the uuid_hold, etc api:

You call the API uuid_hold [uuid] or uuid_hold off  [uuid] to take the
channel out of hold.

UUID in freeswitch is what uniquely identifies a given channel.

When you say:

“ However, my understanding of a B2BUA is that *it* would then start
the state of the calls itself - whether they're on hold, routing the
transfers, etc.”

This is correct, that’s how B2BUA works, but you can send an API to fs via
ESL (tcp connection on port 8021
 ) to put on hold not just your channel, since that would simply send a
reconly to your app, but also the B-leg of the call.

On Wed, 18 Aug 2021 at 09:45, Antony Stone <
Antony.Stone at kamailio.open.source.it> wrote:

> On Wednesday 18 August 2021 at 00:20:20, Raúl Alexis Betancor Santana
> wrote:
> > On Tuesday 17 August 2021 at 21:22:37, Antony Stone wrote:
> > > On Tuesday 17 August 2021 at 21:55:15, Fred Posner wrote:
> > > > On 8/17/21 2:20 PM, Antony Stone wrote:
> > > > > If not, can anyone suggest something else which could sit in
> between
> > > > > a very basic SIP client and a PBX server, in order to inject these
> > > > > sorts of commands into the path and thereby give me these sorts of
> > > > > extra call capabilities?
> > > >
> > > > This really sounds like a better use case for Asterisk, FreeSWITCH,
> > > > SEMS, or PJSIP.
> > >
> > > I know Asterisk pretty well.
> > >
> > > When you use it as a SIP client to register to another PBX, it is
> > > extremely basic - it can place a call and it can receive a call, but it
> > > has no concept of presence, it cannot send a REINVITE to put a call on
> > > hold, it cannot send a REFER to transfer a call...
> > >
> > > I don't understand how placing this in between my simple client and the
> > > PBX which is handling the call can possibly inject the commands I need.
> >
> > Sorry for telling you this, but if you think that, you don't know
> Asterisk
> > at all.
> No problem - I'm very prepared to learn from experts.
> > You don't need to send a REINVITE to put a call on hold, just change how
> > you handle the RTP of the call if you SIP endpoint doesn't support
> So, for such a simple thing, how could I get Asterisk to change the
> handling
> of the RTP of the call, so that the remote PBX server starts playing its
> music
> on hold to the other party?
> If you can just show me the basics of what dialplan commands I should be
> looking at, I can work out the rest (or ask the Asterisk people).
> > Asterisk knows about presence, it doesn't have full implementation,
> Asterisk certainly knows about presence *when it is the server* telling
> clients *about* the presence of other clients / extensions.
> It knows zero about presence when *it* is a client *asking* for the state
> of
> other extensions on another PBX (at least, that's according to Joshua
> Colp,
> Asterisk developer, when I asked on the Asterisk mailing list).
> > The thing you need it's a B2BUA, and Asterisk, FreeSwitch, YATE, SEMS,
> > either a simple python script using pjsua2 or any of the dozens SIP
> > frameworks out there, will allow you to acomplish your goals
> >
> > If you go the Asterisk road, any of the AMI/ARI documentation will
> explain
> > to you how to handle ongoing calls.
> There is no AMI command to put a call on hold.  There are AMI
> notifications to
> tell you that a call has been put on hold (or resumed) but there is no
> command
> to cause this to happen.  To quote from Joshua Colp: "I know of no way
> from
> AMI to control putting a call on and off hold."
> > You could take any road you like, but not Kamailio, as it's not a B2BUA.
> Okay, thank you for confirming that I'm looking in the wrong place here,
> and
> that Kamailio is not the solution to my needs.
> However, my understanding of a B2BUA is that *it* would then start
> handling
> the state of the calls itself - whether they're on hold, routing the
> transfers, etc.
> I need something which can *tell the existing PBX* to do these things, in
> the
> same way that a competent hardware SIP telephone would tell it.
> If there are multiple ways of achieving what I'm trying to do (even if
> Kamailio isn't one of them), please just point me at something specific
> which
> shows me *how* - telling me "it's simple" or "there are lots of ways of
> doing
> it" doesn't help me to find out *how* I can do it, and the suggestions
> regarding Asterisk are simply in conflict with the advice I've had from
> people
> on the Asterisk list, who say it can't be done.
> I hope someone can point me at just one example of how this requirement
> can be
> achieved - I've tried to keep it as simple as possible, by focusing on
> call
> hold - once I've got that, I can build up the more complex stuff.
> To reiterate, a SIP client places a call to a SIP server; I then need a
> way to
> tell that SIP server to put the call on hold, given that the client itself
> cannot do it.
> Thanks,
> Antony.
> --
> 3 logicians walk into a bar. The bartender asks "Do you all want a drink?"
> The first logician says "I don't know."
> The second logician says "I don't know."
> The third logician says "Yes!"
>                                                    Please reply to the
> list;
>                                                          please *don't* CC
> me.
> __________________________________________________________
> Kamailio - Users Mailing List - Non Commercial Discussions
>   * sr-users at lists.kamailio.org
> Important: keep the mailing list in the recipients, do not reply only to
> the sender!
> Edit mailing list options or unsubscribe:
>   * https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users

David Villasmil
email: david.villasmil.work at gmail.com
phone: +34669448337
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20210818/7c49d0f5/attachment.htm>

More information about the sr-users mailing list