Bot Framework — обработка отправленных пользователем изображений в NodeJS

Я не могу найти способ обрабатывать изображения, отправленные пользователем моему боту. Есть ли способ получить изображения?

Я нашел это аналогично, но для C#, а я работаю в node.js.


person mgbennet    schedule 20.03.2017    source источник


Ответы (1)


Если пользователь что-то прикрепит к сообщению, это будет в массиве results.response. Вы можете получить доступ к первому вложению с помощью простого results.response[0]. Этот объект имеет свойства contentType и contentUrl, которые вы можете использовать, чтобы делать все, что вам нужно.

Чтобы убедиться, что вы получите изображение, вы можете предложить пользователю прикрепить что-либо, используя builder.Prompts.attachment. Конечно, они могут прикрепить к своему сообщению файл любого типа, от текстового до ZIP-файла, поэтому вам нужно проверить, подходит ли тип файла.

bot.dialog('/prompts', [
    function (session) {
        builder.Prompts.attachment(session, "Send me a file!");
    },
    function (session, results) {
        var firstAttachment = results.response[0],
            msg = new builder.Message(session)
                .text("You sent a file of type %s and named %s",
                      firstAttachment.contentType, firstAttachment.name);
        msg.addAttachment(attachment);
        session.endDialog(msg);
    }
})
person mgbennet    schedule 20.03.2017
comment
Подводя итог ответу Майка, см. пример ReceiveAttachment node.js. - person Ezequiel Jadib; 21.03.2017
comment
Да, он доступен здесь. - person mgbennet; 21.03.2017
comment
Ой! Спасибо Майк, я забыл вставить ссылку - person Ezequiel Jadib; 21.03.2017