public async Task <string> DeviceRequestCommandCustomViewModule(CustomViewModuleRequest customViewModuleRequest) { //identify device object deviceRequested = ConvertCustomViewModuleResquestToObject(customViewModuleRequest); if (deviceRequested == null) { return(FormatterSpeechResponse_CustomViewModule(customViewModuleRequest, $"I'm sorry, {customViewModuleRequest.IdDevice} was not found", false)); } string jsonReturn = string.Empty; if (deviceRequested is SonoffDualR2) { //TODO: use pattern matching SonoffDualR2 sonoffRequest = ((SonoffDualR2)deviceRequested); if (ValidIdDeviceRequested(sonoffRequest.IdDevice)) { switch (sonoffRequest.SonoffModelEnum) { case DeviceEnum.SonoffDualR2: jsonReturn = await SonoffDualR2ExecuteCommand(sonoffRequest); return(FormatterSpeechResponse_CustomViewModule(customViewModuleRequest, jsonReturn, true)); default: break; } } } return(FormatterSpeechResponse_CustomViewModule(customViewModuleRequest, $"I'm sorry, {customViewModuleRequest.IdDevice} was not found", false)); }
public async Task <string> DeviceRequestCommandDialogFlow(GoogleCloudDialogflowV2WebhookRequest dialogflowRequest) { //identify device object deviceRequested = ConvertDialogflowResquestToObject_GoogleObj(dialogflowRequest); if (deviceRequested == null) { return(FormatterSpeechResponse_GoogleObj(dialogflowRequest, $"I'm sorry, {dialogflowRequest.QueryResult.Parameters["idDevice"].ToString()} was not found", false)); } string jsonReturn = string.Empty; if (deviceRequested is SonoffDualR2) { //TODO: use pattern matching SonoffDualR2 sonoffRequest = ((SonoffDualR2)deviceRequested); if (ValidIdDeviceRequested(sonoffRequest.IdDevice)) { switch (sonoffRequest.SonoffModelEnum) { case DeviceEnum.SonoffDualR2: jsonReturn = await SonoffDualR2ExecuteCommand(sonoffRequest); return(FormatterSpeechResponse_GoogleObj(dialogflowRequest, jsonReturn, true)); default: break; } } } return(FormatterSpeechResponse_GoogleObj(dialogflowRequest, $"I'm sorry, {dialogflowRequest.QueryResult.Parameters["idDevice"].ToString()} was not found", false)); }
private async Task <string> SonoffDualR2ExecuteCommand(SonoffDualR2 sonoffRequest) { return(await BaseService.GetResponse(sonoffRequest.IdDevice, SonoffDualR2Commands.GetCommandSonoffDualR2(sonoffRequest))); }