Skip to content

Return carrier name and country for a cell #12

Description

@karlTGA

Goal

/cell and /cells return only numeric identifiers today (radio, mcc, net, area, cell, lon, lat, cellRange, samples, …). Consumers that show cell information to humans — currently the RACEMAP Connection Chart, see racemap/gears#3663 — have to display "MCC 262 · MNC 2 · LAC 1234", which almost nobody can read.

Add the human-readable carrier and country to the responses so every consumer benefits and the mapping lives next to the cell data it describes.

Proposed response fields

Additive and nullable, so existing clients keep working:

{
  "radio": "LTE",
  "mcc": 262,
  "net": 2,
  // …
  "operator": "Vodafone",          // null when the MCC/MNC pair is unknown
  "country": "Germany",            // null when the MCC is unknown
  "countryCode": "DE"              // ISO 3166-1 alpha-2, null when unknown
}
  • country/countryCode derive from the MCC alone.
  • operator derives from the MCC/MNC pair.
  • Unknown combinations MUST return null rather than an empty string or a guess — the client falls back to showing the raw IDs.

Data source

The MCC/MNC → operator/country table is small (a few thousand rows) and changes rarely. Suggestion: load it into the existing MariaDB next to the OpenCelliD data and refresh it with the same kind of scheduled download the cell data already uses. Any maintained public dataset is fine as long as the import is scripted and repeatable.

Notes

  • Applies to both /cell and /cells.
  • Keep the numeric fields exactly as they are; this is additive only.

Consumer side: racemap/gears#3681

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions