On Tuesday 17 August 2021 at 21:39:50, M S wrote:
Not really, these are PABX features and Kamailio is not such. You would need something like Asterisk or FreeSWITCH which have several options to do such stuff.
No, I am not asking Kamailio to perform the PBX function of putting the call on hold - the PBX can do that, if only it gets the correct instruction from the "phone".
Maybe I didn't explain well. Suppose I have a standard SIP phone (Yealink, Polycom, Grandstream etc) and it's placing and receiving calls through a PBX. Whilst a call is in progress, I can press a "hold" button on the phone and the PBX will put the call on hold (and generally play music to the other party).
I've got the equivalent of a phone without a "hold" button, so I'm looking for something I can place in the network path between the phone and the PBX which can be told to inject the appropriate SIP REINVITE as though it had come from the phone (if only it were capable of sending that). The PBX then puts the call on hold as normal.
I hope that makes things clearer?
Question is how would this media server know when to hold, transfer etc. If the endpoint is a dumb sip softphone as you described?
Because I can send commands in to some API telling kamailio to "send a REINVITE for call reference XXX"?
-------- Original message -------- From: Antony Stone Antony.Stone@kamailio.open.source.it Date: Tue, 17 Aug 2021, 20:20 To: Kamailio Users' Mailing List sr-users@lists.kamailio.org Subject: [SR-Users] Is this idea even feasible? Hi.
I'm looking for a solution to the following problem, and wondering whether Kamailio (with which I have very little experience so far) may be it, or whether I'm thinking in totally the wrong direction.
The problem:
I have a SIP client application which runs on a standard Linux system, and is extremely basic - it can REGISTER in order to receive inbound calls, and it can send INVITEs in order to place outbound calls, and that's about it. It handles media as well - in essence, it's a simple softphone. I can't change it for a more capable one, before anyone suggests that :)
Specifically, this thing cannot send REINVITEs in order to put calls on hold, nor can it handle anything to do with transfers (blind or attended).
I'm looking for something which does have these SIP capabilities which I could put in between this application and the SIP server through which it is placing and receiving calls, so that I can (through some sort of API) cause calls in progress to be put on hold, resumed, blind transferred, or hold-and-attended- transferred.
Does that sound like something Kamailio can do?
If so, can anyone point me in a helpful direction re how to go about it?
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?
Thanks,
Antony.