Skip to main content

OmniLCS Web Interface Guide

The OmniLCS Control Panel is a real-time web interface served over HTTPS on port 443. It is built with Phoenix LiveView, providing live-updating views without page reloads. All pages auto-refresh every 2-3 seconds.

Overview of Pages

The navigation bar presents pages in this order:

PagePathDescription
Dashboard/dashboardSystem overview with key metrics
Location/locationLocation services testing interface
Cells/cellsCell database management
Diameter/diameterDiameter peer monitoring
CBC 2G/cbc2G CBSP monitoring
CBC 3G/cbc3g3G SABP monitoring
CBC 4G/cbc4g4G SBC-AP broadcast composer and monitoring
CAP Alerts/capCAP alert ingestion, approval, and broadcast monitoring
GMLC / Le/gmlcGMLC Le interface monitoring, deferred session management
Application/applicationOTP application resource viewer (built-in)
Configuration/configurationRuntime configuration viewer (built-in)
Log/logReal-time log viewer (built-in)

Dashboard

Path: /dashboard Refresh: Every 2 seconds

OmniLCS Dashboard

The dashboard provides a high-level operational overview of the entire OmniLCS system.

Statistics Cards

Four summary cards across the top:

CardDescription
Active SessionsNumber of in-progress location sessions
Total RequestsTotal location requests processed since startup
Success RatePercentage of completed vs total requests
Avg Response TimeAverage positioning duration in milliseconds

Recent Location Requests

A table showing the 20 most recent location sessions with columns:

ColumnDescription
IMSIUE identifier
MethodPositioning method (Cell, E-CID, GNSS, OTDOA, Hybrid)
MMEMME host that originated the request
TimeRequest timestamp (HH:MM:SS)
StatusColor-coded badge (Active, Completed, Error, Timeout)

Connected Peers

List of SLs (LCS-AP) and Diameter peers in "Connected" state, showing:

  • Peer hostname
  • Interface type (SLs or Diameter)

System Status

Indicator lights for subsystem health:

IndicatorGreenYellowRed
SLs Interface (LCS-AP)At least 1 MME SCTP association established--No MME connections
Diameter ServiceAt least 1 peer connected--No peers connected
Cell DatabaseCells loaded0 cells--

Location

Path: /location Refresh: Every 2 seconds

Location Services

Interactive location services testing interface for manually requesting UE positions.

Method Selector

Toggle buttons to select the positioning method:

MethodDescription
CellCell ID based, fastest, coarsest accuracy
E-CIDEnhanced Cell ID using eNB measurements via LPPa
GNSSGPS/GNSS via LPP, highest accuracy
OTDOAMultilateration from PRS measurements
HybridCombined methods with fallback

Each method shows a description panel explaining how it works.

Request Form

  • IMSI Input: Enter the IMSI of the UE to locate (e.g., 999990000000001)
  • Request Location Button: Sends the location request asynchronously

Requests run as background tasks. A spinning indicator shows while the request is in progress.

Session Counts

Summary badges showing:

  • Total sessions
  • Active sessions
  • Completed sessions
  • Error count
  • Results received

Session History Table

All sessions sorted by creation time (newest first):

ColumnDescription
IMSIUE identifier
MethodPositioning method
MMETarget MME host
TimeSession creation time
DurationTime to complete (ms or seconds)
StatusActive, Completed, Error, Timeout

Completed sessions expand to show:

  • Coordinates: Latitude and longitude
  • Uncertainty: Position uncertainty in meters
  • Confidence: Confidence percentage
  • Source: Actual positioning source used
  • Map: Embedded OpenStreetMap showing the position

Error sessions expand to show the error reason.

Notifications

Toast notifications appear for:

  • Request initiated (info)
  • Location retrieved (success, with coordinates)
  • Location failed (error, with reason)

Notifications auto-dismiss after 5 seconds.

SLs Interface

Path: /sls Refresh: Every 2 seconds

SLs Interface

Monitors the SLs (LCS-AP) interface between the E-SMLC and connected MMEs. Shows SCTP association status and connected MME peers.

Interface Status

