Всем привет! Меня зовут Ритик Махаджан, и я фронтенд-разработчик в VideoWiki, входящей в состав GetBoarded. Я рад поделиться с вами всеми знаниями, которые я получил благодаря своему опыту создания чат-ботов для MS Teams.

Если вы похожи на меня, вы, возможно, боролись с идеей интеграции приложений MS Teams, особенно если вы новичок в наборе инструментов Teams. Но не бойтесь, в этом руководстве мы проведем вас через шаги, необходимые для создания вашего первого чат-бота для Teams.

К концу этого блога вы сможете разработать бота, похожего на нашего бота VideoWiki MS-Teams, который использует искусственный интеллект для легкого создания захватывающих видео. Все, что вам нужно сделать, это поделиться ссылкой или загрузить документ, PDF или презентацию PowerPoint на нашу платформу VideoWiki. Приготовьтесь раскрыть свое внутреннее мастерство в создании видео!

Предпосылки

  1. VS-код
  2. узлы
  3. Учетная запись разработчика M365

Итак, давайте начнем

Во-первых, давайте поговорим о получении учетной записи M365.

Шаг 1: - Перейдите в Программу разработчика M365 и создайте учетную запись или войдите в существующую.

Шаг 2: После входа в систему он должен направить вас на страницу вашего профиля. Если нет, просто нажмите на эту ссылку: Профиль-Страница

Шаг 3: Заполните данные и создайте арендатора/учетную запись администратора.

Теперь, после настройки учетной записи разработчика M365, откройте VS-Code и приготовьтесь к разработке. Чтобы создать командного бота, выполните указанные шаги.

Шаг 1: Откройте VS-Code и нажмите «Расширения».

Шаг 2. Найдите набор инструментов Teams и установите его, созданный Microsoft. После завершения установки вы увидите логотип команды на левой панели инструментов.

Шаг 3: Нажмите на логотип команды, и вы увидите кучу кнопок. Щелкните Создать новое приложение.

Шаг 4. Нажмите «Создать новое приложение Teams».

Шаг 5: Нажмите на командного бота.

Шаг 6: Выберите язык, который вы предпочитаете для разработки. Я пока выбираю Javascript.

Шаг 7: Выберите нужную папку и дайте ей красивое имя.

Шаг 8. Откройте только что созданную папку в другом окне VS-Code и нажмите на логотип команды. Вы увидите новый набор инструкций.

Шаг 9: Войдите в административную учетную запись, которую вы создали на своем M365 dev.

Шаг 10. Нажмите «Предварительный просмотр приложения Teams» или нажмите F5.

Шаг 11: Поздравляем! Вы стали владельцем чат-бота Teams!

Теперь вам должно быть интересно: хорошо, у меня есть чат-бот; что теперь? Он знает только одну команду. Не волнуйся; мы также научимся создавать новые команды за несколько минут.

Шаг 1: Чтобы добавить новые команды, вы должны сначала зарегистрировать команду в ./bot/src/internal/initialize.js в массиве команд, добавив такой элемент, как new MyCommandHandler().

const { BotBuilderCloudAdapter } = require("@microsoft/teamsfx");
const ConversationBot = BotBuilderCloudAdapter.ConversationBot;
const { HelloWorldCommandHandler } = require("../helloworldCommandHandler");
const { MyCommandHandler }  = require("../myCommandHandler")
const config = require("./config");

// Create the command bot and register the command handlers for your app.
// You can also use the commandBot.command.registerCommands to register other commands
// if you don't want to register all of them in the constructor
const commandBot = new ConversationBot({
  // The bot id and password to create CloudAdapter.
  // See https://aka.ms/about-bot-adapter to learn more about adapters.
  adapterConfig: {
    MicrosoftAppId: config.botId,
    MicrosoftAppPassword: config.botPassword,
    MicrosoftAppType: "MultiTenant",
  },
  command: {
    enabled: true,
    commands: [new HelloWorldCommandHandler(), new MyCommandHandler()],
  },
});

module.exports = {
  commandBot,
};

Шаг 2: После регистрации вашей команды вам необходимо создать карточку, которую бот отправит вам после получения команды, создав MyCommand.json.

