Ввод адаптивных карт в шаблонах руля

В основном я пытаюсь изменить BotKit Webchat для использования адаптивных карт, так как адаптивные карты поддерживаются в виде плоскости HTML, используя документацию javascript SDK, я смог сделать это в плоскости HTML, но в случае с Botkit, то есть с рулями, которые я смог сделать карту но кнопки на карте не работают, я не могу проверить, есть ли проблема, так как я очень плохо знаком с рулем,

if(message.is_card && message.text){
      var card = {
        "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
        "type": "AdaptiveCard",
        "version": "1.0",
        "body": [
          {
            "type": "ColumnSet",
            "columns": [
              {
                "type": "Column",
                "width": 2,
                "items": [
                  {
                    "type": "TextBlock",
                    "text": "Tell us about yourself",
                    "weight": "bolder",
                    "size": "medium"
                  },
                  {
                    "type": "TextBlock",
                    "text": "We just need a few more details to get you booked for the trip of a lifetime!",
                    "isSubtle": true,
                    "wrap": true
                  },
                  {
                    "type": "TextBlock",
                    "text": "Don't worry, we'll never share or sell your information.",
                    "isSubtle": true,
                    "wrap": true,
                    "size": "small"
                  },
                  {
                    "type": "TextBlock",
                    "text": "Your name",
                    "wrap": true
                  },
                  {
                    "type": "Input.Text",
                    "id": "myName",
                    "placeholder": "Last, First"
                  },
                  {
                    "type": "TextBlock",
                    "text": "Your email",
                    "wrap": true
                  },
                  {
                    "type": "Input.Text",
                    "id": "myEmail",
                    "placeholder": "youremail@example.com",
                    "style": "email"
                  },
                  {
                    "type": "TextBlock",
                    "text": "Phone Number"
                  },
                  {
                    "type": "Input.Text",
                    "id": "myTel",
                    "placeholder": "xxx.xxx.xxxx",
                    "style": "tel"
                  }
                ]
              },
              {
                "type": "Column",
                "width": 1,
                "items": [
                  {
                    "type": "Image",
                    "url": "https://upload.wikimedia.org/wikipedia/commons/b/b2/Diver_Silhouette%2C_Great_Barrier_Reef.jpg",
                    "size": "auto"
                  }
                ]
              }
            ]
          }
        ],
        "actions": [
          {
            "type": "Action.Submit",
            "title": "Submit"
          }
        ]
      }

      var adaptiveCard = new AdaptiveCards.AdaptiveCard();
      adaptiveCard.hostConfig = new AdaptiveCards.HostConfig({
        fontFamily: "Segoe UI, Helvetica Neue, sans-serif"
        // More host config options
      });
      adaptiveCard.onExecuteAction = function(action) { 
        console.log(action.data);
        alert(action.data);
       }

       adaptiveCard.parse(card);
       var renderedCard = adaptiveCard.render();
        console.log(renderedCard);
        message.html = renderedCard.outerHTML;
    }

Вышеупомянутый фрагмент кода, который я добавил в client.js в функции renderMessage, я получаю рендер карты, но кнопки не работают, может кто-то, пожалуйста, дайте мне знать, в чем может быть проблема, я был бы рад предоставить дополнительные разъяснения / код, если это необходимо.

0 ответов

Другие вопросы по тегам