Data Sources → Customer Touchpoints

IoT Devices

Connected devices — smart appliances, wearables, in-vehicle systems, and industrial sensors — that emit telemetry and usage events tied to a customer or account.

High-Level Design

Device telemetry → Azure IoT Hub → .NET Core microservices on Azure.

Touchpoint
IoT Device
Smart appliance, wearable, in-vehicle unit
→
Ingestion
Azure IoT Hub + Ingestion API
Device-to-cloud telemetry → Cxos.Ingestion.Client
→
Processing
.NET Core Stream Worker
IoT Hub's Event Hub-compatible endpoint → Azure Container Apps
→
Foundation
Data Lakehouse
Azure Data Lake Storage Gen2 (time-partitioned)
→
Intelligence
.NET Core AI & Insights API
Azure Machine Learning — predictive maintenance
→
Activation
.NET Core Activation API
Azure Service Bus → proactive service alerts

💼 Business Context

  • Turns product usage into a continuous relationship instead of a one-time sale
  • Powers predictive maintenance and proactive support — reduces warranty cost and churn
  • Owned jointly by Connected Products and Customer Success teams

🔌 Technical Overview

Devices authenticate to Azure IoT Hub using per-device certificates or SAS tokens issued via the Device Provisioning Service — IoT Hub is the device-facing front door instead of Azure API Management. IoT Hub exposes a built-in Event Hub-compatible endpoint, which the .NET Core Ingestion API consumes using the same Cxos.Ingestion.Client contracts as every other touchpoint, normalizing telemetry into the shared event schema. Where local batching is needed, a lightweight Device Gateway (also .NET Core) runs as an Azure IoT Edge module.

Typical Events

device_status sensor_reading firmware_updated device_paired battery_low

💾 Sample Event Payload

{
  "event": "sensor_reading",
  "event_id": "d41d8cd9-8f00-4b3f-8e5f-5c8a2f0e9b11",
  "timestamp": "2026-08-01T10:22:00Z",
  "device_id": "dev_88213",
  "user_id": "cust_004821",
  "context": {
    "channel": "iot",
    "firmware_version": "2.3.1",
    "connectivity": "wifi"
  },
  "properties": {
    "metric": "temperature",
    "value": 21.4,
    "unit": "celsius"
  }
}

🔗 Integration Points

  • Azure IoT Hub — device registry, per-device auth, telemetry ingress
  • Cxos.Ingestion.Client NuGet package — consumed by the .NET Core Ingestion API reading IoT Hub's endpoint
  • Azure IoT Edge — optional edge-deployed .NET Core module for local batching/filtering
  • Azure Machine Learning — predictive maintenance / anomaly models
  • Identity & Profile microservice — device-to-customer pairing

🧰 Services Consumed

  • Owning microservice — Cxos.Ingestion.Api (see the Full Application Service Map)
  • Database — Azure Cache for Redis (cache only, no system-of-record database)

⚠️ Non-Functional Considerations

  • Scale: IoT Hub scales to millions of concurrently connected devices via scale units
  • Latency: most telemetry is near-real-time (minutes); safety-critical alerts use an Azure Function trigger for a sub-second path
  • Reliability: IoT Edge modules store-and-forward during connectivity loss
  • Security: mutual TLS/device certificates via the Device Provisioning Service; firmware version tracked per device for patch compliance

🎯 Enterprise Example

A connected-appliance manufacturer registers 2M+ devices in Azure IoT Hub. The .NET Core Stream Worker, running on Azure Container Apps, consumes IoT Hub's Event Hub-compatible endpoint and flags an abnormal vibration pattern; the AI & Insights API, backed by an Azure Machine Learning model, predicts an 85% failure probability within 30 days. The Activation API pushes a proactive service offer through Azure Service Bus — cutting unplanned service calls by 18%.

← Back to Customer Touchpoints