【クラウドAI開発講座】Teamsのオウム返しするボットを作ってみた


概要

この記事はクラウドAI開発講座の2週目の進捗報告です。
前の記事→【クラウドAI開発講座】マイクロソフトと高専キャリアがコラボしたらしいので参加してみた。
次の記事→【クラウドAI開発講座】CognitiveServicesを使ってみた

クラウドAI開発講座の公式ページ→https://online.kosen-career.tech/ai

進捗

ちょまどさんの記事を参考にTeamsのオウム返しボットを作成し、アプリをAzureにデプロイするところまでできました。
(丁寧に説明されていて感謝です...!)

参考にした記事の通り、BotFrameworkのEchoBotのテンプレートからプロジェクトを作成し、EchoBot.csを以下のように書き換えました。

EchoBot.cs
//usingは省略
namespace TeamsEchoBot.Bots
{
    public class EchoBot : ActivityHandler
    {
        protected override async Task OnMessageActivityAsync(ITurnContext<IMessageActivity> turnContext, CancellationToken cancellationToken)
        {
            var replyText = $"(・ω・`): {turnContext.Activity.Text}";
            await turnContext.SendActivityAsync(MessageFactory.Text(replyText, replyText), cancellationToken);
        }

        protected override async Task OnMembersAddedAsync(IList<ChannelAccount> membersAdded, ITurnContext<IConversationUpdateActivity> turnContext, CancellationToken cancellationToken)
        {
            var welcomeText = "Hello and welcome!";
            foreach (var member in membersAdded)
            {
                if (member.Id != turnContext.Activity.Recipient.Id)
                {
                    await turnContext.SendActivityAsync(MessageFactory.Text(welcomeText, welcomeText), cancellationToken);
                }
            }
        }
    }
}

その後AzureのAppServiceにアプリをデプロイし、ボットが動くことを確認...しようとしたのですが、弊高専のTeamsではカスタムアプリのインストールが禁止されていることが発覚。
相談した結果高専キャリアのTeams環境を用意していただき、無事Teams上でボットを動かすことができました。

ちょまどさんの記事ではmanifest.jsonを手書きで用意していましたが、AppStudioというTeamsのアプリを利用することでGUIからmanifest.jsonを編集し、AppStudioから自作のアプリをインストールできるようです。
参考: これでできる! Microsoft Teams アプリ開発のポイント徹底解説

次回の目標

次回はおーちょさんの記事を読んでCognitive Serviceを使いこなせるようになりたいです。