I was looking for a replacement for the node-red-contrib-ftp as I cannot get the LIST functionality to work correctly - it always returns an empty array. However, PUT operations work correctly. In LIST, I pass in the path to a folder (on my NAS) but get back nothing (there are files in the folder).
The @objectif-lune/node-red-contrib-ftp works really well, but for some reason, for LIST operations, the path has to be specified in the node configuration (for all other operations it can me sent in as a msg.fileName etc..If anyone knows of a workaround, I would really appreciate a solution. I tried to go to the nom repository to see if I could get any details but it is locked for external users.
@Colin@cymplecy - I originally gave the problem to AI (Claude) and it gave me back a function node using the basic-ftp library. It worked but it was clunky and basically I would end up with 2 ftp solutions. Then I found the node referenced above - it did everything that I wanted EXCEPT the hardcoding of the folder path. So I went back to Claude and asked for a it to create a node for me that used basic-ftp library and could do all the ftp functions with fully parameterized path/file names. It came back in 5 minutes with a solution - installed it and it worked perfectly.
Quite blown away by the process - I am don't have any (well... very limited) programming skills so this node does all the heavy lifting that I need. I'm still baffled by why the LIST in node-red-contrib-ftp did not work (PUT works just fine). It worked in the function node, the @objectif-lune/node-red-contrib-ftp node and the custom node - same login, same path, so
Just be aware that such code is likely to be heavy with security issues. Indeed, FTP itself is often also rather light on security. Please make sure that you are only using such a solution on a private and secured network. NEVER allow raw FTP over an unsecured network (e.g. the Internet) and remember that unless you are using SFTP or FTPS, any id and password you use is sent in clear text over the wire.