Merge mqtt backend and plugin #320

Merged
blacklight merged 21 commits from 315/merge-mqtt-backend-and-plugin into master 2023-09-17 02:51:48 +02:00
Owner

Closes: #315, #310

Closes: #315, #310
blacklight added this to the Convert backends into runnable plugins milestone 2023-09-05 13:05:59 +02:00
blacklight added the
enhancement
label 2023-09-05 13:05:59 +02:00
blacklight self-assigned this 2023-09-05 13:05:59 +02:00
blacklight added 1 commit 2023-09-05 13:06:00 +02:00
continuous-integration/drone/push Build is passing Details
b746d0b402
Moved `get_message_response` to `platypush.utils`.
It is general-purpose enough to be used by all the integrations, not
only by the HTTP backend.
blacklight added 2 commits 2023-09-06 02:46:17 +02:00
continuous-integration/drone/push Build is passing Details
3de510da68
Migrated `zigbee.mqtt` integration.
The plugin has been migrated to the new `mqtt` API and the legacy
listener that extended `MqttBackend` has been removed and merged into
the plugin.
blacklight added 1 commit 2023-09-06 02:55:15 +02:00
continuous-integration/drone/push Build is passing Details
8ab7b6bebc
Removed deprecated `zigbee.mqtt` backend.
Closes: #322
blacklight added 8 commits 2023-09-15 00:49:12 +02:00
ddd8f1afdc
`base_topic` param in `zigbee.mqtt` renamed to `topic_prefix`.
This is for sake of consistency with other integrations (like
`zwave.mqtt`) that also use the same parameter name for the MQTT topic
prefix.
3104a59f44
Better processing of configuration file parameters.
- Do `abspath`+`expanduser` on the configuration file path before
  checking if it exists.

- If the path doesn't exist, but the user explicitly passed a
  configuration file, then copy/create the default configuration
  under the specified directory.
4cb5aa7acb
Prepend the class name to the string used to generate the MQTT client_id hash.
If we include the class name by default then we won't have to
explicitly modify the client_id in the implementation classes
in order to prevent clashes.
5a514fdcce
Only support the `run_topic` logic on the MQTT plugin.
Plugins that extend `MqttPlugin` shouldn't run messages as
requests, even if the parent MQTT plugin is configured to
do so.
ac72b2f7a8
Fixed management of state on `zigbee.mqtt`.
Before the merge of the plugin and the listener those components
used to have their own separate state, which led to inconsistencies.
2c93049ee5
Catch all the exceptions in a plugin action wrapper.
The @action decorator should capture all the exceptions,
log them and return them on `Response.errors`.

This ensures that uncaught exceptions from plugin
actions won't unwind out of control, and also that they
are logged and treated consistently across all the
integrations.
continuous-integration/drone/push Build is passing Details
4223576016
We should always update the entities cache on addEntity.
Updating the entity cache only when we receive an event from a root
entity means that we lose events sent by individual child entities.
blacklight added 3 commits 2023-09-16 13:13:53 +02:00
continuous-integration/drone/push Build is passing Details
2fcd623c51
Migrated zwave.mqtt integration.
Merged the zwave.mqtt plugin with the listener and removed the
leftovers of the legacy zwave plugin.
blacklight added 1 commit 2023-09-16 15:26:22 +02:00
blacklight added 1 commit 2023-09-17 02:12:08 +02:00
continuous-integration/drone/push Build is passing Details
2e004c1a1e
`get_all_plugins` should use `Message.Encoder` for encoding the response.
Some plugin information may include enums, tuples and other types that
aren't serializable by the default JSON serializer.
blacklight added 4 commits 2023-09-17 02:47:59 +02:00
blacklight changed title from WIP: Merge `mqtt` backend and plugin to Merge `mqtt` backend and plugin 2023-09-17 02:51:24 +02:00
blacklight merged commit 9e7b95583b into master 2023-09-17 02:51:48 +02:00
blacklight deleted branch 315/merge-mqtt-backend-and-plugin 2023-09-17 02:51:48 +02:00
Sign in to join this conversation.
No reviewers
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: platypush/platypush#320
No description provided.