Share E-Book
Scan to open this page

Scan with your phone to open this page

Author: Gaston C. Hillar, Gastón C. Hillar

Rating No ratings yet

Explore the features included in the latest versions of MQTT for IoT and M2M communications and use them with modern Python 3. About This Book Make your connected devices less prone to attackers by understanding security mechanisms Take advantage of MQTT features for IoT and Machine-to-Machine communications The only book that covers MQTT with a single language, Python Who This Book Is For This book is for developers who want to learn about the MQTT protocol for their IoT projects. Prior knowledge of working with IoT and Python will be helpful. What You Will Learn Learn how MQTT and its lightweight messaging system work Understand the MQTT puzzle: clients, servers (formerly known as brokers), and connections Explore the features included in the latest versions of MQTT for IoT and M2M communications Publish and receive MQTT messages with Python Learn the difference between blocking and threaded network...

AI Reading Assistant

Whole-book reading guide from stratified index samples; jump to passages in the text

AI guide
【One-Line Pitch】 A practical, example-driven guide to building IoT and machine-to-machine messaging with MQTT 3.1.1 and Python 3.6, using the Mosquitto server and the Eclipse Paho client. Best suited to developers who already know some Python and want to move from protocol concepts to working, secured MQTT applications. 【Book Arc】 - **Opening (~0%–10%)**: Frames why MQTT matters for IoT/M2M, introduces the publish-subscribe model, topics, and the client/server vocabulary, and sets up the Python 3.6 + Mosquitto toolchain. - **Early (~10%–32%)**: Gets you hands-on with a running server — installing Mosquitto on Linux and macOS, then subscribing, publishing, and unsubscribing via command-line and GUI tools while learning topic hierarchies and wildcards. - **Middle (~39%–48%)**: Deepens protocol understanding with QoS levels 0/1/2 and their delivery guarantees, then moves into securing the server with authentication, authorization, and TLS certificates. - **Late (excerpts do not cover)**: The preface promises real-life Python examples — controlling a vehicle, processing commands, actuators, and a surf competition — plus a cloud-based MQTT provider, but the excerpts do not detail these chapters. - **Ending (excerpts do not cover)**: No closing chapters, appendices, or final project material appear in the provided excerpts. 【Key Takeaways】 - **MQTT is a lightweight publish-subscribe protocol built for constrained, unreliable networks** (Opening): it minimizes packet overhead, supports event-oriented push delivery, and scales to hundreds of thousands of clients — the core reason it dominates IoT messaging. - **Topic-based filtering is the heart of message routing** (Early): publishers specify a topic, the server matches it against subscriber filters without inspecting payloads, and a subscriber can hold multiple subscriptions at once. - **Topic names work like file-system paths** (Early): hierarchical names such as `sensors/octocopter01/altitude` organize data, and single-level and multilevel wildcards let subscribers match families of topics. - **ClientId and CleanSession control session identity and persistence** (Early): a unique ClientId identifies each connection, while the CleanSession flag decides whether session state survives a disconnect and reconnect. - **QoS is a negotiated delivery guarantee, not a speed setting** (Middle): level 0 is at-most-once with lowest overhead, level 1 is at-least-once and may duplicate, level 2 is exactly-once for applications that cannot tolerate duplicates. - **QoS applies separately on each hop** (Middle): the publisher-to-server leg and the server-to-subscriber leg each carry their own QoS, so the sender/receiver roles shift depending on which segment you are analyzing. - **Security is a first-class concern, not an afterthought** (Middle): the book walks through authentication, per-user topic permissions, and TLS with certificate authorities and signed server certificates. - **Tooling accelerates learning** (Early): command-line utilities (`mosquitto_sub`, `mosquitto_pub`) and GUI clients like MQTT.fx let you observe real packet flows before writing Python code. 【Reading Tips】 - **Skim the installation walkthroughs** (Early) if your Mosquitto server is already running; focus instead on the subscribe/publish/unsubscribe mechanics and topic best practices. - **Deep-read the QoS chapter** (Middle): the at-most-once / at-least-once / exactly-once distinctions and the two-hop model are the concepts most likely to cause production bugs. - **Treat the security chapter as a checklist** (Middle): certificate generation and per-user topic permissions are easy to gloss over but essential before any real deployment. - **Run every example yourself** (throughout): the book is explicitly hands-on, and MQTT behavior — especially session persistence and QoS — is far clearer when you watch live traffic. - **Keep the Python 3.6 + Eclipse Paho pairing in mind** (Late): the practical payoff is translating protocol knowledge into client code, so prioritize chapters that show Paho in action. 【Coverage Limits】 This guide is based on stratified excerpts covering roughly the first half of the book (opening through the security chapter); the promised Python application chapters, cloud provider integration, and any concluding material are not represented, so those sections are described only as the preface outlines them.
Page 14
, and you can use it to develop any kind of application. If you develop IoT, web applications, mobile apps, or a combination of these solutions, you must lea...
View in text
Excerpt 2
After the MQTT client disconnects from the MQTT server, any information related to the session is discarded. A new connection from the same MQTT client to th...
View in text
Excerpt 3
matches one or more topic filters, the subscriber can send a request to unsubscribe to a list of topic filters to the MQTT server. Obviously, unsubscribing f...
View in text
Excerpt 4
ations provide support for TLS. However, make sure that you check the features before selecting the appropriate MQTT server for your solution. We won't cover...
View in text
Excerpt 5
h messages to the same topic, sensors/octocopter01/altitude. Follow these steps: 1. Launch MQTT-spy. 2. Select Connections | New connection. The Connection l...
View in text
Excerpt 6
platform in which we are creating the virtual environment. Open Terminal in Linux or macOS and execute the following command to create a virtual environment:...
View in text
Excerpt 7
that is being executed in the action argument and prints it with the value saved in the name attribute as a prefix. The other methods defined in this class c...
View in text
Excerpt 8
icles/vehiclepi01/executedcommands --tls-version tlsv1.2 Open another Terminal in macOS or Linux, or another Command Prompt in Windows, go to the directory i...
View in text
Tags
AI categories
IoTPython
ISBN: 1786463997
Publisher: Packt Publishing
Publish Year: 2018
Language: English
File Format: PDF
File Size: 7.8 MB
Text Preview (First 20 pages)
Registered users can read the full content for free

Register as a Gaohf Library member to read the complete e-book online for free and enjoy a better reading experience.

Generating text preview…