Запросы, не отображаемые в Microsoft Boot Встроенный бот - PullRequest
1 голос
/ 01 октября 2019

Я создал бота, используя сервис QnaMaker.ai и сервисы Microsoft Azure. Он отлично работает с каналом веб-чата. Теперь я интегрировал его с каналом Microsoft Team, и тут я столкнулся с проблемой. Запросы, которые работали в канале веб-чата, не работают так же, как в канале Команды. Как и в случае с вопросом, я показал 4 варианта выбора. Но в командах Microsoft это бот в канале чата Bot in webchat и бот в командах Bot in Teams

Ответы [ 2 ]

1 голос
/ 01 октября 2019

Вы пытаетесь показать предложенные действия? Предлагаемые действия не поддерживаются в командах Microsoft. если вы хотите, чтобы кнопки появлялись в сообщении бота Teams, попробуйте использовать карты . Пожалуйста, дайте нам знать, если вам нужна дополнительная помощь.

0 голосов
/ 03 октября 2019

Вы можете использовать ChoiceFactory.toChoices в командах, и это будет работать. Я предпочитаю этот метод, потому что он прост (все, что вам нужно, это массив вариантов выбора в виде строк), и он работает, но вы также можете использовать ChoiceFactory.forChannel, который должен автоматически форматировать варианты для ЛЮБОГО канала. Вот пример одного из ботов, которых я использую в командах, где кнопки отображаются нормально. Это nodejs, но тот же класс будет работать в C #.

        FOCUS_AREAS = ['Chatbots','RPA','Blockchain','AR/VR','AI & ML'];
        return await step.prompt(FOCUS_AREA_PROMPT, {
            prompt: 'Which focus area is this for?',
            choices: ChoiceFactory.toChoices(FOCUS_AREAS)
        });

Справка от Microsoft: https://docs.microsoft.com/en-us/javascript/api/botbuilder-dialogs/choicefactory?view=botbuilder-ts-latest

Примеры: Вот вывод из кода выше. Общая длина слишком велика для отображения в виде кнопок в канале Команды, поэтому она автоматически переключается на нумерованный список.

teamsNumberedList

В приведенном ниже примере используется то же самоеточная реализация ChoiceFactory.toChoices, только с меньшим количеством опций, поэтому она отображается в виде кнопок вместо нумерованного списка.

teamsButtonList

...