1. A method for automated program updating in a remote appliance, the method comprising: communicating by the remote appliance with a program update server at a time the remote appliance is deactivated to determine if a program update is available; communicating a response with the program update server indicating that the program update is available from the program update server; selecting a pre-scheduled update time by the remote appliance; communicating the pre-scheduled update time from the remote appliance to the program update server; and communicating the program update to the remote appliance at the pre-scheduled update time.