Displays the LCS Application Protocol (LCS-AP) interface status:

  • Protocol reference (3GPP TS 29.171)
  • Listening configuration (PPID 29, port 9082)
  • Number of connected MME peers
  • Green/red indicator

Statistics

CardDescription
Connected MMEsNumber of active SCTP associations to MMEs
Total AssociationsTotal SCTP association count

MME Peers Panel

List of connected MME SCTP associations showing peer hostname and connection state.

Cell Database

Path: /cells Refresh: Every 2 seconds

Cell Database

Manages the cell position database used for Cell ID positioning and OTDOA calculations.

Header Controls

ControlDescription
Cell countTotal number of cells in the database
Last syncTimestamp and result of the last InfluxDB sync
Sync from InfluxDBTrigger immediate InfluxDB cell sync
Map View / Table ViewToggle between table and map display
Import JSONOpen JSON import form
Add CellOpen manual cell entry form

Search cells by Cell ID, PCI, EARFCN, cell name, or source.

Table View

Columns displayed:

ColumnDescription
Cell IDUnique cell identifier
PCIPhysical Cell Identity
EARFCNRadio frequency channel number
LatitudeCell latitude
LongitudeCell longitude
PRS BWPRS bandwidth in resource blocks
PRS CfgPRS configuration index
CPCyclic prefix length
SourceData source (InfluxDB or Manual)
ActionsEdit and Delete buttons

Map View

Cell Map

Displays all cells with coordinates on an embedded OpenStreetMap:

  • Overview map centered on the average position of all cells
  • Individual maps for each cell showing its precise position

Add / Edit Cell Form

Form fields organized in a grid:

FieldDescription
Cell IDUnique identifier (disabled when editing)
PCIPhysical Cell Identity (0-503)
EARFCNRadio frequency channel number
LatitudeDecimal degrees
LongitudeDecimal degrees
Antenna Ports1, 2, or 4
PRS Bandwidth (RBs)6, 15, 25, 50, 75, or 100
PRS Config Index0-4095
CP LengthNormal or Extended

JSON Import

Accepts a JSON array of cell objects pasted into a textarea. Required field: cell_id. Optional fields: pci, earfcn, latitude, longitude, prs_bandwidth, prs_config_index, cp_length, antenna_ports.

Delete Confirmation

Clicking "Del" on a cell row shows a confirmation modal before deletion.

Diameter

Path: /diameter Refresh: Every 2 seconds

Diameter Peers

Monitors Diameter peer connections for the remaining Diameter interfaces (SLg and others). The E-SMLC-to-MME SLs interface uses native LCS-AP over SCTP and is monitored separately on the Dashboard page.

Interface Status

Two panels showing interface health:

InterfaceDescription
SLg Interface (TS 29.172)GMLC to MME via DRA, Application ID 16777264
Other Diameter InterfacesAdditional Diameter applications as configured

Each shows a green/red indicator dot and description.

Peer Summary

Connected and disconnected peer counts displayed at the top.

Peer Table

