public static void CreateNewIntent(string messageText, string trainingPhrasesPart) { IntentsClient client = IntentsClient.Create(); Intent.Types.Message.Types.Text text = new Intent.Types.Message.Types.Text(); text.Text_.Add(messageText); Intent.Types.Message message = new Intent.Types.Message() { Text = text }; List <Intent.Types.TrainingPhrase.Types.Part> phraseParts = new List <Intent.Types.TrainingPhrase.Types.Part>(); phraseParts.Add(new Intent.Types.TrainingPhrase.Types.Part() { Text = trainingPhrasesPart }); Intent.Types.TrainingPhrase trainingPhrase = new Intent.Types.TrainingPhrase(); trainingPhrase.Parts.AddRange(phraseParts); Intent intent = new Intent(); intent.DisplayName = trainingPhrasesPart; intent.Messages.Add(message); intent.TrainingPhrases.Add(trainingPhrase); Intent newIntent = client.CreateIntent( parent: new AgentName(projectId), intent: intent ); Console.WriteLine($"Created Intent: {newIntent.Name}"); }
public ActionResult CriarIntencao() { Google.Cloud.Dialogflow.V2.IntentsClient c = IntentsClient.Create(); Intent intent = new Intent(); intent.DisplayName = "Curso.Nome"; var frase1 = new Intent.Types.TrainingPhrase(); frase1.Parts.Add(new Intent.Types.TrainingPhrase.Types.Part() { Text = "Qual o valor do curso de " }); frase1.Parts.Add(new Intent.Types.TrainingPhrase.Types.Part() { Text = "sistemas de informação", EntityType = "Cursos" }); var frase2 = new Intent.Types.TrainingPhrase(); frase2.Parts.Add(new Intent.Types.TrainingPhrase.Types.Part() { Text = "Qual o preço do curso de " }); frase2.Parts.Add(new Intent.Types.TrainingPhrase.Types.Part() { Text = "sistemas de informação", EntityType = "Cursos" }); intent.TrainingPhrases.Add(frase1); intent.TrainingPhrases.Add(frase2); var resposta = new Intent.Types.Message(); resposta.Text = new Intent.Types.Message.Types.Text(); resposta.Text.Text_.Add("1000.00"); intent.Messages.Add(resposta); var request = new Google.Cloud.Dialogflow.V2.CreateIntentRequest(); request.Intent = intent; request.ParentAsProjectAgentName = new ProjectAgentName(_agentName); c.CreateIntent(request); return(Ok("Entidade criada")); }
// [START dialogflow_create_intent] public static int Create(string projectId, string displayName, string messageText, string[] trainingPhrasesParts) { var client = IntentsClient.Create(); var text = new Intent.Types.Message.Types.Text(); text.Text_.Add(messageText); var message = new Intent.Types.Message() { Text = text }; var phraseParts = new List <Intent.Types.TrainingPhrase.Types.Part>(); foreach (var part in trainingPhrasesParts) { phraseParts.Add(new Intent.Types.TrainingPhrase.Types.Part() { Text = part }); } var trainingPhrase = new Intent.Types.TrainingPhrase(); trainingPhrase.Parts.AddRange(phraseParts); var intent = new Intent(); intent.DisplayName = displayName; intent.Messages.Add(message); intent.TrainingPhrases.Add(trainingPhrase); var newIntent = client.CreateIntent( parent: new ProjectAgentName(projectId), intent: intent ); Console.WriteLine($"Created Intent: {newIntent.Name}"); return(0); }
public AlertModel CreateIntent(Intencion intencion, List <FraseEntrenamientoModel> frases) { var intento = new IntentoModel(); var resultado = new AlertModel(); 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); var intent = new Intent(); intent.DisplayName = intencion.Nombre; //Actualizar Frases de Entrenamiento intent.TrainingPhrases.Clear(); foreach (var frase_ in frases) { var trainingPhrasesParts = new List <string>(); trainingPhrasesParts.Add(frase_.Descripcion); var phraseParts = new List <Intent.Types.TrainingPhrase.Types.Part>(); foreach (var part in trainingPhrasesParts) { phraseParts.Add(new Intent.Types.TrainingPhrase.Types.Part() { Text = part }); } var trainingPhrase = new Intent.Types.TrainingPhrase(); trainingPhrase.Parts.AddRange(phraseParts); intent.TrainingPhrases.Add(trainingPhrase); } //Actualizar Respuesta intent.Messages.Clear(); var text = new Intent.Types.Message.Types.Text(); text.Text_.Add(intencion.Respuesta); var message_ = new Intent.Types.Message() { Text = text }; intent.Messages.Add(message_); var newIntent = client.CreateIntent( parent: new ProjectAgentName(ConstantesWeb.DialogFlow.ProjectId), intent: intent ); resultado.Id = newIntent.IntentName.IntentId; resultado.DisplayName = newIntent.DisplayName; oIBLSolicitud.InsertarIntencionConsulta(newIntent.DisplayName, newIntent.IntentName.IntentId, ConvertidorUtil.GmtToPacific(DateTime.Now), intencion.IdIntencionPadre); resultado.Mensaje = "INSERT-OK"; } } catch (Exception ex) { resultado.MessageError = "ERROR: " + ex.Message; resultado.Mensaje = "INSERT-ERROR"; } return(resultado); }
public AlertModel UpdateIntent(Intencion intencion, List <FraseEntrenamientoModel> frases) { var intento = new IntentoModel(); var resultado = new AlertModel(); 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 getRequest = new GetIntentRequest { IntentName = new IntentName(ConstantesWeb.DialogFlow.ProjectId, intencion.IdDialogFlow), IntentView = IntentView.Full }; var intent = client.GetIntent(getRequest); //Actualizar Frases de Entrenamiento intent.TrainingPhrases.Clear(); foreach (var frase_ in frases) { var trainingPhrasesParts = new List <string>(); trainingPhrasesParts.Add(frase_.Descripcion); var phraseParts = new List <Intent.Types.TrainingPhrase.Types.Part>(); foreach (var part in trainingPhrasesParts) { phraseParts.Add(new Intent.Types.TrainingPhrase.Types.Part() { Text = part }); } var trainingPhrase = new Intent.Types.TrainingPhrase(); trainingPhrase.Parts.AddRange(phraseParts); intent.TrainingPhrases.Add(trainingPhrase); } //Actualizar Respuesta intent.Messages.Clear(); var text = new Intent.Types.Message.Types.Text(); text.Text_.Add(intencion.Respuesta); var message_ = new Intent.Types.Message() { Text = text }; intent.Messages.Add(message_); UpdateIntentRequest updRequest = new UpdateIntentRequest { Intent = intent }; Intent response = client.UpdateIntent(updRequest); resultado.DisplayName = response.DisplayName; resultado.Mensaje = "UPDATE-OK"; } } catch (Exception ex) { resultado.MessageError = "ERROR: " + ex.Message; resultado.Mensaje = "UPDATE-ERROR"; } return(resultado); }