Создание карусельных карт в AWS Lex

голоса
2

Я пытаюсь построить электронную коммерцию Chatbot с помощью Лекса.

Есть ли решение использовать карусельную карту или мульти карт ответов в Lex?

Например:

введите

Благодаря..

Задан 04/12/2017 в 17:49
источник пользователем
На других языках...                            


1 ответов

голоса
4

Вы можете отобразить несколько карт отклика в ответ , и он будет отображаться как карусель. Следуйте этот пример , чтобы сгенерировать ответ карт через консоль (вы также можете сделать это динамически в коде).

Метод консоли:
В изображении ниже, в Prompt response cardsразделе, см в правой части, есть маленькая +кнопка, нажмите на это , и вы можете добавить больше карт.

введите описание изображения здесь

Динамический метод (с использованием Lambda):

'dialogAction': {
    'type': 'Close',
    'fulfillmentState': 'Fulfilled',
    'message': {
        'contentType': 'PlainText',
        'content': message
    },
    'responseCard': {
    'version': '0',
    'contentType': 'application/vnd.amazonaws.card.generic',
    'genericAttachments': [
        {
        'title': 'title1',
        'subTitle': 'subtitle1',
        'attachmentLinkUrl': 'link_that_will_open_on_click',
        'imageUrl': 'link_of_image_to_display',
        "buttons":[ 
             {
                "text":"button_1",
                "value":"value_to_be_sent_to_server_on_click"
             },
             {
                "text":"button_2",
                "value":"value_to_be_sent_to_server_on_click"
             },
             {
                "text":"button_3",
                "value":"value_to_be_sent_to_server_on_click"
             }
            ]
        },
        {
        'title': 'title2',
        'subTitle': 'subtitle2',
        'attachmentLinkUrl': 'link_that_will_open_on_click',
        'imageUrl': 'link_of_image_to_display',
        "buttons":[ 
             {
                "text":"button_1",
                "value":"value_to_be_sent_to_server_on_click"
             },
             {
                "text":"button_2",
                "value":"value_to_be_sent_to_server_on_click"
             },
             {
                "text":"button_3",
                "value":"value_to_be_sent_to_server_on_click"
             }
            ]
        },
        {
        'title': 'title3',
        'subTitle': 'subtitle3',
        'attachmentLinkUrl': 'link_that_will_open_on_click',
        'imageUrl': 'link_of_image_to_display',
        "buttons":[ 
             {
                "text":"button_1",
                "value":"value_to_be_sent_to_server_on_click"
             },
             {
                "text":"button_2",
                "value":"value_to_be_sent_to_server_on_click"
             },
             {
                "text":"button_3",
                "value":"value_to_be_sent_to_server_on_click"
             }
            ]
        }
    ]

    }
}

Примечание 1: Вы можете иметь maximum of 10 response cardsв карусели, и maximum of 3 buttonsв одной карусели. Если у вас есть более чем 10 карт, вы получите сообщение об ошибке. Если у вас есть более чем 3 кнопки, вы не получите сообщение об ошибке , но только первые 3 будет показано.
Примечание 2: Вам необходимо проверить messaging_postbacksсобытия в Webhooksв настройках мессенджеров в приложении Facebook , чтобы сделать кнопки карусельной работы.

Я реализовал карты ответа в поле ниже образом:

введите описание изображения здесь
Смотрите карты приходят как карусель, вы можете листать, чтобы увидеть больше карт.

Надеюсь, поможет.

Ответил 05/12/2017 в 05:54
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more