public IntentoModel ObtenerIntento(string intentId) { var intento = new IntentoModel(); try { var fileSavePath = System.Web.HttpContext.Current.Server.MapPath("~/Dialogflow.json/") + ConstantesWeb.DialogFlow.FilePrivateKeyIdJson; if ((System.IO.File.Exists(fileSavePath))) { var cred = GoogleCredential.FromFile(fileSavePath); var channel = new Channel(SessionsClient.DefaultEndpoint.Host, SessionsClient.DefaultEndpoint.Port, cred.ToChannelCredentials()); var client = IntentsClient.Create(channel); GetIntentRequest request = new GetIntentRequest { IntentName = new IntentName(ConstantesWeb.DialogFlow.ProjectId, intentId), IntentView = IntentView.Full }; var intent = client.GetIntent(request); intento.Id = intent.IntentName.IntentId; intento.Nombre = intent.DisplayName; var objResult = oIBLSolicitud.ObtenerIntencion(intento.Nombre); var intencion = objResult.OneResult; intento.FechaCreacion = intencion.StrFechaCreacion; intento.DescripcionIntencionPadre = intencion.DescripcionIntencionPadre; if (intencion.IdPadreIntencion.Equals(0)) { intento.Nombre = string.Empty; } //Frases de Entrenamiento var feId = 1; foreach (var trainingPhrase in intent.TrainingPhrases) { var fraseEntrenamiento = new FraseEntrenamientoModel(); fraseEntrenamiento.Id = feId++; fraseEntrenamiento.StrId = trainingPhrase.Name; foreach (var phrasePart in trainingPhrase.Parts) { fraseEntrenamiento.Descripcion = phrasePart.Text; } intento.FrasesEntrenamiento.Add(fraseEntrenamiento); } //Respuestas foreach (var message in intent.Messages) { if (message.Text != null) { var idRespuesta = 0; foreach (var text in message.Text.Text_) { idRespuesta++; var respuesta = new RespuestaIntentoModel(); respuesta.Id = idRespuesta + string.Empty; respuesta.Descripcion = text; intento.Respuestas.Add(respuesta); } } } } } catch (Exception ex) { } return(intento); }