KPN Things Developer Manual
↩ All Documentation
  • Welcome to the Things Developer Manual
  • Concepts
    • Overview
    • Uplink communication
    • Downlink communication
    • SenML
      • Upcoming Changes in KPN SenML
    • Management data model
    • Location data
    • API access ✨
  • Devices
    • Introduction to Devices
    • Supported developer kits
    • Supported device types
    • KPN Things devices
    • Device SDK
  • Connectivity
    • Introduction to Connectivity
    • KPN Things LoRa
    • KPN Things M2M
      • Firmware over the air 💎
    • Internet ✨
  • Processing
    • Introduction to Processing
    • ThingsML
    • Common measurements list
    • DIY Decoder 🔜
    • Merger 💎
    • Built-in decoders
  • Destinations
    • Introduction to Destinations
    • Azure Event Hub
    • Azure IoT Hub
    • Cumulocity environment
    • HTTPS endpoint
    • MQTT broker
  • 📗Additional resources
    • Things Portal Manual
    • Getting started
    • Contact Support
Powered by GitBook
On this page
  • Connect an MQTT broker
  • What does the connection do?
  • Trusted TLS/SSL certificates
  • Learn about MQTT
  • Test with a demo broker
  1. Destinations

MQTT broker

It is only possible to connect KPN Things to your MQTT broker using an encrypted connection!

Connect an MQTT broker

The following parameters are available to connect an MQTT broker:

Parameter

Description

Example value

name

*

The name of the destination

My Server

description

Description of the destination

Endpoint of my server

host

*

The host name of the MQTT broker

test.mosquitto.org

port

*

The port on which the MQTT broker allows encrypted connections

8883

username

*†

The username for KPN Things to connect to the broker

password

*†

The password for KPN Things to connect to the broker

applicationId

*

MQTT Client ID for KPN Things to connect to the broker

kpnthings

topic

*

The topic structure describing how KPN Things should publish data. There are several placeholders available:

  • %c Your Client UUID

  • %a MQTT Client ID

  • %d Device UUID

  • %p Plug UUID

  • %m Message request ID

things/%p/%d/%n

qosLevel

*

The MQTT Quality of Service desired for the connection to your broker.

Options:

  • AT_MOST_ONCE

  • AT_LEAST_ONCE

  • EXACTLY_ONCE

AT_LEAST_ONCE

messageTimeout

*

Timeout for sending a message and handling QoS in milliseconds

10000

retainMessage

*

false

*) required value †) secret value, can only be written

What does the connection do?

  • Open an encrypted client connection to your MQTT broker.

Trusted TLS/SSL certificates

Your server should preferably use TLSv1.2 or higher, but at least TLSv1.1. Older protocols are not supported because they are not considered safe.

Learn about MQTT

Are you new to MQTT, but still interested in using it? HiveMQ has published some very nice articles about MQTT essentials:

Test with a demo broker

PreviousHTTPS endpoint

Last updated 4 years ago

%n base name

Whether messages send to the broker should be .

Publish all forwarded IoT data in JSON format on topics following the specified topic template.

We do not support self-signed certificates. Your TLS/SSL certificate should be signed by a root certificate authority (CA) that is trusted by the default Java trust store. You can use the to check if your certificate is trusted by the Java trust store:

You can find a publicly available Mosquitto MQTT server/broker on . This allows you to try to connect KPN Things to an MQTT broker. Do not use this public MQTT broker for production!

SenML
SSL Server Test from Qualys
https://test.mosquitto.org
SenML
retained messages
The result of the SSL Server Test indicating the certificate is trusted by Java.
test.mosquitto.org
MQTT Essentials - All Core Concepts explained
Logo
Logo