I have a simple call flow for Inbound call going to an extendion carrier call ===> WITH_ALIASDB ===> extension (on Xlite) Works perfectly getting the call. Issue : - On Xlite I see the call as <TN>@<carrierIP>. I dont want my customers to know what carrier I use and also I want to be in the loop for CDR. - Hanging on either phone will not send a BYE to my server. How do I get Kamailio to be in the SIP ladder for this call? KD
Hello,
What you are seeing is inherent in the nature of a SIP proxy, such as Kamailio.
Kamailio does offer two "topology hiding" modules which can be used to alter topology-revealing headers:
https://kamailio.org/docs/modules/5.1.x/modules/topoh.html https://kamailio.org/docs/modules/5.1.x/modules/topos.html
It goes without saying that these are "clever hacks" — taking advantage of the proxy's involvement in the entire life cycle of the dialog (with Record-Route), and that from a standards-based point of view, the things these modules do are radioactively improper for a proxy to do.
The way these modules work is complicated, and there is no shortage of edge cases and complications with unexpected behaviour. My personal advice, which may differ to that of some of my list colleagues, would be to shunt your calls through a signalling-only B2BUA to solve this problem.
-- Alex
On Fri, May 04, 2018 at 02:51:36PM +0000, KamDev Essa wrote:
I have a simple call flow for Inbound call going to an extendion carrier call ===> WITH_ALIASDB ===> extension (on Xlite) Works perfectly getting the call. Issue :
- On Xlite I see the call as <TN>@<carrierIP>. I dont want my customers to know what carrier I use and also I want to be in the loop for CDR.
- Hanging on either phone will not send a BYE to my server.
How do I get Kamailio to be in the SIP ladder for this call? KD
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Whats the config or architecture look like for shunting calls through a signalling-only B2BUA. Can you please elaborate. Thanks KD On Friday, May 4, 2018, 12:35:21 PM EDT, Alex Balashov abalashov@evaristesys.com wrote:
Hello,
What you are seeing is inherent in the nature of a SIP proxy, such as Kamailio.
Kamailio does offer two "topology hiding" modules which can be used to alter topology-revealing headers:
https://kamailio.org/docs/modules/5.1.x/modules/topoh.html https://kamailio.org/docs/modules/5.1.x/modules/topos.html
It goes without saying that these are "clever hacks" — taking advantage of the proxy's involvement in the entire life cycle of the dialog (with Record-Route), and that from a standards-based point of view, the things these modules do are radioactively improper for a proxy to do.
The way these modules work is complicated, and there is no shortage of edge cases and complications with unexpected behaviour. My personal advice, which may differ to that of some of my list colleagues, would be to shunt your calls through a signalling-only B2BUA to solve this problem.
-- Alex
On Fri, May 04, 2018 at 02:51:36PM +0000, KamDev Essa wrote:
I have a simple call flow for Inbound call going to an extendion carrier call ===> WITH_ALIASDB ===> extension (on Xlite) Works perfectly getting the call. Issue : - On Xlite I see the call as <TN>@<carrierIP>. I dont want my customers to know what carrier I use and also I want to be in the loop for CDR. - Hanging on either phone will not send a BYE to my server. How do I get Kamailio to be in the SIP ladder for this call? KD
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
On Fri, May 04, 2018 at 05:16:39PM +0000, KamDev Essa wrote:
Whats the config or architecture look like for shunting calls through a signalling-only B2BUA. Can you please elaborate.
For starters, you need to pick a signalling-only B2BUA. This can be Asterisk or Freeswitch configured for media bypass, or SEMS or something else.
The architecture would be something like:
Carrier --> B2BUA --> Kamailio --> End-user.
At least, it seems to me that's easiest.
For outbound calls:
$ru = 'sip:destination@host'; $du = 'sip:b2bua.addr';
if(!t_relay()) t_relay();
That's one approach. Depends on the B2BUA. It may be easiest to pass the onward RURI to it in a custom SIP header:
append_hf("X-RURI: sip:destination@host\r\n"); $ru = 'sip:b2bua.addr';
if(!t_relay()) sl_reply_error();
Of course, the way the B2BUA works will dictate what you do with inbound on it as well. The intent would be to pass it onto Kamailio on the B leg.
-- Alex
I am very familiar with Freeswitch and adding that in the design. Thanks for the suggestion. Will update here. thanks again. KD On Friday, May 4, 2018, 1:22:10 PM EDT, Alex Balashov abalashov@evaristesys.com wrote:
On Fri, May 04, 2018 at 05:16:39PM +0000, KamDev Essa wrote:
Whats the config or architecture look like for shunting calls through a signalling-only B2BUA. Can you please elaborate.
For starters, you need to pick a signalling-only B2BUA. This can be Asterisk or Freeswitch configured for media bypass, or SEMS or something else.
The architecture would be something like:
Carrier --> B2BUA --> Kamailio --> End-user.
At least, it seems to me that's easiest.
For outbound calls:
$ru = 'sip:destination@host'; $du = 'sip:b2bua.addr';
if(!t_relay()) t_relay();
That's one approach. Depends on the B2BUA. It may be easiest to pass the onward RURI to it in a custom SIP header:
append_hf("X-RURI: sip:destination@host\r\n"); $ru = 'sip:b2bua.addr';
if(!t_relay()) sl_reply_error();
Of course, the way the B2BUA works will dictate what you do with inbound on it as well. The intent would be to pass it onto Kamailio on the B leg.
-- Alex
That said, there are plenty of people who will tell you that topoh and topos work fine for most unextraordinary use-cases. You may want to give that a shot first for simplicity's sake. But if you run into eccentric problems, don't crawl down the rabbit hole. :-)
On May 4, 2018 1:32:27 PM EDT, KamDev Essa kamdevessa@yahoo.com wrote:
I am very familiar with Freeswitch and adding that in the design. Thanks for the suggestion. Will update here. thanks again. KD On Friday, May 4, 2018, 1:22:10 PM EDT, Alex Balashov abalashov@evaristesys.com wrote:
On Fri, May 04, 2018 at 05:16:39PM +0000, KamDev Essa wrote:
Whats the config or architecture look like for shunting calls
through
a signalling-only B2BUA. Can you please elaborate.
For starters, you need to pick a signalling-only B2BUA. This can be Asterisk or Freeswitch configured for media bypass, or SEMS or something else.
The architecture would be something like:
Carrier --> B2BUA --> Kamailio --> End-user.
At least, it seems to me that's easiest.
For outbound calls:
$ru = 'sip:destination@host'; $du = 'sip:b2bua.addr';
if(!t_relay()) t_relay();
That's one approach. Depends on the B2BUA. It may be easiest to pass the onward RURI to it in a custom SIP header:
append_hf("X-RURI: sip:destination@host\r\n"); $ru = 'sip:b2bua.addr';
if(!t_relay()) sl_reply_error();
Of course, the way the B2BUA works will dictate what you do with inbound on it as well. The intent would be to pass it onto Kamailio on the B leg.
-- Alex
-- Alex
-- Sent via mobile, please forgive typos and brevity.
Nope. I am no novice to Freeswitch, your B2BUA suggestion and is perfectly low on my simplicity scale. I rather go that route than tackle topos and topoh. And topoh needs redis which is currently Greek to me. B2BUA or bust !!!! KD On Friday, May 4, 2018, 1:45:10 PM EDT, Alex Balashov abalashov@evaristesys.com wrote:
That said, there are plenty of people who will tell you that topoh and topos work fine for most unextraordinary use-cases. You may want to give that a shot first for simplicity's sake. But if you run into eccentric problems, don't crawl down the rabbit hole. :-)
On May 4, 2018 1:32:27 PM EDT, KamDev Essa kamdevessa@yahoo.com wrote:
I am very familiar with Freeswitch and adding that in the design. Thanks for the suggestion. Will update here. thanks again. KD On Friday, May 4, 2018, 1:22:10 PM EDT, Alex Balashov abalashov@evaristesys.com wrote:
On Fri, May 04, 2018 at 05:16:39PM +0000, KamDev Essa wrote:
Whats the config or architecture look like for shunting calls
through
a signalling-only B2BUA. Can you please elaborate.
For starters, you need to pick a signalling-only B2BUA. This can be Asterisk or Freeswitch configured for media bypass, or SEMS or something else.
The architecture would be something like:
Carrier --> B2BUA --> Kamailio --> End-user.
At least, it seems to me that's easiest.
For outbound calls:
$ru = 'sip:destination@host'; $du = 'sip:b2bua.addr';
if(!t_relay()) t_relay();
That's one approach. Depends on the B2BUA. It may be easiest to pass the onward RURI to it in a custom SIP header:
append_hf("X-RURI: sip:destination@host\r\n"); $ru = 'sip:b2bua.addr';
if(!t_relay()) sl_reply_error();
Of course, the way the B2BUA works will dictate what you do with inbound on it as well. The intent would be to pass it onto Kamailio on the B leg.
-- Alex
-- Alex
-- Sent via mobile, please forgive typos and brevity.
_______________________________________________ Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
I for one agree with all that.
On May 4, 2018 2:01:04 PM EDT, KamDev Essa kamdevessa@yahoo.com wrote:
Nope. I am no novice to Freeswitch, your B2BUA suggestion and is perfectly low on my simplicity scale. I rather go that route than tackle topos and topoh. And topoh needs redis which is currently Greek to me. B2BUA or bust !!!! KD On Friday, May 4, 2018, 1:45:10 PM EDT, Alex Balashov abalashov@evaristesys.com wrote:
That said, there are plenty of people who will tell you that topoh and topos work fine for most unextraordinary use-cases. You may want to give that a shot first for simplicity's sake. But if you run into eccentric problems, don't crawl down the rabbit hole. :-)
On May 4, 2018 1:32:27 PM EDT, KamDev Essa kamdevessa@yahoo.com wrote:
I am very familiar with Freeswitch and adding that in the design. Thanks for the suggestion. Will update here. thanks again. KD On Friday, May 4, 2018, 1:22:10 PM EDT, Alex Balashov abalashov@evaristesys.com wrote:
On Fri, May 04, 2018 at 05:16:39PM +0000, KamDev Essa wrote:
Whats the config or architecture look like for shunting calls
through
a signalling-only B2BUA. Can you please elaborate.
For starters, you need to pick a signalling-only B2BUA. This can be Asterisk or Freeswitch configured for media bypass, or SEMS or something else.
The architecture would be something like:
Carrier --> B2BUA --> Kamailio --> End-user.
At least, it seems to me that's easiest.
For outbound calls:
$ru = 'sip:destination@host'; $du = 'sip:b2bua.addr';
if(!t_relay()) t_relay();
That's one approach. Depends on the B2BUA. It may be easiest to pass the onward RURI to it in a custom SIP header:
append_hf("X-RURI: sip:destination@host\r\n"); $ru = 'sip:b2bua.addr';
if(!t_relay()) sl_reply_error();
Of course, the way the B2BUA works will dictate what you do with inbound on it as well. The intent would be to pass it onto Kamailio on the B leg.
-- Alex
-- Alex
-- Sent via mobile, please forgive typos and brevity.
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
-- Alex
-- Sent via mobile, please forgive typos and brevity.