How do you find missing node types?

The great thing about Node Red is the ability to share/import other peoples flows, this allows instant rewards, however it can be a little tricky when the flow being imported includes a node you don’t have, and the message given is not the easiest to decipher and all your flows stop !

Sadly from what I can see, nodes don’t seem to have a unique ID, and some just use a very generic name (prime example below) - so I was wondering is there a way to find out what your missing node is ?

*Feature Request : It would be great if when you import a flow, if any nodes are missing, NR identifies them and provides you with the option to install them.

Which one of the 141 could it be ?:thinking:

1 Like

Looking at the raw flow, it mentions Home Assistant - that node includes a "server" node

So that would be my guess.

Unfortunately, nobody can force authors to use sensible names. We can only point out that using generic names like that is likely to cause issues in the future including the issue you are facing and the likelihood of a name clash.

Hey @TotallyInformation, yes but - apart from this particular flow - it would be nice to have the ability to install all missing nodes with a single click. Or is something like that already available in Node-RED somewhere?

[EDIT] Of course the missing nodes should be available on NPM, and not missing local custom nodes...

I agree it would be very convenient at times if a flow included the source node that each type came from, even though this is information that strictly is not required in the flow. Whether that would be practical I don't know.

It surely would :slight_smile:

However, I don't believe that information currently exists in the flow & even if it did, export flows and import flows would also need significant change to accommodate the package information (name and version).

I totally agree with you but it isn't an easy change I don't believe - perhaps Nick can comment.

Oh, also, it would have to be optional, it is bad enough to paste in someone's flow and get all sorts of rubbish added to your own environment (e.g. config nodes that have to be deleted separately), imagine if that also installed a bunch of nodes. When would you trigger the install? Since npm installs can take an appreciable amount of time, choosing the right moment to ask and to execute is critical as well.

As I'm on my phone here, not going to type out a whole response. But I'm sure you can find my response(s) on this very topic the number of times it has come up in the past....

Ok sorry. Then please don't waste your precious time by repeatjng it here again. Have a nice weekend!!

@TotallyInformation @knolleary - Maybe in a future update, the NR team could consider a registration process, where someone can obtain a unique (offical NR) ID to associate with their Node - which can then be added as a item within their code, thus removing the focus/confuisions around the name, other than as a helpful secondary identifier.

Nodes already have a unique identifier - the name of the module that provided them. How that information is shared in a flow has been discussed before a few times. We don't yet have any conclusion answer.

That's great, maybe an interim solution could be to have a page on github for people to register their Node against it's ID and provide a link to the install etc. *(theoretically you will need that association eventually) - just an idea

We already have that - flows.nodered.org

What we don't have is an integrated why to go for a user to lookup a node type and get a list of modules it might have come from.

As I've said, this whole topic has been discussed many times. There are things on the backlog to help.