Skip to main content

What is Media Monitoring & Smart Dispatcher?

Media Monitoring & Smart Dispatcher is an Angular-based internal tool built for the Córdoba Municipality’s communications team. It transforms raw WhatsApp press clipping logs — received three times daily from a third-party media monitoring vendor — into structured, categorized, and routable news digests. Before this platform, every government official received every media mention regardless of relevance, creating serious information overload. The Smart Dispatcher solves this by automatically routing the right news to the right department.

Ingest press logs

Upload WhatsApp chat exports and have them parsed into structured news items automatically

Auto-categorize by area

Keyword rules from Google Sheets classify each story by government area (Health, Transport, Green Spaces, etc.)

Operator curation

Human-in-the-loop review lets operators refine summaries, adjust categories, and mark featured stories

Analytics dashboard

Interactive Chart.js visualizations for mentions per outlet, topic coverage, and share of voice

Key features

  • WhatsApp log ingestion — parse .txt chat exports from the vendor’s media monitoring group
  • Automatic entity extraction — date, time, media outlet, program, broadcast time window, URLs, and body text are all extracted per message
  • Google Sheets keyword engine — a live spreadsheet acts as the master data source, mapping keywords to government areas and normalizing media abbreviations
  • Smart routing by category — each news item is assigned to one or more government areas; operators then generate per-area digests
  • Featured story flagging — mark high-priority items as “Destacadas” for prominent placement
  • One-click clipboard dispatch — copy a formatted digest for a category directly to the clipboard for distribution via WhatsApp or email
  • Persistent storage — confirmed stories are saved to a WordPress REST API backend with create/update upsert logic
  • Statistics & export — bar and pie charts for media, programs, and topics; date-range filtering; CSV export

How it works

1

Ingest

The operator uploads a WhatsApp .txt chat export. The system splits the file into individual messages using timestamp patterns.
2

Parse & normalize

Each message is parsed for media outlet, program, broadcast time range, URL, and body text. Abbreviations are resolved against the Google Sheets master catalog.
3

Categorize

Keywords from Google Sheets are matched against the news text. Each story is tagged with one or more government areas (e.g., “Salud”, “Tránsito”, “Espacios Verdes”).
4

Curate

The operator reviews parsed stories, refines AI-generated summaries, adjusts categories, and marks featured items.
5

Dispatch

The operator navigates to a category panel and copies the formatted digest to the clipboard, then distributes it to the relevant officials.

Tech stack

LayerTechnology
FrontendAngular 16
UI componentsng-bootstrap + Bootstrap 5
ChartsChart.js via ng2-charts
Master dataGoogle Sheets (via Visualization API)
PersistenceWordPress REST API (custom post type)
LanguageTypeScript 5.1

Next steps

Quickstart

Set up the application and process your first press log in minutes

Core workflow

Understand the end-to-end ingestion and dispatch pipeline

Configuration

Configure Google Sheets, keywords, and the media catalog

Reference

Explore the data model, routing, and backend API

Build docs developers (and LLMs) love