2017-02-23 11 views
0

1つのボットインスタンスから複数のボットを提供したい。 例:api/bot1/messages、api/bot2/messagesなど。 私はgoogleと私はgithubからいくつかの死んだリンクを発見した。1つのボットインスタンスから複数のボットを提供する

私は、マニュアルで読む:https://docs.botframework.com/en-us/csharp/builder/sdkreference/connectormisc.html#securing

しかし、どのようにセットアップにこれをしますか?私は私のWeb APIでいくつかのルーティング設定が必要ですか?

右のマイクロソフトのアプリIDとパスワードをメッセージコントローラに「ロードする」方法はありますか?

Btw私はweb apiとbotフレームワークでは新しいです。

答えて

0

C#で新しいボットを作成すると、Defaultルートapi/MessagesでMessagesControllerが取得されます。

同じプロジェクト内に2つ目のBotを作成するには、新しいControllerを作成します(たとえば、MessagesControllerをコピーして名前を変更するなど)。たとえば、SecondMessagesController => api/SecondMessagesのようなコントローラの名前を持つ新しいルートが表示されます

RoutePrefix属性の場合、クラス定義の上には[RoutePrefix("api/bot1messages")]などのルート名を変更できます。

これは、問題なく私がlocalyをテストしたものです。ボットを公開するには次のパートが必要ですが、まだテストしていません。

現在、両方のボットで同じ承認があります。両方ともweb.configを使用してAppIdとAppPasswordを取得しているためです。しかし、BotFrameworksでは、各Botごとに個別のIDとパスワードが必要です。それを得るには、BotAuthorization属性の中に直接提供することができます。例えば、[BotAutorization(AppId = "MyId", AppPassword = "MyPassword")]

+0

これはエラーを投げます。例外は400です(複数のメッセージコントローラがあります)。ルートが異なるので、私はこれをかなりよく理解していませんでした。 – InfectedMushroom

+0

あなたは例外についての詳細を送ることができますか? –

+0

http://stackoverflow.com/questions/42488700/bot-does-not-respond-to-messages – InfectedMushroom

関連する問題