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

[Feature] Custom dbus Input/Output nodes with dynamic subscription capability #213

Open
dirkjanfaber opened this issue Feb 4, 2025 · 1 comment
Assignees
Labels
enhancement New feature or request

Comments

@dirkjanfaber
Copy link
Collaborator

The idea for the input node is analagous to the build-in node-red mqtt node set to "Dynamic Subscription" mode, but to access the dbus directly.

Dynamic Input Node:

Has an input and an output.

input accepts 2 message types

  • subscribe:
    msg.topic: subscribe
    msg.payload: {serviceName: <dbus service name>, path: <dbus path name>}
  • unsubscribe:
    msg.topic: unsubscribe
    msg.payload: {serviceName: <dbus service name>, path: <dbus path name>}

output emits values whenever a subscribed value on dbus updates, or when a new value is subscribed to like:

msg.topic: dbus-value
msg.payload: {serviceName: <dbus service name>, path: <dbus path name>, datatype: <datatype of dbus value>, value: <value on dbus>}

Dynamic Output Node

One input, able to write a value to any dbus path:

  • msg.topic: write
    msg.payload: {serviceName: <dbus service name>, path: <dbus path name>, datatype: <datatype of dbus value>, value: <value to write>}
@dirkjanfaber dirkjanfaber added the enhancement New feature or request label Feb 4, 2025
@dirkjanfaber dirkjanfaber self-assigned this Feb 4, 2025
@petermlyon
Copy link

Thanks @dirkjanfaber for opening this from the outcome of our discussion.

The suggestions made for the msg structure were only to exchange the idea so from my perspective they can be freely modified to something that makes more sense according to you guys.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants