Il semble (non documenté) que pour un type de message de bouton dans le système de discussion Facebook Bots, il existe un maximum de 3 boutons. Cela semble arbitraire et contraignant. Est-ce que quelqu'un sait s'il y a moyen d'avoir plus de 3 boutons?
Pour être clair, je fais référence au message JSON suivant:
{
"recipient":{
"id":"USER_ID"
},
"message":{
"attachment":{
"type":"template",
"payload":{
"template_type":"button",
"text":"What do you want to do next?",
"buttons":[
{
"type":"web_url",
"url":"https://petersapparel.parseapp.com",
"title":"Show Website"
},
{
"type":"postback",
"title":"Start Chatting",
"payload":"USER_DEFINED_PAYLOAD"
}
]
}
}
}
}
Il n'y a aucun moyen de contourner cette limite. Facebook a clairement documenté les limites d'un modèle générique ici :
Titre: 80 caractères
Sous-titre: 80 caractères
Titre d'appel à l'action: 20 caractères
Call-to-Action Items: 3 boutons
Bulles par message (défilement horizontal): 10 éléments
Il peut y avoir au maximum 3 boutons dans une bulle. vous pouvez ajouter une autre bulle avec 3 boutons supplémentaires. Par exemple:
{
"recipient": {
"id": "RECIPIENT_ID"
},
"message": {
"attachment": {
"type": "template",
"payload": {
"template_type": "generic",
"elements": [
{
"title": "Swipe left/right for more options.",
"buttons": [
{
"type": "postback",
"title": "Button 1",
"payload": "button1"
},
{
"type": "postback",
"title": "Button 2",
"payload": "button2"
},
{
"type": "postback",
"title": "Button 3",
"payload": "button3"
}
]
},
{
"title": "Swipe left/right for more options.",
"buttons": [
{
"type": "postback",
"title": "Button 4",
"payload": "button4"
},
{
"type": "postback",
"title": "Button 5",
"payload": "button5"
},
{
"type": "postback",
"title": "Button 6",
"payload": "button6"
}
]
}
]
}
}
}
}
Vous pouvez ajouter un maximum de 10 bulles dans un modèle générique.
OU
Vous pouvez utiliser réponses rapides .
Vous pouvez également utiliser les "réponses rapides": https://developers.facebook.com/docs/messenger-platform/send-api-reference/quick-replies
Les réponses rapides vous permettent d’afficher jusqu’à 11 options sous forme de boutons sur une seule ligne:
Vous pouvez utiliser l'approche botframework. Il envoie des options en utilisant un modèle générique . options partie 1 , options partie 2
"attachment": {
"type": "template",
"payload": {
"template_type": "generic",
"elements": [{
"title": "group of options part 1",
"buttons": [ {
"type": "postback",
"title": "option 1",
"payload": "option 1",
}, ...,
{
"type": "postback",
"title": "option 3",
"payload": "option 3",
}],
}, ...,
{
"title": "group of options 10",
"buttons": [{
"type": "postback",
"title": "option 28",
"payload": "option 28",
}, ...,
{
"type": "postback",
"title": "option 30",
"payload": "option 30",
}],
}]
}
}
Vous pouvez essayer ceci:
"text": msg,
"quick_replies": [
{
"content_type": "text",
"title": "What happens to my healthcare benefits?",
"payload": "HEALTHCARE_BENEFITS"
},
{
"content_type": "text",
"title": "What happens to my service credit purchases?",
"payload": "SERVICE_CREDIT_PURCHASE"
},
{
"content_type": "text",
"title": "Am I eligible for enhanced contributions?",
"payload": "ENHANCED_CONTRIBUTIONS"
},
{
"content_type": "text",
"title": "What is the New Hybrid Plan?",
"payload": "NEW_HYBRID_PLAN"
}
]
}
}