Electron heart beat questions: how, when, data size, dropped connection, etc

Does the Electron firmware take care the “heart beat” message to the Particle cloud? Or should I write it? How often should the heart beat be sent to cloud in order to maintain the connection? What is the size of the minimum heart beat (thinking about the particle wireless data plan 1MB per month)?

My application running on Electron needs to response to mobile app user requests within seconds, say 1 second, and most of the time Electron is idle and waiting/listening for the mobile app user request.

When happens if the connection is dropped?

The device does it by itself.
With the Particle SIM at least once every 23 minutes.
122 byte per instance.