Ваша проблема вызвана тем, что вы указали в качестве названия своих карт героев место: " "
. Исправить вашу проблему просто. Вы можете использовать фактически пустую строку без пробела (""
) или вообще пропустить заголовок.
РЕДАКТИРОВАТЬ: Как вы видели, Bot Framework добавит «Опции» в качестве заголовка карты, если вы не предоставили его, потому что он использует шаблон Facebook Messenger generi c , для которого требуется заголовок. Bot Framework ничего не может сделать, и вы ничего не можете сделать, чтобы обойти ограничения API Facebook. Однако, если вы действительно хотите отправить открытку с изображением и кнопками, вы можете использовать медиа шаблон . Это будет неудобно, потому что вам нужно будет заранее загрузить вложение изображения, чтобы вы могли получить идентификатор вложения с помощью этого API: https://developers.facebook.com/docs/messenger-platform/reference/attachment-upload-api
Вместо того, чтобы ваш бот загружал изображения каждый раз время, необходимое для их использования, вы сможете загрузить каждое изображение один раз, а затем передать идентификаторы своему боту. После того как вы загрузили свои вложения, вы можете отправить медиа-шаблон напрямую, используя Send API или используя данные канала активности Bot Framework в соответствии с этими инструкциями: https://blog.botframework.com/2017/03/28/custom-channel-data/
await step.context.sendActivity( {
"channelData": {
"attachment": {
"type": "template",
"payload": {
"template_type": "media",
"elements": [
{
"media_type": "image",
"attachment_id": "<YOUR_ATTACHMENT_ID>",
"buttons": [
{
"type": "postback",
"payload": "Never",
"title": "Never"
}
]
},
// More media templates ...
]
}
}
}
} );
Поскольку это может быть сложнее, чем вы хотели бы, вы могли бы рассмотреть альтернативный дизайн, как быстрые ответы Messenger .