osmo-msc/tests
Neels Hofmeyr 8dd1646f0b [codecs filter] send + receive SDP via MNCC
Transmit and receive full SDP information via MNCC, to accurately pass
codecs choices between the call legs.

In msc_vlr_test_call.c test_call_mt(), show that when receiving MNCC,
the codec information in SDP overrules the Bearer Cap codec information
-- we expect to still receive inaccurate Bearer Cap from e.g.
osmo-sip-connector, because we have chosen to add SDP to MNCC instead of
trying to fix the codecs represented in Bearer Cap.

For internal MNCC, the MT call leg now knows which codec the MO has
chosen and assigned.

For external MNCC, osmo-sip-connector receives SDP about our codecs
choices and sends it in SIP messages, and we also receive the full SDP
information from the remote SIP leg.

Update the SDP in codec_filter every time it is received, to always have
the latest SDP information from the remote leg.

 CC              MNCC
 | ---ALERTING--> |     add local side SDP to MNCC msg
 | <--ALERTING--- |     store remote side SDP
 | <--SETUP-RESP- |     store remote side SDP
 | --SETUP-CNF--> |     add local side SDP to MNCC msg
 | -RTP-CREATE--> |     use codec_filter, add local side SDP to MNCC msg
 | <-RTP-CONNECT- |     store remote side SDP

There still is one problem: when initiating MNCC, we do not yet know the
RTP address and port to be used for the CN side, because the CN CRCX
happens later. So far we send 0.0.0.0:0 as RTP endpoint in the SDP,
until the CN CRCX is done. A subsequent patch moves CN CRCX to an
earlier time, adding proper RTP information right from the start.

Related: SYS#5066
Change-Id: Ie0668c0e079ec69da1532b52d00621efe114fc2c
2023-03-18 03:05:34 +01:00
..
db_sms tests: use -no-install libtool flag to avoid ./lt-* scripts 2023-03-11 04:54:09 +07:00
mncc tests: use -no-install libtool flag to avoid ./lt-* scripts 2023-03-11 04:54:09 +07:00
msc_vlr [codecs filter] send + receive SDP via MNCC 2023-03-18 03:05:34 +01:00
sdp_msg tests: use -no-install libtool flag to avoid ./lt-* scripts 2023-03-11 04:54:09 +07:00
smpp tests: use -no-install libtool flag to avoid ./lt-* scripts 2023-03-11 04:54:09 +07:00
sms_queue tests: use -no-install libtool flag to avoid ./lt-* scripts 2023-03-11 04:54:09 +07:00
Makefile.am tests: Remove sms.db{-wal,-shm} files, not just sms.db 2022-05-16 17:44:01 +02:00
atlocal.in remove further files and autotest/autoconf bits irrelevant to osmo-msc 2017-10-03 09:44:23 +08:00
ctrl_test_runner.py osmoappdesc.py, tests: switch to python 3 2019-12-12 09:29:19 +00:00
smpp_test_runner.py osmoappdesc.py, tests: switch to python 3 2019-12-12 09:29:19 +00:00
stubs.c Make esme struct shared 2022-09-15 20:47:37 +07:00
test_neighbor_ident.vty vty/cfg: add missing write-back of inter-BSC and inter-MSC HO config 2019-05-09 02:06:42 +02:00
test_nodes.vty Introduce support for libosmo-mgcp-client MGW pooling 2022-10-19 18:27:15 +02:00
testsuite.at MNCC v6: add optional SDP to the socket protocol 2019-11-28 02:52:55 +01:00
vty_test_runner.py libmsc: move subscriber expiration timer T3212 to libvlr 2020-01-25 12:49:42 +07:00