We have added support for sending SDP via MNCC a long time ago, but so far the SDP section remained empty. Now, implement actually forwarding SDP codec information between SIP and MNCC. The aim is to let the MSC know about all codec choices the remote SIP call leg has to offer, so that finding a codec match between local and remote call leg becomes possible. Store any SDP info contained in incoming SIP and MNCC messages, and send the stored SDP to the other call leg in all outgoing SIP and MNCC messages. In sdp_create_file(), we used to compose fixed SDP -- instead, take the other call leg's SDP as-is, only make sure to modify the mode (e.g. "a=sendrecv") to reflect the current call hold state. The RTP address and codec info in the MNCC structures is now essentially a redundant / possibly less accurate copy of the SDP info, but leave all of that as-is, for backwards compat. There is codec checking that may reject unexpected codecs. The overall/future aim is to leave all codec checking up to the MSC, but so far just leave current behaviour unchanged, until we notice problems. Related: SYS#5066 Related: osmo-ttcn3-hacks Ib2ae8449e673f5027f01d428d3718c006f76d93e Change-Id: I3df5d06f38ee2d122706a9ebffde7db4f2bd6bae
osmo-sip-connector - Osmocom SIP connector
This implements an interface between the MNCC (Mobile Network Call Control) interface of OsmoMSC (and also previously OsmoNITB) and SIP.
Call identities can be either the MSISDN or the IMSI of the subscriber.
Requirements of Equipment
- DTMF need to be sent using SIP INFO messages. DTMF in RTP is not supported.
- BTS+PBX and SIP connector+PBX must be in the same network (UDP must be able to flow directly between these elements)
- No handover support.
- IP based BTS (e.g. Sysmocom sysmoBTS but no Siemens BS11)
- No emergency calls
PT of RTP needs to match the one used by the BTS. E.g. AMR needs to use the same PT as the BTS. This is because rtp_payload2 is not yet supported by the osmo-bts software.
AMR SDP file doesn't include the mode-set params and allowed codec modes. This needs to be configured in some way.
You can find the osmo-sip-connector issue tracker and wiki online at https://osmocom.org/projects/osmo-sip-conector and https://osmocom.org/projects/osmo-sip-conector/wiki
You can clone from the official osmo-msc.git repository using
git clone https://gitea.osmocom.org/cellular-infrastructure/osmo-sip-connector
There is a web interface at https://gitea.osmocom.org/cellular-infrastructure/osmo-sip-connector
User Manuals and VTY reference manuals are [optionally] built in PDF form as part of the build process.
Discussions related to osmo-sip-connector are happening on the email@example.com mailing list, please see https://lists.osmocom.org/mailman/listinfo/openbsc for subscription options and the list archive.
Please observe the Osmocom Mailing List Rules when posting.
Our coding standards are described at https://osmocom.org/projects/cellular-infrastructure/wiki/Coding_standards
We us a gerrit based patch submission/review process for managing contributions. Please see https://osmocom.org/projects/cellular-infrastructure/wiki/Gerrit for more details
The current patch queue for osmo-sip-connector can be seen at https://gerrit.osmocom.org/#/q/project:osmo-sip-connector+status:open