title: MQTT recv from a publish and mqtt ping C
body: <p>i've got this problem, in a test program, where i'm developing a client for MQTT, i'm subscribed on a topic, after that, i wait for "publish" message from the server to my client.</p>
  
  <p>After a good recv (of a publish message) or after a recv timeout i send a mqtt PINGREQ to the server.</p>
  
  <p>After a A PINGREQ i'm going to wait a PINGRESP, then i call a recv as in the case I were waiting for a PUBLISH message.</p>
  
  <p>If the flow is this:</p>
  
  <pre><code>Client -&gt; PINGREQ
  Server -&gt; PUBLISH
  Server -&gt; PINGRESP
  </code></pre>
  
  <p>Than the server publish message were lost. How to solve this? I'm using MQTT at QOS 0, it make sense solve this problem on this level of QOS or instead is smart to check this case at QOS1?</p>