Patent ID: 8732753

Claim:
A method of operating one or more controllable devices in dependence upon commands received from a plurality of mobile devices, the method comprising: receiving at a system controller a plurality of commands sent from the mobile devices, wherein each command is a request portion of a request-response transaction, and received commands for which the system controller has yet to send back a response are hereinafter referred to as pending commands; determining by the system controller whether a mobile device from which a pending command was received is authorized to operate a target controllable device to which the pending command pertains by looking up in a database to determine which controllable devices are permitted to be operated by the mobile device; replying by the system controller to the mobile device with a response indicating authentication failure when the mobile device is not authorized to control the target controllable device; when the mobile device is authorized to operate the target controllable device, generating a command identifier that uniquely identifies the pending command from all other pending commands awaiting a response from the system controller, sending both an instruction for carrying out the pending command along with the command identifier of the pending command from the system controller to the target controllable device, and starting timing by the system controller a status time duration; in response to receiving at the system controller a message acknowledging the command identifier of the pending command from one of the controllable devices before the status time duration exceeds a predetermined threshold time duration, replying by the system controller to the mobile device from which the pending command was received with a response indicating transaction complete; and when the system controller does not receive any message acknowledging the command identifier of the pending command from any of the controllable devices before the status time duration exceeds the predetermined threshold time duration, replying by the system controller to the mobile device from which the pending command was received with a response indicating transaction timeout.