private async Task <string> DetectIntent(string inputAudio)
        {
            InputAudioConfig audioConfig = ConfigureAudioInput();

            OutputAudioConfig outputConfig = ConfigureAudioOutput();

            QueryInput queryInput = new QueryInput()
            {
                AudioConfig = audioConfig,
            };

            DetectIntentContent detectIntentContent = new DetectIntentContent()
            {
                queryInput        = queryInput,
                inputAudio        = inputAudio,
                outputAudioConfig = outputConfig
            };

            JsonSerializerSettings settings = new JsonSerializerSettings();

            settings.ContractResolver = new Newtonsoft.Json.Serialization.CamelCasePropertyNamesContractResolver();

            string content = JsonConvert.SerializeObject(detectIntentContent, settings);

            content = content.Replace(",\"inputCase\":1", "");

            Uri requestUri             = new Uri("https://dialogflow.googleapis.com/v2/projects/mistyapi-pxxkne/agent/sessions/123456:detectIntent");
            HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Post, requestUri);

            request.Content = new StringContent(content, Encoding.UTF8);

            request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", _credential.AuthToken);
            HttpResponseMessage result = await _client.SendAsync(request);

            string stringResult = await result.Content.ReadAsStringAsync();


            OnQueryResultReceived?.Invoke(this, stringResult);
            return(stringResult);
        }