Esempio n. 1
0
        private async Task MessageReceivedAsync(IDialogContext context, IAwaitable <object> result)
        {
            var activity = await result as Activity;

            // calculate something for us to return
            int length = (activity.Text ?? string.Empty).Length;

            //Get All Conversation Dialogs
            var restult = await WebRequestExtension.GetConversationModelModelAsync(EndPointUrl.ConversationEndpoint);


            //Dsiplays all prompts in JSON File
            foreach (var msg  in restult)
            {
                await context.PostAsync(msg.Message);
            }

            context.Wait(MessageReceivedAsync);
        }
Esempio n. 2
0
        /// <summary>
        /// Executes the request and returns the result.
        /// </summary>
        /// <param name="request">          The BCE request to send to the remote server </param>
        /// <exception cref="BaiduBce.BceClientException">  If any errors are encountered on the client while making the
        ///             request or handling the response. </exception>
        /// <exception cref="BaiduBce.BceServiceException"> If any errors occurred in BCE while processing the request. </exception>
        public HttpWebResponse Execute(InternalRequest request)
        {
            BceClientConfiguration config = request.Config;

            if (config.Credentials != null)
            {
                if (config.Credentials is IBceSessionCredentials)
                {
                    request.Headers[BceConstants.HttpHeaders.BceSecurityToken] =
                        (config.Credentials as IBceSessionCredentials).SessionToken;
                }
                request.Headers[BceConstants.HttpHeaders.Authorization] = config.Signer.Sign(request);
            }
            HttpWebRequest httpWebRequest = CreateHttpWebRequest(request);

            PopulateRequestHeaders(request, httpWebRequest);
            if (request.Content != null)
            {
                if (request.Content.CanSeek)
                {
                    request.Content.Position = request.StartPosition;
                }
                httpWebRequest.AllowWriteStreamBuffering = false;
                using (Stream requestStream = WebRequestExtension.GetRequestStreamWithTimeout(httpWebRequest))
                {
                    var  buffer         = new byte[(int)config.SocketBufferSizeInBytes];
                    int  bytesRead      = 0;
                    int  totalBytesRead = 0;
                    long contentLength  = GetContentLengthFromInternalRequest(request);
                    try
                    {
                        while ((bytesRead = request.Content.Read(buffer, 0, buffer.Length)) > 0)
                        {
                            if (contentLength > 0 && (bytesRead + totalBytesRead) >= contentLength)
                            {
                                requestStream.Write(buffer, 0, (int)(contentLength - totalBytesRead));
                                break;
                            }
                            else
                            {
                                requestStream.Write(buffer, 0, bytesRead);
                                totalBytesRead += bytesRead;
                            }
                        }
                    }
                    catch (NotSupportedException e)
                    {
                        //a very strange phenomenon:
                        //if bos server is down, we will receive a NotSupportedException when execute requestStream.Write(...)
                        if (log.IsDebugEnabled)
                        {
                            log.Debug("error when put data.", e);
                        }
                    }
                }
            }
            try
            {
                return(WebRequestExtension.GetResponseWithTimeout(httpWebRequest) as HttpWebResponse);
            }
            catch (WebException e)
            {
                if (e.Status != WebExceptionStatus.ProtocolError)
                {
                    throw e;
                }
                using (var response = e.Response as HttpWebResponse)
                {
                    throw BceServiceException.CreateFromHttpWebResponse(response);
                }
            }
        }