You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Blue Iris - send alert to Gotify with Image and URL links #831
changed the title [-]BlueIris - send alert to Gotify with Image and ULLinks[/-][+]Blue Iris - send alert to Gotify with Image and ULLinks[/+]on Sep 1, 2025
changed the title [-]Blue Iris - send alert to Gotify with Image and ULLinks[/-][+]Blue Iris - send alert to Gotify with Image and URL links[/+]on Sep 1, 2025
If it is a commercial software you need to transform the payload format with an intermediary proxy or plugin. You can also consider filing a ticket to your vendor for supporting more webhook formats or making a template functionality.
gotify/contrib has a couple examples of how to do these transformations.
Ohhh well then NTFY it is for me ...I would have loved to get some help in translating the above NTFY command to Gotify ... Blue Iris have their own client so they will not be interested in doing any of this work.
-F "message=&MEMO http://192.168.0.179/ui3.htm?tab=clips&clipview=alerts&cam=&CAM&rec=&ALERT_DB, clear=true -T E:\AlertsNew&ALERT_PATH" - only partially works. The &MEMO part is done OK (that is the person 89% in the pic above) but the rest of it is not working OK. It should attach an image instead of the URL and the path to the image.
Any idea how to make it attach the image? Tried a few things but I could not get it to work.
I am not familiar with the software, if it is an entire webpage to be embedded currently there is no way to do it except clincking on this link. If it is just an image there are some message extra keys that override images or links when you click it: https://gotify.net/docs/msgextras#clickurl.
I believe that this creates the actual URL for the photo (without the clear=true -T as I got that from the NTFY example so it might not be applicable here?)
I tried your suggestion ("curl <...> -H "Content-Type: application/json" '{"message": "...", "extras": { ... }}' ' ) but I am really struggling with the syntax, where to put stuff, etc so I really need your expertise please.
Basically need to have the following in the message:
title= &NAME (this gives me Camera 7 Garage in the picture above)
message=&MEMO (this gives me the Person: 89% bit for the picture)
picture: http://192.168.0.179/ui3.htm?tab=clips&clipview=alerts&cam=&CAM&rec=&ALERT_DB, clear=true -T E:\AlertsNew&ALERT_PATH (with or without clear=true -T as mentioned before)
If you can help me with above with correct syntax (command, double quotes etc in the correct places) I can something to test with further.
Many thanks for helping - I feel that slowly we are getting closer to making it work :)
I believe Blue Iris builds up the message as per the given parameters and then send it out to Gotify. So it doesn't serve it from a web path or anything. Looking at it better I now believe that the picture path BI uses is only E:\AlertsNew&ALERT_PATH without http://192.168.0.179/ui3.htm?tab=clips&clipview=alerts&cam=&CAM&rec=&ALERT_DB, clear=true -T (something for me to test and confirm if we get the syntax correct)
Blue Iris can also build the message and send it to Gotify via a Web Request - maybe is easier this way? But again I have no idea...
Is &ALERT_PATH just a file name and not accessible via an URL? If so you can't make it show up on Gotify: it does not read arbitrary files on the filesystem and serve it.
You could potentially kind of hack it by placing a symlink inside the image directory but I don't recommend it. If you have a web server setup can you setup a way to make that image viewable as a URL?
Such as https://my.server.example.com/images/<random_string>.jpg, if you can get it to that step the rest is easy.
I don't think Gotify needs to read it from inside the file system. I believe that Blue Iris puts all the message together (including the picture) and send it out to Gotify.
For example there is a way to make it work with Pushover - I am almost 100% pushover doesn't come back into the LAN to read or get the message. Is Blue Iris that pushes the message to Pushover.
This is how they got it going for pushover (the picture is right at the end under attachment)
This is how they got it going for pushover (the picture is right at the end under attachment)
This uploads the image to Pushover server instead so when you access it the data is directly served from Pushover's storage.
If your BlueIris runs on the same user as your Gotify you could just copy &ALERT_PATH to the gotify image directory.
If not some more complex workarounds might be needed. This is a feature limitation of Gotify at this time. There is no easy way to let it just take custody of the file. You could try object storage solutions like MinIO which will allow you to upload a file to a storage that can be securely retrieved over an URL.
@jmattheis do you think it might be useful to have an image upload feature?
Ok I understand the issue now. Unfortunately Blue Iris is running on a windows machine (only supports windows) while my instance of Gotify runs as a docker on Linux.
If Gotify can be made to handle the pictures will be great.
Yeah, but we should store the images in the database, having this on the filesystem adds unnecessary overhead with deletion etc. Maybe we even allow attaching anything not just images, as it may be useful for bigger txt files.
Not sure, it will certainly be after the plugin system so probably not in the next 2 weeks. If you need something now please try object storage solutions like Minio.
Activity
[-]BlueIris - send alert to Gotify with Image and ULLinks[/-][+]Blue Iris - send alert to Gotify with Image and ULLinks[/+][-]Blue Iris - send alert to Gotify with Image and ULLinks[/-][+]Blue Iris - send alert to Gotify with Image and URL links[/+]eternal-flame-AD commentedon Sep 1, 2025
If it is a commercial software you need to transform the payload format with an intermediary proxy or plugin. You can also consider filing a ticket to your vendor for supporting more webhook formats or making a template functionality.
gotify/contrib has a couple examples of how to do these transformations.
MnM001 commentedon Sep 2, 2025
Ohhh well then NTFY it is for me ...I would have loved to get some help in translating the above NTFY command to Gotify ... Blue Iris have their own client so they will not be interested in doing any of this work.
eternal-flame-AD commentedon Sep 2, 2025
Did you try referring to https://gotify.net/docs/pushmsg?
It should be as simple as substituting these "&CAM", etc. variables in.
MnM001 commentedon Sep 2, 2025
OK so I have started playing with that but as expected I did run into issues.
This is what I have in Blue Iris:
The above produces this:
So it means that:
-F "title= &NAME" - works as it should
-F "message=&MEMO http://192.168.0.179/ui3.htm?tab=clips&clipview=alerts&cam=&CAM&rec=&ALERT_DB, clear=true -T E:\AlertsNew&ALERT_PATH" - only partially works. The &MEMO part is done OK (that is the person 89% in the pic above) but the rest of it is not working OK. It should attach an image instead of the URL and the path to the image.
Any idea how to make it attach the image? Tried a few things but I could not get it to work.
eternal-flame-AD commentedon Sep 2, 2025
Hmm, which URL is the clip/image? &ALERT_PATH?
I am not familiar with the software, if it is an entire webpage to be embedded currently there is no way to do it except clincking on this link. If it is just an image there are some message extra keys that override images or links when you click it: https://gotify.net/docs/msgextras#clickurl.
eternal-flame-AD commentedon Sep 2, 2025
If you served this E:\AlertNew folder under a web server you should be able to send it as extras by just assembling an URL.
You will also need to send the data as a JSON file instead of form fields.
Check out: https://gotify.net/docs/msgextras#namespaces
It should be something like "curl <...> -H "Content-Type: application/json" '{"message": "...", "extras": { ... }}' '
MnM001 commentedon Sep 2, 2025
I believe that this creates the actual URL for the photo (without the clear=true -T as I got that from the NTFY example so it might not be applicable here?)
I tried your suggestion ("curl <...> -H "Content-Type: application/json" '{"message": "...", "extras": { ... }}' ' ) but I am really struggling with the syntax, where to put stuff, etc so I really need your expertise please.
Basically need to have the following in the message:
title= &NAME (this gives me Camera 7 Garage in the picture above)
message=&MEMO (this gives me the Person: 89% bit for the picture)
picture: http://192.168.0.179/ui3.htm?tab=clips&clipview=alerts&cam=&CAM&rec=&ALERT_DB, clear=true -T E:\AlertsNew&ALERT_PATH (with or without clear=true -T as mentioned before)
If you can help me with above with correct syntax (command, double quotes etc in the correct places) I can something to test with further.
Many thanks for helping - I feel that slowly we are getting closer to making it work :)
MnM001 commentedon Sep 2, 2025
This is how it looks in Blue Iris:
I believe Blue Iris builds up the message as per the given parameters and then send it out to Gotify. So it doesn't serve it from a web path or anything. Looking at it better I now believe that the picture path BI uses is only E:\AlertsNew&ALERT_PATH without http://192.168.0.179/ui3.htm?tab=clips&clipview=alerts&cam=&CAM&rec=&ALERT_DB, clear=true -T (something for me to test and confirm if we get the syntax correct)
Blue Iris can also build the message and send it to Gotify via a Web Request - maybe is easier this way? But again I have no idea...
MnM001 commentedon Sep 2, 2025
With some trial and error I got it again to display the Title and Memo but still cant get to display the picture:
eternal-flame-AD commentedon Sep 2, 2025
I read the ntfy docs: https://docs.ntfy.sh/publish/#attachments
Is &ALERT_PATH just a file name and not accessible via an URL? If so you can't make it show up on Gotify: it does not read arbitrary files on the filesystem and serve it.
You could potentially kind of hack it by placing a symlink inside the image directory but I don't recommend it. If you have a web server setup can you setup a way to make that image viewable as a URL?
Such as
https://my.server.example.com/images/<random_string>.jpg, if you can get it to that step the rest is easy.MnM001 commentedon Sep 2, 2025
Just confirming that the picture path is:
Yes it is a path that is not available via a URL.
I don't think Gotify needs to read it from inside the file system. I believe that Blue Iris puts all the message together (including the picture) and send it out to Gotify.
For example there is a way to make it work with Pushover - I am almost 100% pushover doesn't come back into the LAN to read or get the message. Is Blue Iris that pushes the message to Pushover.
This is how they got it going for pushover (the picture is right at the end under attachment)
eternal-flame-AD commentedon Sep 2, 2025
This uploads the image to Pushover server instead so when you access it the data is directly served from Pushover's storage.
If your BlueIris runs on the same user as your Gotify you could just copy &ALERT_PATH to the gotify image directory.
If not some more complex workarounds might be needed. This is a feature limitation of Gotify at this time. There is no easy way to let it just take custody of the file. You could try object storage solutions like MinIO which will allow you to upload a file to a storage that can be securely retrieved over an URL.
@jmattheis do you think it might be useful to have an image upload feature?
MnM001 commentedon Sep 2, 2025
Ok I understand the issue now. Unfortunately Blue Iris is running on a windows machine (only supports windows) while my instance of Gotify runs as a docker on Linux.
If Gotify can be made to handle the pictures will be great.
jmattheis commentedon Sep 2, 2025
Yeah, but we should store the images in the database, having this on the filesystem adds unnecessary overhead with deletion etc. Maybe we even allow attaching anything not just images, as it may be useful for bigger txt files.
MnM001 commentedon Sep 2, 2025
Sounds great guys - looking forward to this feature being implemented. How long do you think it will take?
eternal-flame-AD commentedon Sep 3, 2025
Not sure, it will certainly be after the plugin system so probably not in the next 2 weeks. If you need something now please try object storage solutions like Minio.
MnM001 commentedon Sep 3, 2025
I am OK to wait 2-3 weeks for this.
Please let me know if you need my help with testing once you start working on it.
Many thanks!!!