Я пытаюсь отправить горизонтально прокручиваемую карусель на платформе Facebook на рабочем месте, используя общий шаблон, как описано в документации по платформе мессенджера (Ref: https://developers.facebook.com/docs/messenger-platform/reference/template/generic)
Шаблон, которым я являюсьиспользование выглядит примерно так:
[
{
"text": "Hi!!!!"
},
{
"attachment": {
"type": "template",
"payload": {
"template_type": "generic",
"elements": [
{
"title": "Some Title 1",
"image_url": "some image url",
"buttons": [
{
"title": "button_title1",
"type": "postback",
"payload": "Title 1"
}
]
},
{
"title": "Some Title 2",
"image_url": "some image url",
"buttons": [
{
"title": "button_title2",
"type": "postback",
"payload": "Title 2"
}
]
},{
"title": "Some Title 3",
"image_url": "some image url",
"buttons": [
{
"title": "button_title3",
"type": "postback",
"payload": "Title 3"
}
]
},
]
}
}
}
]
Все работало так, как я ожидал, но с последних 2 недель или около того, порядок элементов карусели (карты в моем случае) нето, что я ожидаю (то есть, Title1, Title2, Title3). Элементы в карусели каждый раз, когда я ее использую, отображаются в разном порядке. Я просто хочу знать, есть ли у кого-то еще такая же проблема или она имеет какое-то отношение кмой код?
Код, который я использовал для отправки сообщения в конце:
return new Promise((resolve, reject) => {
//(async ref:https://www.npmjs.com/package/async)
async.eachSeries(
//facebookMessages is the message template that I am using(posted above)
facebookMessages,
(msg, callback) => {
//sendFBSenderAction sends the message to FB using api(https://graph.facebook.com/v2.6/me/messages?access_token=<PAGE_ACCESS_TOKEN>)
this.sendFBSenderAction(sender, 'typing_on')
.then(() => this.sleep(this.messagesDelay))
.then(() => {
facebookMessages.attachment ? this.sendFbAttachment(msg) : this.sendFBMessage(sender, msg);
facebookMessages.attachment = false;
})
.then(() => callback())
.catch(callback);
},
err => {
if (err) {
console.error(err);
reject(err);
} else {
console.log('Messages sent');
resolve();
}
}
);
});