Node-red-node-email (get) not dedected by Complete node

Node Red v1.0.2 running on Homematic (https://github.com/rdmtc/RedMatic)

I have discovered that the node-red-node-email (get) does not provide complete status according to https://nodered.org/blog/2019/09/20/node-done. A subsequent node triggered by node-red-node-email (when an email is successfully fetched) can be caught by the complete node.

Would it be possible to enhance the node with this feature?

Thanks, Damianos

1 Like

BTW - any returned status when activity was completed (even when no email was fetched) would be helpful.

Thanks!

I haven't tried it but I thought that node-red-node-email had been updated for catching by the Complete node. Which version of that node are you using? Look in the Manage Palette in the menu. The current version is 1.7.4 I believe.

Are you talking about the email In node or the Out node? The done event signals that the node has finished actioning a message that it is given. Since the In node is not given a message it can't say when it has finished with it.

It is 1.7.4. maybe I'm doing something wrong?
Could you give it a try?

email in. Actually, the reason why I need this is because sometimes the node hangs in "connecting" without returning. So, I'm considering checking a timeout or so.

The "email in" node has two states "connecting" and "fetching". If done with either of them it should return done() imho.

I think @dceejay would have to comment on this.

I would class that as a bug I think.

The Complete node is used to indicate when a node has finished handling a message it has received (NR message, not email message...).

The Email In node generates messages, it doesn't consume them. There is no point in time at which it has finished handling a received message. So it wouldn't make sense for it to trigger a Complete node.

Nick, if the email in node is triggered automatically, you are right, there is no incoming message. But, if triggered, there is.

However, maybe my understanding of when a node is done is wrong. I’d assume, „when a node has finished its task“, no matter how it is triggered.
For the email in node

  • the activity starts when triggered (either by itself or triggered)
  • connecting
  • fetching
  • if email exists
    loading the content
    else
    no content
  • done()

Just my view - maybe I’m not seeing it the right way.

@DamianosS my apologies. Everything I wrote was based on the fact I forgot we added an Input to the Email In node so it could be triggered in a flow.

So yes, if triggered, it should be calling done once it has checked for mail. Please raise an issue so we can fix that.

Really ? So if self triggered it doesn’t send done and if externally it does ? The node already has status and an output.

Hi. I know that this case is pretty old but I have the same issue.

Mail-in node does not trigger complete node once it is finished.

Is there any workaround for that ?