Uploaded image for project: 'OASIS Message Queuing Telemetry Transport (MQTT) TC'
  1. OASIS Message Queuing Telemetry Transport (MQTT) TC
  2. MQTT-35

What is supposed to happen when the KeepAlive timeout expires?

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 3.1.1
    • Fix Version/s: 3.1.1
    • Component/s: core
    • Labels:
      None
    • Proposal:
      Hide

      Cause: Network failure or keep alive expiry.
      Effect: Server side state cleared if cleanSession=1, will message sent.

      Cause:DISCONNECT received by the server.
      Effect: Server side state cleared if cleanSession=1, no will message sent.

      Show
      Cause: Network failure or keep alive expiry. Effect: Server side state cleared if cleanSession=1, will message sent. Cause:DISCONNECT received by the server. Effect: Server side state cleared if cleanSession=1, no will message sent.

      Description

      1. Is a Will Message published on behalf of the client (assuming one was specified on the CONNECT)?

      I had always assumes that the answer to this is Yes, however WD04 lines 650-653 say

      "If the server does not receive a message from the client.... it disconnects the client as if the client had sent a DISCONNECT message". Now if the client sends a DISCONNECT message then a Will Message is not generated, so that would suggest one isn't generated in the keepAlive disconnect case either.

      2. The paragraph then goes on to say "This action does not impact any of the client's subscriptions". This contradicts the discussion of cleanSession in 3.1.2.5. According to that section the subscriptions are only unaffected if the client had connected using cleanSession = 0. If it had used cleanSession = 1, then the subscriptions are deleted when a disconnect (of any kind) occurs.

        Attachments

          Activity

            People

            • Assignee:
              andrew_banks Andrew Banks (Inactive)
              Reporter:
              peterniblett Peter Niblett (Inactive)
            • Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: