ben423423n32j14e / zigbee2mqttadminpanel

Node-Red-Dashboard web interface for controlling Zigbee2MQTT
GNU General Public License v3.0
111 stars 70 forks source link

Suggestions #14

Open ptath opened 5 years ago

ptath commented 5 years ago
  1. Thanks for the great flow!

  2. Please add LINKS to HTTP API URLS =)

  3. Please add statuses (permit_join and so on), it is hard to understand should I turn it on or not =)

  4. In Devices subflow sending timestamp to zigbee2mqtt/bridge/config/devices is useless (and leads to errors in debug), we should send zigbee2mqtt/bridge/config/devices/get and after than real devices list will be shown here:

Снимок экрана 2019-07-07 в 1 29 32

  1. In "Rename device" we can use dropdown list to avoid mistakes.

  2. VizJS Networkmap shows in ~50% browser height (dunno why). Also can we get map in png or any other static format?

  3. It is very hard to update flow to next version =( I manually edit all MQTT nodes in subflows, remove all existing subflows and MQTT settings and so on. Cannot provide any suggestion to make it easier =(

Thanks again, great work!

befedi commented 4 years ago

Hi @ptath,

I refer to your points:

  1. Do you mean adding tooltips? Activating/Deactivating permit_join as an example should be clear to everyone using Zigbee2MQTT after setting it up, looking in the logs at startup, reading the documentation etc.

  2. Is this really causing errors in your debug? To be exact, the current way is "saving" a message as the timestamp at zigbee2mqtt/bridge/config/devices will causes only one message at zigbee2mqtt/bridge/log. Whereas sending an empty message to zigbee2mqtt/bridge/config/devices/get will cause a message on zigbee2mqtt/bridge/config/devices and on zigbee2mqtt/bridge/log.

  3. Great idea.

  4. I absolutely agree on this. Everytime the flow is being imported it will create the subflows, the ui controls (I'm not exactly sure on this) and the configurations. Using subflows will make it look cleaner but maybe it would be better to spare on them. But it would not resolve the problem with the MQTT settings. Sadly, I found no solution so far.

befedi commented 4 years ago

Okay, it seems there is a way to use the HTTP API to identify nodes (e.g. a MQTT configuration node) and to change the configuration.

You can dynamically change the flow: https://gist.github.com/sbarwe/6fe183c197b3464a1fe4d89744e068ff

Downside is, that you need to know the flow ID and the node ID which you want to change. The IDs are generated dynamically at the import of the flow. But you can identify the node ID for example by knowing the name (label). Like used here for requesting the tab IDs: https://discourse.nodered.org/t/how-to-get-flow-id-by-function-node/9889/5

But it would bring another configuration (e.g. in a function node) for the http configuration of the HTTP nodes and the MQTT configuration that would have to be configured by the user.