Is it possible for a smart contract to initiate actions on its own? (ie. without an external message being received?) For example, is it possible to implement a smart-contract-based reminder system that sends email notifications based on a calendar of future events? Or a smart contract that does data operations once every 24 hours, without outside prompting?
If so, where does the gas come from to execute those smart contract initiated operations?
So, if I were to create a "reminder" smart contract, where people submitted a notice time, email address and text message, they would be charged gas for the call to send in the data, but how could they be charged for the gas needed to send them the reminder a day or more later? Can a smart contract over-charge for gas and save that gas for later use by itself? Are there any other solutions?
Thanks for any help with this.