Direct Line API 3.0 の主要な概念Key concepts in Direct Line API 3.0

Direct Line API を使用すると、ボットと独自のクライアント アプリケーション間の通信を有効にできます。You can enable communication between your bot and your own client application by using the Direct Line API. この記事では、Direct Line API 3.0 の主要概念を紹介し、関連する開発者リソースに関する情報を提供します。This article introduces key concepts in Direct Line API 3.0 and provides information about relevant developer resources.

認証Authentication

Direct Line API 3.0 の要求は、Bot Framework ポータルの Direct Line チャネル構成ページから取得するシークレットを使用するか、実行時に取得するトークンを使用して認証できます。Direct Line API 3.0 requests can be authenticated either by using a secret that you obtain from the Direct Line channel configuration page in the Bot Framework Portal or by using a token that you obtain at runtime. 詳細については、認証に関するページをご覧ください。For more information, see Authentication.

会話の開始Starting a conversation

Direct Line の会話はクライアントによって明示的に開かれ、ボットとクライアントが参加し、有効な資格情報を持っている限り続きます。Direct Line conversations are explicitly opened by clients and may run as long as the bot and client participate and have valid credentials. 詳細については、「会話の開始」を参照してください。For more information, see Start a conversation.

メッセージを送信するSending messages

Direct Line API 3.0 を使用すると、クライアントは HTTP POST 要求を発行することでメッセージを送信できます。Using Direct Line API 3.0, a client can send messages to your bot by issuing HTTP POST requests. クライアントは、要求ごとに 1 つのメッセージを送信できます。A client may send a single message per request. 詳しくは、「ボットにアクティビティを送信する」をご覧ください。For more information, see Send an activity to the bot.

メッセージの受信Receiving messages

Direct Line API 3.0 を使用すると、クライアントは、WebSocket ストリームを通して、または HTTP GET 要求を発行してボットからメッセージを受信できます。Using Direct Line API 3.0, a client can receive messages from your bot either via WebSocket stream or by issuing HTTP GET requests. これらの手法のいずれかを使用することによって、クライアントは、ActivitySet の一部としてボットから一度に複数のメッセージを受信できます。Using either of these techniques, a client may receive multiple messages from the bot at a time as part of an ActivitySet. 詳細については、「ボットからアクティビティを受信する」を参照してください。For more information, see Receive activities from the bot.

開発者向けリソースDeveloper resources

クライアント ライブラリClient libraries

Bot Framework では、C# と Node.js からの Direct Line API 3.0 へのアクセスを容易にするクライアント ライブラリが提供されています。The Bot Framework provides client libraries that facilitate access to Direct Line API 3.0 via C# and Node.js.

  • Visual Studio プロジェクト内で .NET クライアント ライブラリを使用するには、Microsoft.Bot.Connector.DirectLine NuGet パッケージをインストールしてください。To use the .NET client library within a Visual Studio project, install the Microsoft.Bot.Connector.DirectLine NuGet package.

  • Node.js クライアント ライブラリを使用するには、NPM を使用して botframework-directlinejs ライブラリをインストール (またはソースをダウンロード) してください。To use the Node.js client library, install the botframework-directlinejs library using NPM (or download the source).

サンプル コードSample code

BotBuilder-Samples GitHub リポジトリには、C# と Node.js で Direct Line API 3.0 を使用する方法を示す複数のサンプルが含まれています。The BotBuilder-Samples GitHub repo contains multiple samples that show how to use Direct Line API 3.0 with C# and Node.js.

サンプルSample 言語Language [説明]Description
Direct Line Bot のサンプルDirect Line Bot Sample C#C# Direct Line API を使用して相互に通信するサンプル ボットとカスタム クライアント。A sample bot and a custom client communicating to each other using the Direct Line API.
Direct Line Bot のサンプル (クライアント WebSocket を使用)Direct Line Bot Sample (using client WebSockets) C#C# Direct Line API と WebSocket を使用して相互に通信するサンプル ボットとカスタム クライアント。A sample bot and a custom client communicating to each other using the Direct Line API and WebSockets.
Direct Line Bot のサンプルDirect Line Bot Sample JavaScriptJavaScript Direct Line API を使用して相互に通信するサンプル ボットとカスタム クライアント。A sample bot and a custom client communicating to each other using the Direct Line API.
Direct Line Bot のサンプル (クライアント WebSocket を使用)Direct Line Bot Sample (using client WebSockets) JavaScriptJavaScript Direct Line API と WebSocket を使用して相互に通信するサンプル ボットとカスタム クライアント。A sample bot and a custom client communicating to each other using the Direct Line API and WebSockets.

Web チャット コントロールWeb chat control

Bot Framework では、Direct Line によって強化されたボットをクライアント アプリケーションに埋め込めるようにするコントロールが提供されています。The Bot Framework provides a control that enables you to embed a Direct-Line-powered bot into your client application. 詳細については、Microsoft Bot Framework WebChat コントロールに関するページを参照してください。For more information, see the Microsoft Bot Framework WebChat control.