1. A method to select an end-user device from a plurality of end-user devices to satisfy a user request, the method comprising: storing at a portal aggregator data identifying a plurality of device groups, the data identifying each device group comprising data identifying at least one user associated with the device group and data identifying a least one capability for each of a plurality of end-user devices associated with the device group; receiving a request at the portal aggregator from the user, the request comprising information identifying the user, information identifying a first action, information identifying another user, and information identifying a second action; identifying, at the portal aggregator, a first device group associated with the user based on the information identifying the user, and a second device group associated with the other user based on the information identifying the other user; generating, at the portal aggregator, a first list of end-user devices from the first device group having the capability to execute the first action, and a second list of end-user devices from the second device group having the capability to execute the second action; selecting, at the portal aggregator, an end-user device from the first list of end-user devices to execute the first action and an end-user device from the second list of end-user devices to execute the second action based on a location pattern associated with the user; and transmitting a command from the portal aggregator to the selected end-user devices to execute the actions.