「C#」「Visual Studio」「Microsoft Bot Framework」でボットチャットのメッセージを編集する方法について入門者向けにまとめました。
## ボットチャットのメッセージを編集
①Visual Studioで[Bot Application]のプロジェクトを開きます。
| – | 補足「Microsoft Bot Frameworkのインストール・動作確認」はこちら |
|---|---|
| 1 | 【VS2017】Microsoft Bot Framework 一式をインストール |
| 2 | テンプレートのパッケージ更新 |
| 3 | エミュレータの動作確認 |
② [Controllers]フォルダ → [MessagesController.cs]ファイルを開きます。
③ メッセージ受信時の処理
次の部分が、ユーザーからのメッセージを受信する部分となります。
public async Task<HttpResponseMessage> Post([FromBody]Activity activity)
{
if (activity.Type == ActivityTypes.Message)
{
await Conversation.SendAsync(activity, () => new Dialogs.RootDialog());
}
else
{
HandleSystemMessage(activity);
}
var response = Request.CreateResponse(HttpStatusCode.OK);
return response;
}
④ ボット側のメッセージを作成
次の部分が、ボット側のメッセージを作成する部分です。
public Task StartAsync(IDialogContext context)
{
context.Wait(MessageReceivedAsync);
return Task.CompletedTask;
}
private async Task MessageReceivedAsync(IDialogContext context, IAwaitable<object> result)
{
var activity = await result as Activity;
// ユーザーのメッセージの文字数をカウント
int length = (activity.Text ?? string.Empty).Length;
// 返信の定義部分
await context.PostAsync($"You sent {activity.Text} which was {length} characters");
context.Wait(MessageReceivedAsync);
}
例えば、返信の定義部分を次のようにすると、単にオウム返しするチャットボットになります。
await context.PostAsync($"「{activity.Text}」");
| – | 関連ページ |
|---|---|
| 1 | ■【Microsoft Bot Framework入門】ボット作成・使い方 |
| 2 | ■【C#入門】基礎文法とサンプル集 |

コメント