Node RED sending Pushover message with images

Can someone suggest how I would attach an image to a Node-RED Pushover message.

I have an image located /config/www/pics/test.png. Using a script and HA’s integration I can make this work, but in Node Red, I am stumped. I don’t see how I can add the image to this push message.

This flow works but I have not been able to add an image.

After a great deal of trial and error I found a way to pull this off.

There are 2 different types of Pushover nodes. One is a plug-in from Node-red and the other is the API from Home Assistant. I found that the blue one works with images. I could not get the green one to send the image even thought the help file says it supports msg.attachment. In this example I used msg.image in the function/template node.

Being new to Node Red, I am not sure if there is a nicer way to share flows that shows the details of each node. If anyone does please chime in.

Sample output

Same as you @braindrain, which is a huge bummer because that means I can’t send images from HA Dev tools by using the Pushover Integration. Especially because they are deprecating the yaml setup - which used to be able to send images - I can’t use appdaemon anymore with Pushover to send images. If anyone knows why the node-red Pushover node works and not the HA Pushover Integration node… that would be great. I’m trying to recreate in Appdaemon.

Just spent some time with the Pushover nodes today because I wanted to start using Priority.

You have the three Pushover nodes available

  1. node-red-node-pushover - the “official” node
  2. node-red-contrib-pushover
  3. node-red-contrib-pushover-inline-image

2 & 3 seem to be subsets of 1. The only differences I see is 2 & 3 have a timestamp function but I add in my timestamp using the native Home Assistant variables. They all have the ability to add images - 2 passes it with msg.image and 1 & 3 use msg.attachment.

Here’s my function node that I use for testing nodes 1 & 2 concurrently:

var payload = msg.payload
if (payload == 'image') {
    msg.payload = 'Test sending message with image'
    msg.payload = msg.payload + " at " + new Date().toString();
    msg.image = "/media/Images/Beevis.JPG"
    msg.attachment = "/media/Images/Beevis.JPG"
   return msg

Just wire an inject node to send “image” to the input of the function node and the output of the function node to your Pushover node of choice. I have both msg.image and msg.attachment in the code for testing both Pushover nodes concurrently.

I couldn’t test number 3 because it has a conflict with number 2 and won’t allow installation.

They should all work with images. I had been using number 2 but the gui for number 1 has been much improved, and I see it has been updated one month ago while the others are 5-6 years ago.