Show / Hide Table of Contents

    MQTT常见的基本问题

    🙋 ​mqtt服务器可以使用我们自己搭建的服务器进行收集嘛?

    👉:mqtt服务器本身就是需要客户方提供,盒子只是一个客户端的角色。我们的盒子主要负责将客户端(FBOX)与服务器进行连接,并且基于pub/sub机制, 实现MQTT协议的相关功能。您这里搭建的mqtt服务,或者使用其他物联网平台,只要支持标准MQTT3.1或者MQTT3.1.1就可以。

    🙋 盒子中的plc采集,具体的数据格式解析是不是还要使用方进行开发?

    👉: PLC采集的数据都是在盒子里解析好的。MQTT传输的传输格式为json的数据格式。如果您想做数据的偏执增益比例缩放之类的处理,并且要把处理过后的数据推送到mqtt服务器,这个是我们的最新版本的功能。我们是支持的

    🙋 看现在接口文档中,是一些数据处理后数据相关的,原始的数据可以通过接口获取嘛?或有其它方式可以获取不?

    👉: 如果不想用MQTT,我们也支持从我们的平台端调用Http/SDK接口。

    🙋 目前的盒子是否支持定制,如协议、采集上传服务器等

    👉:一般情况下我们不支持定制,这个您联系我司销售确认一下具体情况。

    🙋 通过mqtt采集的数据到服务器后,在服务器存储方式是什么?数据的处理大概流程是什么样的?

    👉我们只负责第一层的MQTT协议相关功能,也就是第一层MQTT Broker。接下来的第二层第三层的工作,比如拿到MQTT消息包后怎么转换对接推送,和分布式服务器进行通讯等等,就是您这的软件工程师的开发工作了。(方式太多了,简单的话可以用EMQ有插件可以对接MySQL,客户要自己做的话也可以用消息队列对接到多种存储引擎)。

    🙋 为什么我在服务器上给盒子写值,盒子有的时候值不会改变?

    👉: 首先我们介绍一个概念:

    ​ MQTT的消息质量(也叫做服务质量QoS),分为0,1,2三个级别。

    ​ 至多一次(QoS 0)接收者不会发送响应,发送者也不会重试。消息可能送达一次也可能根本没送达。

    ​ 这个服务质量常用在鸡肋的消息传递中,即消息丢了也没 有关系。

    ​ 至少一次(QoS 1)服务质量确保消息至少送达一次,有可能存在多次发送的情况。

    ​ 只有一次(QoS 2)这是最高等级的服务质量,消息丢失和重复都是不可接受的。使用这个服务质量等级会有额外的开销。

    这个时候需要确认服务器下发指令的质量是不是0?比较多见都是这种情况,丢包了,盒子根本没收到指令,所以就不会执行了。

    🙋 ​MQTT数据转发数据无法上来,是不是要解决问题,必须要升级到最新版本才可以使用程序转发?

    👉:是的,目前这个是最快最方便的方法,更新固件也可以批量更新的。主要是因为旧版的架构问题,其实现的功能有限。新版的可以适配更多不同场景。

    🙋 ​MQTT配置的接口?

    👉:目前MQTT配置没有对外的接口 。

    🙋 ​MQTT推送客户平台接收到的时间和你们推送过来的时间不一致呢?为什么我们快2点了还能接收到0:30左右发来的数据?

    👉:有可能是盒子的时间不同步,可以先校准下盒子的时间看看。基本配置-更多-时间校准。Fbox的盒子和flink的盒子只要是在线的,我们服务器是每半小时同步一次时间的,lite的盒子只有上线的时候同步一次。

    🙋 ​MQTT推送怎么会有两组数据,感觉一组貌似没问题的,一组数据是之前的老数据?

    👉:这个数据是有可能收到重复的,在网络不好的情况下,我们MQTT的收到的质量有3种,分别是0,1,2三种,0是属于质量特别差的情况,不管发什么数据,不保证一定能接受到数据,1是属于较好的情况,我们是保证一定会发,但是不保证一定收到的数据是不重复的数据,2属于最好的,保证一定会发,也保证推送的数据一定是不重复的数据,但是这种对资源消耗较大,我们现在所有用都是这种质量是1 的。这种推送重复的属于MQTT的内部机制。现在暂时还不开发MQTT推送质量数。

    Back to top Generated by Fcloud