I made preliminary investigation of temperature issues.
Conclusion: the camera shuts down when get_temperature(1) reaches 80. I investigated A1400 camera.
More details:
I had a script that call the function
fout = io.open("A/out.txt", "a")
fout:write(tostring(get_temperature(0))," ",tostring(get_temperature(1))," ",tostring(get_temperature(2))," ",os.time(),"\n")
fout:close()
approximately every five minutes. I attached the out.txt file.
I run my camera this summer in my car and periodically I had many shutdowns during few months. Particularly I had a lot of them on a parking lot when airconditioner is off and car became red hot inside of it.
If you look at the file you will see that os.time() normally has a time step of 300 seconds (about 5 minutes) between measurements.
Every time when get_temperature(1) gets 79 it shuts down and it takes a long time before I start it again. The time step is much bigger.
There are few cases when temperature reaches 79 but after that goes down to 78 e.t.c. That means that camera still works when temperature is 79 and it shuts down immediately when temperature gets 80.
Somehow for my other commercial project, elph 115 camera worked continuously during whole summer without any shutdown issues but I need to do extra measurements to understand why it works and I will publish it. I just know that A1400 has two electrodes (two AAA batteries) and elph115 has power supply with three electrodes and different battery. There must be something different about it.