Exemplo n.º 1
0
        public async Task GetIntentAsync()
        {
            Mock <Intents.IntentsClient> mockGrpcClient = new Mock <Intents.IntentsClient>(MockBehavior.Strict);

            mockGrpcClient.Setup(x => x.CreateOperationsClient())
            .Returns(new Mock <Operations.OperationsClient>().Object);
            GetIntentRequest expectedRequest = new GetIntentRequest
            {
                IntentName = new IntentName("[PROJECT]", "[INTENT]"),
            };
            Intent expectedResponse = new Intent
            {
                IntentName               = new IntentName("[PROJECT]", "[INTENT]"),
                DisplayName              = "displayName1615086568",
                Priority                 = 1165461084,
                IsFallback               = false,
                MlDisabled               = true,
                Action                   = "action-1422950858",
                ResetContexts            = true,
                RootFollowupIntentName   = "rootFollowupIntentName402253784",
                ParentFollowupIntentName = "parentFollowupIntentName-1131901680",
            };

            mockGrpcClient.Setup(x => x.GetIntentAsync(expectedRequest, It.IsAny <CallOptions>()))
            .Returns(new Grpc.Core.AsyncUnaryCall <Intent>(Task.FromResult(expectedResponse), null, null, null, null));
            IntentsClient client   = new IntentsClientImpl(mockGrpcClient.Object, null);
            IntentName    name     = new IntentName("[PROJECT]", "[INTENT]");
            Intent        response = await client.GetIntentAsync(name);

            Assert.Same(expectedResponse, response);
            mockGrpcClient.VerifyAll();
        }
Exemplo n.º 2
0
        public void GetIntent2()
        {
            Mock <Intents.IntentsClient> mockGrpcClient = new Mock <Intents.IntentsClient>(MockBehavior.Strict);

            mockGrpcClient.Setup(x => x.CreateOperationsClient())
            .Returns(new Mock <Operations.OperationsClient>().Object);
            GetIntentRequest expectedRequest = new GetIntentRequest
            {
                IntentName   = new IntentName("[PROJECT]", "[INTENT]"),
                LanguageCode = "languageCode-412800396",
            };
            Intent expectedResponse = new Intent
            {
                IntentName               = new IntentName("[PROJECT]", "[INTENT]"),
                DisplayName              = "displayName1615086568",
                Priority                 = 1165461084,
                IsFallback               = false,
                MlDisabled               = true,
                Action                   = "action-1422950858",
                ResetContexts            = true,
                RootFollowupIntentName   = "rootFollowupIntentName402253784",
                ParentFollowupIntentName = "parentFollowupIntentName-1131901680",
            };

            mockGrpcClient.Setup(x => x.GetIntent(expectedRequest, It.IsAny <CallOptions>()))
            .Returns(expectedResponse);
            IntentsClient client       = new IntentsClientImpl(mockGrpcClient.Object, null);
            IntentName    name         = new IntentName("[PROJECT]", "[INTENT]");
            string        languageCode = "languageCode-412800396";
            Intent        response     = client.GetIntent(name, languageCode);

            Assert.Same(expectedResponse, response);
            mockGrpcClient.VerifyAll();
        }
Exemplo n.º 3
0
 /// <summary>Snippet for GetIntent</summary>
 public void GetIntent_RequestObject()
 {
     // Snippet: GetIntent(GetIntentRequest,CallSettings)
     // Create client
     IntentsClient intentsClient = IntentsClient.Create();
     // Initialize request argument(s)
     GetIntentRequest request = new GetIntentRequest
     {
         IntentName = new IntentName("[PROJECT]", "[INTENT]"),
     };
     // Make the request
     Intent response = intentsClient.GetIntent(request);
     // End snippet
 }
Exemplo n.º 4
0
        public List <FraseEntrenamientoModel> ObtenerFrasesEntrenamiento(string intentId)
        {
            var lista = new List <FraseEntrenamientoModel>();

            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);

                    //Frases de Entrenamiento
                    var feId = 1;
                    foreach (var trainingPhrase in intent.TrainingPhrases)
                    {
                        var fraseEntrenamiento = new FraseEntrenamientoModel();
                        fraseEntrenamiento.Id    = feId++;
                        fraseEntrenamiento.StrId = trainingPhrase.Name;
                        fraseEntrenamiento.Tipo  = trainingPhrase.Type + string.Empty;

                        foreach (var phrasePart in trainingPhrase.Parts)
                        {
                            fraseEntrenamiento.Descripcion = fraseEntrenamiento.Descripcion + " " + phrasePart.Text;
                        }
                        lista.Add(fraseEntrenamiento);
                    }
                }

                lista = lista.OrderBy(x => x.Descripcion).ToList();
            }
            catch (Exception ex)
            {
            }
            return(lista);
        }
 /// <summary>Snippet for GetIntent</summary>
 public void GetIntentRequestObject()
 {
     // Snippet: GetIntent(GetIntentRequest, CallSettings)
     // Create client
     IntentsClient intentsClient = IntentsClient.Create();
     // Initialize request argument(s)
     GetIntentRequest request = new GetIntentRequest
     {
         IntentName   = IntentName.FromProjectLocationAgentIntent("[PROJECT]", "[LOCATION]", "[AGENT]", "[INTENT]"),
         LanguageCode = "",
     };
     // Make the request
     Intent response = intentsClient.GetIntent(request);
     // End snippet
 }