ColumnDescription
PeerDiameter host identity
RealmDiameter realm
IP AddressTransport address (protocol://ip:port)
StatusConnected or Disconnected badge

Clicking a peer row expands to show detailed information:

DetailDescription
Connection InitiationWhether OmniLCS initiates the connection
TransportSCTP or TCP
Product NameRemote peer's Diameter Product-Name
Advertised ApplicationsApplication IDs supported by the peer

CBC 2G

Path: /cbc Refresh: Every 2 seconds

Monitors the CBSP interface for 2G cell broadcast.

Interface Info

Shows the CBSP interface status:

  • Protocol reference (3GPP TS 48.049)
  • Listening port number
  • Number of connected peers
  • Green/red indicator

Statistics Cards

CardDescription
Connected BSCsNumber of peers with status :connected
Total ConnectionsTotal peer count (including any non-connected)
Recent MessagesCount of CBSP messages in the recent message buffer

Connected BSCs Panel

List of connected CBSP peers showing:

  • Peer IP address and port
  • Connection ID
  • Connected timestamp
  • Connection status badge

Recent CBSP Messages Panel

Table of the 20 most recent CBSP messages:

ColumnDescription
TimeMessage timestamp (HH:MM:SS)
PeerConnection ID of the source peer
MessageHuman-readable message type (e.g., "WRITE REPLACE COMPLETE")
TypeColor-coded badge (OK for complete, FAIL for failure, ERR for error, INFO for others)

Messages are received via PubSub subscriptions to cbsp:connections and cbsp:messages topics.

CBC 3G

Path: /cbc3g Refresh: Every 2 seconds

Monitors the SABP interface for 3G cell broadcast over the Iu-BC interface (3GPP TS 25.419).

Interface Info

Shows the SABP interface status:

  • Protocol reference (3GPP TS 25.419)
  • Listening port number
  • Number of connected RNCs
  • Green/red indicator

Statistics Cards

CardDescription
Connected RNCsNumber of RNC peers with status :connected
Total ConnectionsTotal peer count (including any non-connected)
Recent MessagesCount of SABP messages in the recent message buffer

Connected RNCs Panel

List of connected SABP peers showing:

  • Peer IP address and port
  • Connection ID
  • Connected timestamp
  • Connection status badge

Recent SABP Messages Panel

Table of the 20 most recent SABP messages:

ColumnDescription
TimeMessage timestamp (HH:MM:SS)
PeerConnection ID of the source RNC
MessageHuman-readable message type (e.g., "WRITE REPLACE COMPLETE", "RESTART INDICATION")
TypeColor-coded badge (OK for complete, FAIL for failure, ERR for error, INFO for others)

Messages are received via PubSub subscriptions to sabp:connections and sabp:messages topics.

Send Broadcast

Path: /broadcast Refresh: Live

Send Cell Broadcast

Unified broadcast composition interface for sending emergency warnings or test messages simultaneously across 2G (CBSP), 3G (SABP), and 4G (SBc-AP) networks. Select one or more target networks and the broadcast is dispatched to all connected peers on each selected network.

Active Broadcasts

Path: /broadcasts Refresh: Every 3 seconds + real-time PubSub

Active Broadcasts

Unified view of all active cell broadcasts across 2G (CBSP), 3G (SABP), and 4G (SBc-AP) networks in a single page. Broadcasts are tracked from the time they are sent until they are stopped or expire. The view auto-refreshes every 3 seconds and updates in real time when broadcast state changes.

Summary Cards

CardDescription
Total ActiveCombined active broadcast count across all networks
2G (CBSP)Active 2G broadcasts
3G (SABP)Active 3G broadcasts
4G (SBC-AP)Active 4G broadcasts

Use the Stop button on any broadcast row to cancel it on its respective network.

CBC 4G

Path: /cbc4g Refresh: Every 3 seconds

CBC 4G

Full-featured 4G cell broadcast management interface for composing, sending, monitoring, and stopping SBC-AP broadcasts.

Statistics Cards

CardDescription
Connected MMEsNumber of established SBC-AP SCTP associations
Active BroadcastsNumber of currently active 4G broadcasts
Total SentTotal broadcasts in history

Compose Broadcast Form

FieldDescription
Message TextBroadcast message content
Message ID16-bit CB message identifier (e.g., 4370 for CMAS)
Serial Number16-bit serial number
MCCMobile Country Code (e.g., "313")
MNCMobile Network Code (e.g., "380")
TACsComma-separated Tracking Area Codes
Warning TypeNone, Earthquake, Tsunami, Earthquake + Tsunami, Test, Other
Repetition (sec)Seconds between broadcast repetitions
Num BroadcastsTotal number of times to broadcast the message

Clicking "Send Broadcast" encodes the message (GSM 7-bit), constructs a Write-Replace-Warning-Request PDU, and sends it to all connected MMEs.

Connected MMEs Panel

List of SBC-AP SCTP associations:

  • MME hostname
  • IP address, port, and SCTP association ID
  • Connection status badge (Connected / state name)

Active Broadcasts Panel

Table of currently active broadcasts:

ColumnDescription
MSG IDMessage identifier in hex (e.g., 0x1112)
SERIALSerial number in hex
MESSAGEBroadcast text (truncated)
STATUSSent, Stopping, Stopped, Acknowledged
ACTIONStop button (for sent/acknowledged broadcasts)

Clicking "Stop" sends a Stop-Warning-Request for the broadcast.

Broadcast History

Table of all broadcasts (last 100):

ColumnDescription
MSG IDMessage identifier in hex
SERIALSerial number in hex
MESSAGEBroadcast text (truncated)
TIMESent timestamp (HH:MM:SS)
STATUSFinal status badge

State updates are received via PubSub subscriptions to cbc:state and cbc:connections topics.

CAP Alerts

Path: /cap Refresh: Every 3 seconds + real-time PubSub

CAP Alert Management

Operator approval workflow for CAP (Common Alerting Protocol) alerts received from external alerting authorities. See the CAP Alert Operations Guide for full details on configuration, feed polling, and polygon resolution.

Statistics Cards

CardDescription
Pending ApprovalNumber of alerts awaiting operator action (amber highlight when > 0)
Active BroadcastsNumber of currently broadcasting alerts
Total ProcessedTotal alerts in history
Approval ModeCurrent setting: "Manual" (require_approval: true) or "Auto"

Pending Alerts Panel

Only visible when require_approval is true in the CAP configuration.

ColumnDescription
TIMEWhen the alert was received
EVENTAlert event type (e.g., "Tornado Warning")
SEVERITYAlert severity (Extreme, Severe, Moderate, Minor)
CELLSNumber of cells matched by polygon resolution
STATUSPending badge (amber)
ACTIONSPreview, Approve, Reject buttons

Preview expands to show the full alert description, source, matched TACs/LACs, message ID, and PLMN.

Approve triggers immediate broadcast via SBC-AP (4G), SABP (3G), and CBSP (2G).

Reject moves the alert to history as rejected.

Active Broadcasts Panel

ColumnDescription
EVENTAlert event type
MSG IDCB message identifier
TACsTargeted Tracking Area Codes
STARTEDBroadcast start time
STATUSBroadcasting (blue) or Sent (green)

Alert History Panel

ColumnDescription
TIMESent or received timestamp
EVENTAlert event type
SEVERITYAlert severity
CELLSMatched cell count
TACs/LACsTargeted area codes
STATUSSent (green), Rejected (red), or Failed (red)

A toast notification appears when a new pending alert is received.

GMLC / Le Interface

Path: /gmlc Refresh: Every 3 seconds + real-time PubSub

GMLC / Le Interface

Monitoring and management for the GMLC Le interface and deferred location sessions. See the GMLC & Le Interface Operations Guide for full configuration and Diameter protocol details.

Statistics Cards

CardDescription
Active SessionsTotal active deferred location sessions
PeriodicNumber of active periodic location sessions
Geo-fenceNumber of active triggered/geo-fence sessions

Authorized LCS Clients Panel

ColumnDescription
NAMEClient identity (matched against Diameter AVPs)
TYPELCS client type (emergency_services, value_added_services, etc.)
ALLOWED METHODSPositioning methods this client may request
RATE LIMITRequests per minute (or "Unlimited")

Active Deferred Sessions Panel

ColumnDescription
SESSION IDTruncated session UUID
TYPESession type badge: periodic (green) or triggered (purple)
IMSISubscriber IMSI
METHODPositioning method
CLIENTName of the requesting LCS client
PROGRESSPeriodic: completed/total reports. Triggered: remaining reports or "Active (unlimited)"
LAST FIXTime of the most recent position fix
ACTIONSCancel button to terminate the session

Session History Panel

Shows the 50 most recent completed or cancelled sessions with session ID, type, IMSI, status (completed/cancelled), and start time.

Built-in Pages

These pages are provided by the Control Panel framework.

Application (/application)

Application Resources

OTP application resource viewer showing:

  • Running applications and their process trees
  • Memory usage per process
  • Message queue lengths

Configuration (/configuration)

Runtime configuration viewer displaying:

  • All Application environment variables
  • Grouped by application

Log (/log)

Real-time log viewer showing:

  • Log messages from the ControlPanel.Logger backend
  • Filterable by log level
  • Auto-scrolling with pause capability