A computer-implemented method comprising: identifying, using one or more computing devices, a first list of one or more devices; receiving, using the one or more computing devices, a selection from a user associated with a first device of a second device in the first list; generating, using the one or more computing devices, a second list that includes functions associated with the selection from the user; receiving, using the one or more computing devices, a request from the first device to perform one of the functions in the second list; translating, using the one or more computing devices, a first communication protocol of the request received from the first device into a second communication protocol used by the second device; translating, using the one or more computing devices, a first message format of the request into a second message format used by the second device; the method characterised in that it comprises: creating, using the one or more computing devices, a translated request using the second communication protocol and the second message format; adding, using one or more computing devices, authentication information to the translated request, wherein the authentication information is required by the second device and wherein the authentication information is retrieved, by the one or more computing devices, by using a user identifier included in the request; and transmitting, using the one or more computing devices, the translated request to the second device. identifying, using one or more computing devices, a first list of one or more devices; receiving, using the one or more computing devices, a selection from a user associated with a first device of a second device in the first list; generating, using the one or more computing devices, a second list that includes functions associated with the selection from the user; receiving, using the one or more computing devices, a request from the first device to perform one of the functions in the second list; translating, using the one or more computing devices, a first communication protocol of the request received from the first device into a second communication protocol used by the second device; translating, using the one or more computing devices, a first message format of the request into a second message format used by the second device; the method characterised in that it comprises: creating, using the one or more computing devices, a translated request using the second communication protocol and the second message format; adding, using one or more computing devices, authentication information to the translated request, wherein the authentication information is required by the second device and wherein the authentication information is retrieved, by the one or more computing devices, by using a user identifier included in the request; and transmitting, using the one or more computing devices, the translated request to the second device. creating, using the one or more computing devices, a translated request using the second communication protocol and the second message format; adding, using one or more computing devices, authentication information to the translated request, wherein the authentication information is required by the second device and wherein the authentication information is retrieved, by the one or more computing devices, by using a user identifier included in the request; and transmitting, using the one or more computing devices, the translated request to the second device.