Hello there,
As i have experienced working with SEMS, freeswitch and Kamailio while using B2BUA feature, Each of them have pros and cons:
1- The sems is a light sip engine server with several applications (like as sbc) for using b2bua. All incoming and outgoing calls could go to sems server for doing b2bua like this:
Incoming<=======>Kamailio<========>Sems<========>Kamailio<=======>outgoing
2- In sems, you could disable rtp realying. It forces sems to work just as b2bua without anchoring RTP
3- Easy to use different active profiles in routing.
Just a couple of things there are in SEMS. For example, the sems adds itself (local IP) in Via header, and it couldn't be common in b2bua. like this:
.
.
.
INVITE
sip:200@cloud.domain.com;transport=UDP SIP/2.0
Via: SIP/2.0/UDP 10.10.10.200;branch=z9hG4bK2f53.07a3fd9edaa8c8d609ab2ac6b01a087f.0
================================>Kamailio public IPVia: SIP/2.0/UDP 127.0.0.1:5080;received=127.0.0.1;branch=z9hG4bKsPRMNast;rport=5080 ===============================>private loopback sems ipFrom: <
sip:100@cloud.domain.com;transport=UDP>;tag=6FFDB493-60EABB3600016ECD-379F9700
To: <
sip:200@cloud.domain.com;transport=UDP>
CSeq: 10 INVITE
Call-ID: Y2M1ODQxNTZmMjdkZWZjN2U5MmMyYjBmN2Y2OGY1ODQ._leg2
Route: <sip:mo@127.0.0.1:5060;lr>
Max-Forwards: 69
Allow: INVITE, ACK, CANCEL, BYE, NOTIFY, REFER, MESSAGE, OPTIONS, INFO, SUBSCRIBE
User-Agent: Z 3.3.25608 r25552
Content-Type: application/sdp
Contact: <sip:127.0.0.1:5080;transport=udp>
Content-Length: 246
.
.
.
For this reason, Is there a way to avoid this issue?
Also, Why in Kamailio, there is not b2bua module so that perform all b2bua functionality? i know it is possible to do this by using other modules like textops and retransformation ?
Thanks with Best Regards.
Mojtaba