用键盘发送 "welcome message" 到 Viber 机器人
Send "welcome message" with keyboard to Viber bot
Viber API 允许在 conversation_started
事件类型上发送一些消息以允许用户订阅。从 documentation about "welcome message",我看到以下代码成功发送了文本和图像:
{
"sender": {
"name": "John McClane",
"avatar": "http://avatar.example.com"
},
"tracking_data": "tracking data",
"type": "text",
"text": "Welcome to our bot!",
"media": "http://www.images.com/img.jpg",
"thumbnail": "http://www.images.com/thumb.jpg"
}
但是如何在那里添加一些按钮?
我希望我的用户能够按他们订阅并开始与我的机器人对话。
我尝试在消息中添加以下内容,但没有成功:
"keyboard": {
"Type": "keyboard",
"DefaultHeight": true,
"Buttons": [{
"ActionType": "reply",
"ActionBody": "reply to me",
"Text": "Key text",
"TextSize": "regular"
}]
}
经过一些尝试,我发现不能同时使用 media
+ thumbnail
和 keyboard
在同一个“欢迎消息”中。所以我删除了 media
和 thumbnail
键。现在以下代码有效:
{
"sender": {
"name": "John McClane",
"avatar": "http://avatar.example.com"
},
"tracking_data": "tracking data",
"type": "text",
"text": "Welcome to our bot!",
"keyboard": {
"Type": "keyboard",
"DefaultHeight": true,
"Buttons": [{
"ActionType": "reply",
"ActionBody": "reply to me",
"Text": "Key text",
"TextSize": "regular"
}]
}
}
Viber API 允许在 conversation_started
事件类型上发送一些消息以允许用户订阅。从 documentation about "welcome message",我看到以下代码成功发送了文本和图像:
{
"sender": {
"name": "John McClane",
"avatar": "http://avatar.example.com"
},
"tracking_data": "tracking data",
"type": "text",
"text": "Welcome to our bot!",
"media": "http://www.images.com/img.jpg",
"thumbnail": "http://www.images.com/thumb.jpg"
}
但是如何在那里添加一些按钮?
我希望我的用户能够按他们订阅并开始与我的机器人对话。
我尝试在消息中添加以下内容,但没有成功:
"keyboard": {
"Type": "keyboard",
"DefaultHeight": true,
"Buttons": [{
"ActionType": "reply",
"ActionBody": "reply to me",
"Text": "Key text",
"TextSize": "regular"
}]
}
经过一些尝试,我发现不能同时使用 media
+ thumbnail
和 keyboard
在同一个“欢迎消息”中。所以我删除了 media
和 thumbnail
键。现在以下代码有效:
{
"sender": {
"name": "John McClane",
"avatar": "http://avatar.example.com"
},
"tracking_data": "tracking data",
"type": "text",
"text": "Welcome to our bot!",
"keyboard": {
"Type": "keyboard",
"DefaultHeight": true,
"Buttons": [{
"ActionType": "reply",
"ActionBody": "reply to me",
"Text": "Key text",
"TextSize": "regular"
}]
}
}