update sketches over GSM network

I have little experience with Arduino, but this sounds like a question that should have been answered since years:
Is there any experience with uploading new sketches over the mobile network to an ATMega256 with GSM shield? (SIM800)
This relates to a project where there are lot’s of controllers to maintain in remote areas. There is no GPRS coverage, only voice, so Internet connectivity is not an option.
I am thinking of a modem dial-up style of communication from a central point that contains the sketch to update with. The bootloader should check for incoming data on TX/RX during an open call. It will also require putting aside the current sketch in case the update fails for some reason. Probably copy over to an SD card or something similar.
I have read about people with similar questions, but nobody seems to actually have a working solution.

any ideas, advice?

Thanks