A method for using captured voice to generate a custom interface controller, the method comprising: capturing, via a mobile device, a vocal recording from a user, wherein the vocal recording comprises a spoken command directed to a plurality of smart-home devices (110-1 - 110-5), and wherein the vocal recording additionally indicates the location and the type of the plurality of smart-home devices (110-1 - 110-5); transmitting, by the mobile device, the vocal recording to a cloud-based server system; analyzing, by the cloud based server system, the received vocal recording to determine the spoken command and the plurality of smart-home devices (110-1 - 110-5) matching the location and the type of smart-home device (110-1 - 110-5) indicated in the vocal recording; transmitting, by the cloud based server system, the command to the plurality of smart-home devices (110-1 - 110-5) for execution; transmitting, by the cloud based server system, a response to the mobile device that comprises smart-home device identifiers of the plurality of smart-home devices (110-1- 110-5); receiving, by an application executed by the mobile device, the response from the cloud-based server system; determining, by the application executed by the mobile device, one or more common functions that map to the plurality of smart-home devices (110-1 - 110-5) based on the plurality of smart-home device identifiers; and generating, by the application executed by the mobile device, the custom interface controller that controls, based on a single user input on a touchscreen, the one or more common functions of each smart-home device (110-1 - 110-5) of the plurality of smart-home devices (110-1 - 110-5). capturing, via a mobile device, a vocal recording from a user, wherein the vocal recording comprises a spoken command directed to a plurality of smart-home devices (110-1 - 110-5), and wherein the vocal recording additionally indicates the location and the type of the plurality of smart-home devices (110-1 - 110-5); transmitting, by the mobile device, the vocal recording to a cloud-based server system; analyzing, by the cloud based server system, the received vocal recording to determine the spoken command and the plurality of smart-home devices (110-1 - 110-5) matching the location and the type of smart-home device (110-1 - 110-5) indicated in the vocal recording; transmitting, by the cloud based server system, the command to the plurality of smart-home devices (110-1 - 110-5) for execution; transmitting, by the cloud based server system, a response to the mobile device that comprises smart-home device identifiers of the plurality of smart-home devices (110-1- 110-5); receiving, by an application executed by the mobile device, the response from the cloud-based server system; determining, by the application executed by the mobile device, one or more common functions that map to the plurality of smart-home devices (110-1 - 110-5) based on the plurality of smart-home device identifiers; and generating, by the application executed by the mobile device, the custom interface controller that controls, based on a single user input on a touchscreen, the one or more common functions of each smart-home device (110-1 - 110-5) of the plurality of smart-home devices (110-1 - 110-5).