采用mqtt协议时bc28模组客户端如何确定模组接收到数据

BC28模组只能主动上传数据,服务器下发数据无法立刻到达。现有困惑,若在模组休眠期间服务器下发了数据,模组在什么时候会收到数据呢?
1)模组自动唤醒,本次主动上传数据完毕结束后,收到+QMTRECV指令,得到数据。
2)模组上传第一条数据后,收到+QMTRECV指令,得到playload数据。
3)是否只能采用MCU主动查询呢?

BC28模组只能主动上传数据,服务器下发数据无法立刻到达。现有困惑,若在模组休眠期间服务器下发了数据,模组在什么时候会收到数据呢?
【abner】模组休眠期间看是在什么状态下,idle态下核心网会寻呼模组,模组接收到寻呼后会进入链接态接收下行数据。如果在PSM态就收不到下行数据,数据会缓存在核心网(华为核心网整个实网下最多缓存255条数据,超出的数据会替代之前的数据,之前的数据直接丢失)上行数据唤醒模组后,缓存在核心网的数据会带下来,或者是T3412定时器超时,如果核心网缓存的数据还在就会带下来。

3)是否只能采用MCU主动查询呢?
【abner】MCU可以主动去读模组buff里面的数据,也可以设置直接串口吐出下行数据。设置指令AT+NSONMI

模组该在何时判断接收到数据,若收到信息就主动抛给串口,那得不断查询串口是否就收到数据,影响性能。
1)只要模组收到信息,就会立刻抛出接收信息吗。
2)模组可自己缓存在内部,处理器主动去取吗。
3)疯了,这不是完整句子。

Hi Songhuilee
MQTT协议下,模组收到数据会通过串口直接吐出来。
1、只要模组收到数据后解析成功理解串口抛出接收到的信息。
2、数据是不缓存在模组端的。

已了解,谢谢您,艾伯纳 。。。。。。。。。