2016-08-18 14 views
0

C#でコード化したボットをVisual Studio 2015からAWSに公開しようとしています。 Amazon Cloud SDKをインストールし、AWSにボットを正常に公開することができました。ボットのエンドポイントを与えたアドレス(http://benbot-dev.us-west-2.elasticbeanstalk.com/)で更新しました。しかし、私がMicrosoft Botsのサイトに行ってボット接続をテストすると、リモートサーバーに接続できませんというメッセージが表示されます。助けてください。私はそれがhttpsエンドポイントの問題だと思っています。しかし、私はAPI Gatewayのエンドポイントを取得する方法がわかりません。AWSに公開した後のMicrosoft Botの接続エラー

<<<<<<<<<< 
500 InternalServerError 
System.Net.Http.HttpRequestException: An error occurred while sending the request. ---> System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond 52.42.245.162:443 
    at System.Net.Sockets.Socket.EndConnect(IAsyncResult asyncResult) 
    at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception) 
    --- End of inner exception stack trace --- 
    at System.Net.HttpWebRequest.EndGetRequestStream(IAsyncResult asyncResult, TransportContext& context) 
    at System.Net.Http.HttpClientHandler.GetRequestStreamCallback(IAsyncResult ar) 
    --- End of inner exception stack trace --- 
    at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 
    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 
    at Intercom.DevPortal.Server.Controllers.BotManagerController.<PingV3BotAsync>d__54.MoveNext() in C:\a\1\s\DevPortalLib\Controllers\BotManagerController.cs:line 1420 
>>>>>>>>>>>>>>>> 
+0

ローカルから「ping」できますホストリーチ52.42.245.162?はいの場合は、AWSサービスから同じものを実行できますか? – oldbam

+0

こんにちは@oldbam。ヘルプのためのTxs。いいえ、私はpingできません。リクエストはタイムアウトしました。私は、ボットが公開されたが、いくつかのAPIサービスにリンクされていないということを意味していると思っていますか?またはメッセージを送受信できるメッセージエンドポイントを持つものなどです。しかし、私はそれがAWSでどのように行われているのかわかりません。彼らはそれをとても複雑にします。 –

答えて

0

この例外メッセージは、サーバーのコード内(HTTPSポート443にアクセスできない、より具体的に)あなたが52.42.245.162でサーバーに到達しようとしているが、このサーバーにアクセスできないことを示しています。このIPは一部のAWSホストに解決されます(これを見つけるにはnslookupコマンドを使用してください、this answerを参照)。このIPをpingしようとするか、またはポート80にアクセスできるかどうかを調べることができます(どちらも私のホストからのものではありません)。または、他のポートがそのホストで開いている場合は列挙しようとすることができます(その方法についてはgoogle/bingを検索してください)。ホストからそのポートにアクセスできない場合は、Microsoft Botsのサイトにもアクセスできません。あなたのサービスがそのIP上で実行されている場合は、公共のインターネットからアクセスできるようにAWS上のポートを開く必要があります(aws open portまたはaws allow sshを検索してください)

+0

ありがとうございました。読んだ後に、私は、Beanstalk環境で443ポートを開こうとしましたが、SSL証明書を要求します。 AWS Certificate Managerコンソールから新しいSSL証明書をリクエストしようとしていて、ウェブサイトを要求しました。今は私が与えなければならないウェブサイトを理解できません。ボットのURL?アマゾンのサイトはウェブサイトとして提供することができないので、そのアドレスを取ることはありません。したがって、どのウェブサイトが与えられるべきですか。私はどんなウェブサイトも持っていません。 AWSクラウドにボットを公開しようとしていますが、AWSのこの複雑な手順は本当に難しくなっています。 –

+0

ポート443にナビゲートすると、そのポートで待機しているWebサーバーは、そのIDを確認する証明書を提示します。それをいくつかの権威によって発行されたパスポートと考えてください。あなたはおそらく、あなたが有効な証明書を取得しようとしているAWSでホストされているあなたのサービスについて話しているでしょう。この場合、ホストされているサービスのアドレスになります – oldbam

関連する問題