Exemplo n.º 6
0
        /// <summary>Snippet for GetIntentAsync</summary>
        public async Task GetIntentAsync_RequestObject()
        {
            // Snippet: GetIntentAsync(GetIntentRequest,CallSettings)
            // Additional: GetIntentAsync(GetIntentRequest,CancellationToken)
            // Create client
            IntentsClient intentsClient = await IntentsClient.CreateAsync();

            // Initialize request argument(s)
            GetIntentRequest request = new GetIntentRequest
            {
                IntentName = new IntentName("[PROJECT]", "[INTENT]"),
            };
            // Make the request
            Intent response = await intentsClient.GetIntentAsync(request);

            // End snippet
        }
        /// <summary>Snippet for GetIntentAsync</summary>
        public async Task GetIntentRequestObjectAsync()
        {
            // Snippet: GetIntentAsync(GetIntentRequest, CallSettings)
            // Additional: GetIntentAsync(GetIntentRequest, CancellationToken)
            // Create client
            IntentsClient intentsClient = await IntentsClient.CreateAsync();

            // Initialize request argument(s)
            GetIntentRequest request = new GetIntentRequest
            {
                IntentName   = IntentName.FromProjectLocationAgentIntent("[PROJECT]", "[LOCATION]", "[AGENT]", "[INTENT]"),
                LanguageCode = "",
            };
            // Make the request
            Intent response = await intentsClient.GetIntentAsync(request);

            // End snippet
        }
        public async stt::Task GetIntentRequestObjectAsync()
        {
            moq::Mock <Intents.IntentsClient> mockGrpcClient = new moq::Mock <Intents.IntentsClient>(moq::MockBehavior.Strict);
            GetIntentRequest request = new GetIntentRequest
            {
                IntentName   = IntentName.FromProjectLocationAgentIntent("[PROJECT]", "[LOCATION]", "[AGENT]", "[INTENT]"),
                LanguageCode = "language_code2f6c7160",
            };
            Intent expectedResponse = new Intent
            {
                IntentName      = IntentName.FromProjectLocationAgentIntent("[PROJECT]", "[LOCATION]", "[AGENT]", "[INTENT]"),
                DisplayName     = "display_name137f65c2",
                TrainingPhrases =
                {
                    new Intent.Types.TrainingPhrase(),
                },
                Parameters =
                {
                    new Intent.Types.Parameter(),
                },
                Priority   = 1546225849,
                IsFallback = true,
                Labels     =
                {
                    {
                        "key8a0b6e3c",
                        "value60c16320"
                    },
                },
                Description = "description2cf9da67",
            };

            mockGrpcClient.Setup(x => x.GetIntentAsync(request, moq::It.IsAny <grpccore::CallOptions>())).Returns(new grpccore::AsyncUnaryCall <Intent>(stt::Task.FromResult(expectedResponse), null, null, null, null));
            IntentsClient client = new IntentsClientImpl(mockGrpcClient.Object, null);
            Intent        responseCallSettings = await client.GetIntentAsync(request, gaxgrpc::CallSettings.FromCancellationToken(st::CancellationToken.None));

            xunit::Assert.Same(expectedResponse, responseCallSettings);
            Intent responseCancellationToken = await client.GetIntentAsync(request, st::CancellationToken.None);

            xunit::Assert.Same(expectedResponse, responseCancellationToken);
            mockGrpcClient.VerifyAll();
        }
        public void GetIntentResourceNames()
        {
            moq::Mock <Intents.IntentsClient> mockGrpcClient = new moq::Mock <Intents.IntentsClient>(moq::MockBehavior.Strict);
            GetIntentRequest request = new GetIntentRequest
            {
                IntentName = IntentName.FromProjectLocationAgentIntent("[PROJECT]", "[LOCATION]", "[AGENT]", "[INTENT]"),
            };
            Intent expectedResponse = new Intent
            {
                IntentName      = IntentName.FromProjectLocationAgentIntent("[PROJECT]", "[LOCATION]", "[AGENT]", "[INTENT]"),
                DisplayName     = "display_name137f65c2",
                TrainingPhrases =
                {
                    new Intent.Types.TrainingPhrase(),
                },
                Parameters =
                {
                    new Intent.Types.Parameter(),
                },
                Priority   = 1546225849,
                IsFallback = true,
                Labels     =
                {
                    {
                        "key8a0b6e3c",
                        "value60c16320"
                    },
                },
                Description = "description2cf9da67",
            };

            mockGrpcClient.Setup(x => x.GetIntent(request, moq::It.IsAny <grpccore::CallOptions>())).Returns(expectedResponse);
            IntentsClient client   = new IntentsClientImpl(mockGrpcClient.Object, null);
            Intent        response = client.GetIntent(request.IntentName);

            xunit::Assert.Same(expectedResponse, response);
            mockGrpcClient.VerifyAll();
        }
Exemplo n.º 10
0
 Task <GetIntentResponse> ILexBotGeneratorDependencyProvider.GetIntentAsync(GetIntentRequest request) => _lexBuildingClient.GetIntentAsync(request);
Exemplo n.º 11
0
        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);
        }
Exemplo n.º 12
0
        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);
        }