Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added MQTT Disconnect messages from server with reason codes #10734

Merged
merged 5 commits into from
May 24, 2024

Conversation

imbeacon
Copy link
Member

@imbeacon imbeacon commented May 7, 2024

Pull Request description

PE PR - https://github.com/thingsboard/thingsboard-pe/pull/2579

Due to MQTT v5 specification - server can send disconnect messages to device with specific reason codes, this PR contains realisation for this. It will be useful to understand reasons for disconnects, the simplest cases are: rate limits exceeded or session was taken by another client, session closing by activity timeout, etc. At the moment - transport just closes a channel and client can notice only "Connection refused error".

Also, in order to test response - a was needed to change our default implementation of MQTT client to get ability to receive response in case of disconnecting.

General checklist

  • You have reviewed the guidelines document.
  • Labels that classify your pull request have been added.
  • The milestone is specified and corresponds to fix version.
  • Description references specific issue.
  • Description contains human-readable scope of changes.
  • Description contains brief notes about what needs to be added to the documentation.
  • No merge conflicts, commented blocks of code, code formatting issues.
  • Changes are backward compatible or upgrade script is provided.
  • Similar PR is opened for PE version to simplify merge. Crosslinks between PRs added. Required for internal contributors only.

Front-End feature checklist

  • Screenshots with affected component(s) are added. The best option is to provide 2 screens: before and after changes;
  • If you change the widget or other API, ensure it is backward-compatible or upgrade script is present.
  • Ensure new API is documented here

Back-End feature checklist

  • Added corresponding unit and/or integration test(s). Provide written explanation in the PR description if you have failed to add tests.
  • If new dependency was added: the dependency tree is checked for conflicts.
  • If new service was added: the service is marked with corresponding @TbCoreComponent, @TbRuleEngineComponent, @TbTransportComponent, etc.
  • If new REST API was added: the RestClient.java was updated, issue for Python REST client is created.
  • If new yml property was added: make sure a description is added (above or near the property).

@imbeacon imbeacon changed the title Added MQTT Disconnect messages from server with reasons Added MQTT Disconnect messages from server with reason codes May 7, 2024
@YevhenBondarenko YevhenBondarenko added this to the 3.7 milestone May 22, 2024
@ashvayka ashvayka merged commit 181f117 into thingsboard:master May 24, 2024
2 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants