IP Cameras

I have some IP cameras on my home network. I would like to be able to take snapshots & send them somehow to device outside the LAN. I would like to be able to do it on command, either by one of the IOT services or by code.

Currently I have some home automation stuff setup. More for data acquisition rather than home automation. I have a raspberry pi as a mqtt server and some esp8266's that I program with arduino ide to get sensor data and forward it to the pi.

I have looked all over and cant seem to find anything like this being done....

What I would really like to be able to do is send a request from a pc or a smartphone outside the LAN & receive a snapshot from one of the IP cameras. I have no idea where to start. I am not sure if I can do this with one of the operating systems for the pi that are dedicated for cameras or if it can be done at all. I can dedicate a ras pi or arduino board, or even a pc if thats what I need. I am asking for some help, because I am not sure of the capabilities of some of these devices. Does anyone know if this is possible or where I can go to start?

Is this a commercial IP camera system that is somehow lacking remote access built-in? or did you cobble together some webcams?

Easiest thing to do is probably to just turn on port forwarding on your router and make the IP cams accessible with an external IP. Then you would access them just as you do from home, except from any device with the IP and port info, and you can add logins and device filtering or whatever you want.

There's a lot more to sending image data than simple text/numerical data as the receiver needs to decode/parse image info in a particular way.

This post is well outside of being an Arduino topic, but what the hell. Got Linux? Try this:

curl http://192.168.0.1:8080/onvif/device_service -d '
<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope">
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<GetSnapshotURI xmlns="http://www.onvif.org/ver10/device/wsdl"/></s:Body></s:Envelope>
' > /tmp/foo.xml

Adjust the IP and port accordingly for your camera.

The takeaway here is you need to learn what “SOAP” and “ONVIF” are and how they work.

They are just cheap ip cameras from ebay. INTP, you are correct, that is probably the easiest way to do it is the port forwarding option, and I may go for that. I was kinda wanting to try it in a project and didnt find any information on it so i thought i would ask here.

Chagrin, yep, I use linux. I will try that. I have three newer cameras that are ONVIF and a few older ones that are not. I will have to do a lil learning but thanks for the starting point, I will see what I can do.

Thanks!!

Since you have a pi, you can just get the GPIO camera module, might make things a little easier if the pi has net access.