For me the project was divided into three separate parts: 1) The photovoltaic power supply, 2) the weather-proof housing, and 3) the surveillance system. For many people the first and second parts may not be necessary. If there are any barns or tool sheds available, they can help to shield the electronics from the weather and, if you have access to the power grid, you'll probably just need an extension cord. For this reason I'll only focus on the surveillance system.
The system consists of a regular WiFi router, a powered USB hub, a mobile broad-band device, a couple of old usb webcams, and two Raspberry Pi computers. For those who are not familiar, Raspberry Pi computers a tiny baseball-card-sized computers that cost around $40 each. They do require more advanced computer skills and familiarity with Linux, although I've heard there are Pi's with Windows now. On my system, one Raspberry Pi serves as a network bridge while the other Pi controls the cameras, manages photographs, and sends automated emails. I've read that it is possible to have one Raspberry Pi function as both, but I prefer the current setup. Managing photographs, usb webcams, and sending emails can be tricky from an automation standpoint. These tasks can draw a lot of resources from these little computers, so it's easier to just keep the bridge separate from the rest.
Basically, the system works as follows. The mobile broad-band device accesses the Internet via a cell tower several miles away. The broad-band device is usb-tethered to the network bridge which is linked via an Ethernet cable to the WiFi router. The second Raspberry Pi is connected to the WiFi router via an Ethernet cable. The second Raspberry Pi is also connected to the powered usb hub to which the webcams are plugged.
This camera system got it's start back when I was working on embedding a webcam inside one of my beehives (turned out a very boring film of drones hanging around all day long), and I'm still using the same operating system for the bison camera. For that reason I'm not sure how many of the programs I use are still available in the newer operating systems. There may be better programs available now. I should also point out that it is possible to purchase ready made systems for not too much money.
To control the cameras I used a useful Linux program call "motion." Motion allows the user to turn his or her camera in a surveillance camera that captures images, videos, or both. Captures can be either triggered by detected movements or on a timer. Because my cameras are mounted on a tall poll that sways in the wind, I've set the system to only capture images every so many minutes. Every hour a small Python script wakes up, finds all the photos, places them in a zip file, creates an email, attaches the zip file, and sends me the email. Initially, I had the image resolution set pretty high, but, because bison are fairly large and can move quite quickly, I've found it better to have lower resolution images captured more frequently.
Some might ask why I don't have the cameras streaming or capture videos. My reason for that is cost. My mobile broadband plan costs $10 per gigabyte, which adds up quickly when you are streaming video. I also find the emails preferable from a security standpoint as it allows me to keep most of my system's ports closed.
This system has on more than one occasion saved me a lot a grief by allowing me to check the status of my animals and equipment when I'm away from the ranch. Recently I've begun adding addition information to the automated emails. Right now the information is only concerning basic things like system statistics, but, in the future, I would like to include current information on the condition of my electric fences and the water level in our cistern.