首页 > 解决方案 > 使用键盘向 Viber bot 发送“欢迎信息”

问题描述

Viber API 允许发送一些关于conversation_started事件类型的消息以允许用户订阅。从有关 "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"
    }]
}

标签: viberviber-apiviber-botviber-bot-python

解决方案


经过一些尝试,我发现不能在同一个“欢迎消息”中同时使用media+thumbnail和。keyboard所以我删除了mediathumbnail键。现在以下代码有效:

{
    "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"
        }]
    }
}

推荐阅读