Yes you can add a receiver to OpenSprinkler. You do need to change the firmware source code to customize your need, and I suggest that you use an interrupt pin (such as INT2) for faster handling of signals. In the past I’ve written a series of blog posts about reverse engineering several off-the-shelf temperature, humidity, rain, and soil sensors: http://rayshobby.net/reverse-engineer-wireless-temperature-humidity-rain-sensors-part-1/
and my original goal was to be able to use OpenSprinkler to sniff these sensors to get local weather conditions. But in the end using online weather data is still the more convenient approach.