Developer
Ask a QuestionBlecon WebsiteBlecon Console
  • Learn Blecon
    • Introduction
    • Blecon Modems
      • Device Identity and Network Security
      • Modem Firmware vs Modem Library
      • Using the Modem
      • Communicating with the cloud
      • Sending data from the cloud to a device
    • Blecon Hotspots
    • Blecon Networks
      • Blecon Accounts
      • Registering devices
        • The Blecon Scanner
        • Blecon Scanner Developer Guide
      • Blecon Events
      • Cloud Integrations
  • Cloud Integrations
    • Webhook
    • AWS S3
    • AWS SQS
    • AWS EventBridge
    • Memfault
  • Getting Started Guides
    • Getting started index
    • Install the Blecon Modem Firmware
    • Set up a Blecon Hotspot
    • Use Blecon from your computer with the Blecon CLI
    • Create a Network and register a device
    • Send device requests and events to your web service
    • Use Blecon from a Development Board
    • Use the Blecon Modem from an MCU
  • Device Guides
    • KKM S5-BCN
  • Development Board Guides
    • Supported Development Boards
    • Ezurio DVK-BL54L15
    • Fanstel EV-BM15C
    • InsightSiP ISP2454-LX-EB
    • Nordic nRF52840DK
    • Nordic nRF54L15DK
    • Minew ME54BE01
    • Panasonic PAN-B511 EVB
    • Raytac AN54L15Q-DB
    • u-Blox EVK-NORA-B20
  • Modem Reference
    • Modem Firmware Releases
      • nRF54L15 DK
      • nRF52840 Dongle
      • nRF52840 DK
    • CLI Releases
    • SDK Releases
    • Modem API Reference
    • Modem Protocol Reference
      • Request Frames
      • Command Protocol
      • UART Transport
    • Guides and best practices
      • Retrieve a device's identity
  • Cloud Reference
    • Configuration API
    • Advanced event routing
  • Hotspot Reference
    • Blecon Hub
Powered by GitBook

Get Support

  • Ask a question
On this page
  • Operating principles
  • Requests
  • One-way Requests (Messages)
  • Namespaces and Methods
  1. Learn Blecon
  2. Blecon Modems

Communicating with the cloud

How a device uses the modem to talk to the cloud over Bluetooth

PreviousUsing the ModemNextSending data from the cloud to a device

Last updated 1 month ago

Operating principles

  • Devices are clients, and the device is always the initiator of any request

  • Your cloud application receives requests and messages from devices as well as network events

  • Any Blecon App can relay messages from any Blecon Device

  • The communication is secured between the device and the Blecon service

Requests

With Device Requests, Blecon Devices communicate with your cloud integration using a simple request/response model.

Requests are typically used when a device needs to retrieve information from the cloud, for example configuration.

A request is synchronous end to end, so it's important to ensure that your cloud application responds as quickly as possible.

If, for any reason, your application does not respond with an HTTP success code to the request, the device will receive an error response and will try again later.

One-way Requests (Messages)

To send data to the cloud, sending a one-way request from your device is more efficient. A message is asynchronous and delivered batched to the configured destination, if one is configured.

Network Events

When integrating Blecon into your product, you will often also need information about network events.

Network events include:

  • A device registered on a network

  • A device was deregistered from a network

  • Device spotted

Your application can process these events as required for your use-case.

Namespaces and Methods

Namespaces

A namespace helps identify the Integration the request is for. For example, a namespace might be:

telemetry
firmware_update
config_update
user_events

When you add an integration to a Blecon Network, you choose which events route to that integration by specifying a namespace:

You can enter a specific namespace or write * to capture events from all namespaces.

Methods

Examples

  • device.request.firmware_update.check_fw

  • device.message.telemetry.temperature

  • device.message.user_events.button_pressed

must include a Namespace and Method. These are labels to help route the request correctly.

Methods are an additional label on device requests. When combined with the namespace, a method name can identify the exact type of request. When the device makes a request, the namespace and method form part of the unique :

You can see how methods are used in one of our pre-built integrations. For example, the integration uses methods such as s3_download_id and s3_download_filename.

Device requests
Event Type
AWS S3
The Blecon Communication Model
Specifying a namespace