Адаптивная карта с 2 действиями (Принять / Отклонить)

Может кто-нибудь помочь, как справиться с двумя действиями отправки в адаптивной карте? Если пользователь нажимает кнопку "Принять", должен начаться другой диалог. Если пользователь нажимает кнопку "Отмена", должен начаться диалог перезапуска.

Макет JSON

        "actions": [
        {
            "type": "Action.Submit",
            "title": "Accept",
            "data": { "choice": "Accept"}
        },
        {
            "type": "Action.Submit",
            "title": "Decline",
            "data": { "choice": "Decline"}
        }
    ]

Код:

bot.dialog('overview', function (session, options) {
    if (session.message && session.message.value) {
        if(choice == "Accept"){
            session.beginDialog('otherDialog');
        } else if (choice == "Decline"){
            session.beginDialog('restart');
        }
        return;
    }

1 ответ

выбор будет собственностью на .value

bot.dialog('overview', function (session, options) {
    if (session.message && session.message.value) {
        session.endDialog();
        switch (session.message.value.choice) {
            case 'Accept':
                session.beginDialog('otherDialog');
                break;
            case 'Decline':
                session.beginDialog('restart');
                break;                
          }             
        return;
    }else{
        //show the card, since there has not been a choice
        var cardMessage  = require('./overviewCard.json');
        cardMessage.address = session.message.address
        bot.send(cardMessage)
    }
})
Другие вопросы по тегам