# MO-call with Osmux enable on 3GPP AoIP msc { hscale=2; ms [label="MS"], bts [label="OsmoBTS"], bsc[label="OsmoBSC"], mgw_bsc[label="OsmoMGW(bsc)"], m_sc[label="MSC"], mgw_msc[label="OsmoMGW(msc)"]; bsc <- m_sc [label="BSSMAP RESET (with extension IE: Osmux Support)"]; bsc -> m_sc [label="BSSMAP RESET ACK (with extension IE: Osmux Support)"]; ...; ms box mgw_msc [label="We assume a SDCCH is already established"]; ...; ms -> bsc [label="DTAP CM Service Request"]; bsc -> m_sc [label="Complete Layer 3 Information DTAP CM Service Request"]; # Allocate MGW/MSC Osmux endpoint m_sc -> mgw_msc [label="MGCP CRCX rtpbridge/*@mgw, X-Osmux: *"]; mgw_msc box mgw_msc [label="Bind to MGW-local Osmux Port (1984)\nAllocate new endpoint 1, MGW's local CID 5"]; mgw_msc -> m_sc [label="MGCP CRCX rtpbridge/1@mgw OK (MGW:1984, X-Osmux: 5)"]; bsc <- m_sc [label="BSSAP ASSGN REQ (3GPP AoIP, extension IE: Osmux CID 5)"]; bts <- bsc [label="RSL CHAN ACT"]; bts -> bsc [label="RSL CHAN ACT ACK"]; ms <- bsc [label="Assignment Command"]; ms -> bsc [label="Assignment Complete"]; ...; # connect BTS RTP with BSC-MGW RTP bts <- bsc [label="IPA CRCX"]; bts box bts [label="Bind to BTS-local RTP Port (1000)"]; bts -> bsc [label="IPA CRCX ACK (BTS:1000)"]; bsc -> mgw_bsc [label="MGCP CRCX rtpbridge/2@mgw (BTS:1000)"]; mgw_bsc box mgw_bsc [label="Bind to MGW-local RTP Port (2000)\nConnect to BTS:1000"]; bsc <- mgw_bsc [label="MGCP CRCX rtpbridge/2@mgw OK (MGW:2000)"]; bts <- bsc [label="IPA MDCX (MGW:2000)"]; bts box bts [label="Connect RTP socket to remote (MGW) RTP Port"]; bts -> bsc [label="IPA MDCX ACK"]; ...; mgw_bsc <- bsc [label="MGCP CRCX rtpbridge/2@mgw (MSC:1984, X-Osmux: 5)"]; mgw_bsc box mgw_bsc [label="Bind to MGW-local Osmux Port (1985)\nConnect to MSC:1984\nAllocate new MGW's local CID 7"]; mgw_bsc -> bsc [label="MGCP CRCX rtpbridge/2@mgw OK (MGW:1985, X-Osmux: 7)"]; ...; bsc -> m_sc [label="BSSAP ASSGN CMPL (3GPP AoIP MGW:1985, extension IE: Osmux CID 7)"]; m_sc box m_sc [label="Connect remote Osmux to MGW addr from ASSGN CMPL"]; m_sc -> mgw_msc [label="MGCP MDCX rtpbridge/1@mgw (MGW:1985, X-Osmux: 7)"]; m_sc <- mgw_msc [label="MGCP MDCX rtpbridge/1@mgw OK (X-Osmux: 5)"]; ...; mgw_bsc <=> mgw_msc [label="Osmux Audio MGW:1985 MSC:1984, CID(uplink):5, CID(downlink):7"]; bts <=> mgw_bsc [label="RTP Audio BTS:1000 MGW:2000"]; ms <=> bts [label="Um Audio (bidirectional)"]; ms <-> m_sc [label="DTAP CC ALERTING"]; }