原文:http://www.eclipse.org/paho/files/mqttdoc/MQTTClient/html/index.html

来自我的CSDN博客

  最近在使用Paho的MQTT客户端,由于英语看着有点慢,因此将其翻译为中文,与大家共享。由于英语水平有限,如有翻译不对之处,请帮忙指出。

MQTT客户端C语言库

  MQTT客户端的C语言库.© Copyright IBM Corp. 2009, 2017.

  这些页面描述了早期的通常被认为更容易使用同步API.(同步API)一些调用将会阻塞。对于新的完全异步的无阻塞API,尤其适合在视窗化的环境中使用(可参见MQTT C Client Asynchronous API Documentation)。

  MQTT客户端程序连接到具有MQTT功能的服务器。典型的客户端负责从遥测设备收集信息并将信息发布到服务器。它还可以订阅主题, 接收消息, 并使用这些信息来控制遥测设备。

  MQTT客户实现了已发布的MQTT v3协议。您可以使用您选择的编程语言和平台编写自己的MQTT协议API。这可能会很费时且容易出错。使用此库只需要很少的代码就可以写出功能齐全的mqtt客户端应用程序。这里提供的信息记录了MQTT客户端C语言库提供的API。

使用客户端

使用客户端库的应用程序通常使用类似的结构:

  1.创建一个客户端对象;

  2.设置连接MQTT服务器的选项;

  3.如果多线程(异步模式)操作被使用则设置回调函数(详见 Asynchronous vs synchronous client applications);

  4.订阅客户端需要接收的任意话题;

  5.重复以下操作直到结束:

    a.发布客户端需要的任意信息;

    b.处理所有接收到的信息;

  6.断开客户端连接;

  7.释放客户端使用的所有内存。

  下面展示了一些简单的示例:

来自我的CSDN博客

MQTT Client library for C (MQTT客户端C语言库-paho)的更多相关文章

  1. Asynchronous MQTT client library for C (MQTT异步客户端C语言库-paho)

    原文:http://www.eclipse.org/paho/files/mqttdoc/MQTTAsync/html/index.html MQTT异步客户端C语言库   用于C的异步 MQTT 客 ...

  2. python mqtt client publish操作

    使用Python库paho.mqtt.client 模拟mqtt client 连接broker,publish topic. #-*-coding:utf-8-*- import paho.mqtt ...

  3. MQTT客户端库-Paho GO

    为了加深理解,本文是翻译文章.原文地址 Paho GO Client   语言 GO 协议 EPL AND EDL 官网地址 http://www.eclipse.org/paho/ API类型 As ...

  4. M2Mqtt is a MQTT client available for all .Net platform

    Introduction M2Mqtt is a MQTT client available for all .Net platform (.Net Framework, .Net Compact F ...

  5. 使用Surging Mqtt 开发基于WS的MqttClient客户端

    原文:使用Surging Mqtt 开发基于WS的MqttClient客户端 最近一段时间由于要做一套智能设备系统,而有幸了解到Surging中的Mqtt broker,学习了很多东西本篇文章基于Su ...

  6. go ---MQTT client

    Paho GO Client   语言 GO 协议 EPL AND EDL 官网地址 http://www.eclipse.org/paho/ API类型 Asynchronous  描述 Paho ...

  7. mqtt client api: 阻塞API

    fusesource版本:mqtt-client-1.11.jar下载地址:https://github.com/fusesource/mqtt-client fusesource提供三种mqtt c ...

  8. MQTT Client软件-MQTTBox

    最近发现了一个连接mqtt broker的软件:MQTTBox.GitHub地址:https://github.com/workswithweb/MQTTBox 官网网站的介绍为:使用MQTTBox增 ...

  9. mqtt client python example

    This is a simple example showing how to use the [Paho MQTT Python client](https://eclipse.org/paho/c ...

随机推荐

  1. Dijkstra算法(Swift版)

    原理 我们知道,使用Breadth-first search算法能够找到到达某个目标的最短路径,但这个算法没考虑weight,因此我们再为每个edge添加了权重后,我们就需要使用Dijkstra算法来 ...

  2. mysql存储过程--学习

    -- 存储过程示例一   inDROP DATABASE IF EXISTS tdemo;CREATE DATABASE tdemo CHARACTER SET=utf8; USE tdemo;CRE ...

  3. tornado+WSGI+Apache

    1.原理 2.安装mod_wsgi http://pan.baidu.com/s/1sjsccWH configure的时候会找对应的python脚本,默认是/usr/bin/python 生成mod ...

  4. mysql全日志(general log)的命令名称

    在源码sql/sql_parse.cc中定义 const LEX_STRING command_name[]={ { C_STRING_WITH_LEN("Sleep") }, { ...

  5. spring boot系列02--Thymeleaf+Bootstrap构建页面

    上一篇说了一下怎么构建spring boot 项目 接下来我们开始讲实际应用中需要用到的 先从页面说起 页面侧打算用Thymeleaf+Bootstrap来做 先共通模板页 <!DOCTYPE ...

  6. typescript入门基础

    1.typescript介绍 微软开发的一门编程语言,javascript的一个超集,遵循最新的ES6脚本语言规范(2015年发布),它扩展了Javascript的语法,任何已经写好的javascri ...

  7. 2017EIS CTFwriteup

    EIS2017也就是2017年高校网络信息安全管理 运维挑战赛,全国一百多所高校参赛,侥幸拿了个地区三等奖,事先不知道理论赛占分比,不然就会是二等奖(吐槽),生活没有如果,下次努力吧. 比赛已经结束大 ...

  8. java虚拟机概述

    java 虚拟机是什么?       java虚拟机是一个将字节码指令映射为对应物理操作系统指令的程序.       java程序的运行需要事先安装 jdk,而在jdk内部的jre中其核心就是 jvm ...

  9. JAVA基础2——类初始化相关执行顺序

    类初始化相关执行顺序 几个概念说明 代码块的含义与作用 static静态代码块: 一般用于初始化类中的静态变量.比如:给静态的数组或者list变量赋初值.使用static静态代码块进行初始化与直接在定 ...

  10. 【MAVEN】maven系列--pom.xml标签详解

    pom文件作为MAVEN中重要的配置文件,对于它的配置是相当重要.文件中包含了开发者需遵循的规则.缺陷管理系统.组织.licenses.项目信息.项目依赖性等.下面将重点介绍一下该文件的基本组成与功能 ...