[[cell_broadcast]] == Cell Broadcast Normally, all user plane data in GSM/GPRS networks are sent in point-to-point channels from the network to the user. Those are called "dedicated" radio channels which exist between the network and one given phone/subscriber at a time. Cell Broadcast is an exception to that rule. It permits user data (so-called SMS-CB data) to be broadcast by the network in a way that can be received by all phones in the coverage area of the given BTS simultaneously. More high-level information can be found at https://en.wikipedia.org/wiki/Cell_Broadcast and the related specification is <<3gpp-ts-23-041>>. === Use Cases Cell Broadcast was used for various different use cases primarily in the 1990ies and early 2000s, including * advertisement of the GPS position of the cell tower you're currently camping on * advertisement of the calling codes of your current "home zone", i.e. a "lower cost short distance" call zone travelling with you as you roam around. More recently, SMS-CB is seeing some uptake by various disaster warning systems, such as * CMAS (Commercial Mobile Alert System), later renamed to WEA (Wireless Emergency Alerts) in the US. * EU-Alert in the European union * Messer Ishi (Rocket Alert) in Israel * ETWS (Earthquake and Tsunami Warning System) in Japan * KPAS (Korean Public Alert System) === Osmocom Cell Broadcast support * OsmoBTS implements the "SMS BROADCAST COMMAND" Message in RSL according to Section 8.5.8 of 3GPP TS 08.58 * OsmoNITB and OsmoBSC implement a VTY command `bts <0-255> smscb-command <1-4> HEXSTRING` to send a given hex-formatted cell broadcast message to a specified BTS [mscgen] ---- include::osmocom-cbs.msc[] ---- ==== What's missing What's missing (for production operation in larger networks) * mechanism to broadcast one (set of) cell broadcast messages from the BSC to multiple/all BTSs, rather than one BTS individually * OsmoBTS reporting of current CBCH load * BSC scheduler scheduling multiple alternating sets of CBCH messages based on the current CBCH load reported by BTS * external interface from BSC to a Cell Broadcast Center (CBC), e.g. according to 3GPP TS 48.049 * an Osmocom implementation of the Cell Broadcast Center (OsmoCBC) which can manage and distribute messages to multiple BSCs and which has an external interface by which cell-broadcast can be entered into the network If you would like to contribute in any of those areas (by means of code or funding), please reach out to us any time. === Message Structure * Each message has a meximum of 15 pages * Each page is 82 bytes of data, resulting in 93 characters in GSM 7-bit default alphabet * Messages are broadcast on logical channels (more like an address) * Subscribers can activate/deactivate selective addresses