【问题标题】:Google Dialogflow Quick Replies formatting issues in TelegramTelegram 中的 Google Dialogflow 快速回复格式问题
【发布时间】:2020-01-02 03:01:41
【问题描述】:
我使用 Dialogflow 创建了一个聊天机器人,并将其与 Facebook Messenger 和 Telegram 集成。我注意到,对于 Telegram 中的快速回复(链接 1),FB Messenger(链接 2)中的显示方式有所不同。有什么方法可以让它在 Telegram 中更美观、更美观?
Telegram
Facebook Messenger
这是我在 Dialogflow 中的快速回复设置。
Dialogflow
【问题讨论】:
标签:
dialogflow-es
telegram
chatbot
telegram-bot
facebook-messenger
【解决方案1】:
在 DialogFlow 中,您确实可以(正如 Marc 指出的那样)为 Telegram 使用自定义有效负载,这是一个示例:
{
"telegram": {
"text": "What would you like help with?",
"reply_markup": {
"inline_keyboard": [
[
{
"text": "Daily News",
"callback_data": "news"
}
],
[
{
"text": "New Features",
"callback_data": "features"
}
]
]
}
}
}
快速回复显示为您可以单击的按钮(请注意实际回复已发送但未显示在聊天中)。
一切顺利!
贝佩
【解决方案2】:
简短回答:
这是不可能的。
详细解答:
每个频道(Facebook Messenger、Telegram 等)都有自己的 UI 组件和样式。这些无法更改,因为它们由它自己的通道渲染/控制。
Dialogflow 所做的是让您能够在每个通道中显示这些 UI 组件,而无需您处理每个通道所需的不同实现。
Dialogflow 还使您能够发送自定义有效负载,您可以在其中发送自定义 JSON(应与您连接的通道兼容),例如,如果通道具有尚不存在的 UI 组件,则可以使用该功能由 Dialogflow 支持。
如果频道为您提供了更改正在使用的 UI 组件中的属性的选项,您可以使用自定义 JSON 来做到这一点,但您始终受限于每个频道呈现 UI 的方式组件以及它们为我们提供了哪些功能