Здесь

тип определяет тип карты

тело содержит стиль карты

action - это массив, который будет отображать кнопки и т. д.

{
    "type": "AdaptiveCard",
    "body": [
      {
        "type": "TextBlock",
        "size": "Medium",
        "weight": "Bolder",
        "text": "${title}"
      },
      {
        "type": "TextBlock",
        "text": "${body}",
        "wrap": true
      }
    ],
    "actions": [
      {
        "type": "Action.OpenUrl",
        "title": "Bot Framework Docs",
        "url": "https://docs.microsoft.com/en-us/azure/bot-service/?view=azure-bot-service-4.0"
      },
      {
        "type": "Action.OpenUrl",
        "title": "Teams Toolkit Docs",
        "url": "https://aka.ms/teamsfx-docs"
      }
    ],
    "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
    "version": "1.4"
  }

Шаг 3: Теперь, когда данные передаются в ваш MyCommand.json, вам нужно создать класс MyCommandHandler в MyCommandHandler.js.

const myCommandCard = require("./adaptiveCards/MyCommand.json");
const { AdaptiveCards } = require("@microsoft/adaptivecards-tools");
const { CardFactory, MessageFactory } = require("botbuilder");

class HelloWorldCommandHandler {
  triggerPatterns = "my command";

  async handleCommandReceived(context, message) {
    // Verify the command arguments which are received from the client if needed.
    console.log(`Bot received message: ${message.text}`);

    // do something to process your command and return message activity as the response

    // render your adaptive card for reply message
    const cardData = {
      title: "Hurrah!!! You have created your first command",
      body: "Congratulations! Your hello world bot is running. Click the documentation below to learn more about Bots and the Teams Toolkit.",
    };

    const cardJson = AdaptiveCards.declare(myCommandCard).render(cardData);
    return MessageFactory.attachment(CardFactory.adaptiveCard(cardJson));
  }
}

module.exports = {
  MyCommandHandler,
};

Шаг 4: Перезапустите чат-бота и посмотрите, как работает новая команда.

Мы можем создать множество пользовательских команд, адаптированных к вашим конкретным потребностям, и спроектировать бота в соответствии с вашими предпочтениями. Чтобы сделать его еще более удивительным, мы можем черпать вдохновение из нашего собственного бота VideoWiki, доступного в MS Teams, и использовать его стильный дизайн и интуитивно понятный интерфейс.

Поздравляем! Мы научились создавать чат-бота для Teams и добавлять новые команды! Благодаря этому навыку вы теперь можете создавать настраиваемых чат-ботов, которые могут автоматизировать задачи, предоставлять информацию и оптимизировать общение для вашей команды или организации. Возможности безграничны; предела нет, и я желаю вам удачи в вашем путешествии по разработке чат-бота!

Заключение

Создание чат-бота для Microsoft Teams может стать эффективным способом автоматизации задач и улучшения коммуникации внутри вашей организации. С помощью Teams Toolkit и некоторых базовых навыков программирования вы можете быстро создать функционального бота, который может реагировать на команды пользователя и даже взаимодействовать с внешними службами.

Хотя процесс создания чат-бота поначалу может показаться сложным, шаги, описанные в этом сообщении в блоге, могут помочь упростить процесс и быстро запустить вас. Не забывайте тестировать и улучшать своего бота, чтобы убедиться, что он отвечает потребностям ваших пользователей и продолжает приносить пользу с течением времени. Приложив немного творчества и усилий, вы можете создать чат-бота, который упростит рабочие процессы, улучшит общение и повысит общую производительность вашей организации.

Также я хотел бы выразить благодарность Аману Бишному за его неоценимое руководство и поддержку на протяжении всего процесса интеграции.

Я также хотел бы поблагодарить команду VideoWiki за предоставленную мне возможность и за их поддержку.

Документация от Microsoft также очень помогла, и я бы порекомендовал следовать ей, так как я тоже следовал ей и нашел ее очень точной и точной. Для вашего удобства мы прикрепляем ссылку ниже:
Обзор Teams Toolkit