我想创建一个包含Dialogflow
和Google Assistant
以及Google Transactions API
的聊天机器人,以便用户订购巧克力盒。现在我的代理包含以下四个意图:
Default Welcome Intent
(文字回复:你好,你想买一个巧克力盒吗?)Default Fallback Intent
Int1
(培训短语:是的,我想要,履行:启用webhook通话)Int2
(事件:actions_intent_TRANSACTION_REQUIREMENTS_CHECK
)我使用Dialogflow Json
代替Node.js
将我的代理与Transactions API连接起来。我想使用Google操作的actions.intent.TRANSACTION_REQUIREMENTS_CHECK
操作来展示订单预览(在订购巧克力盒时)。出于这个原因,在Google文档之后,当Int1
被触发时,我正在使用将Google智能助理连接到以下python脚本(后端)的webhook:
from flask import Flask, render_template, request, jsonify
import requests
app = Flask(__name__)
@app.route("/", methods=['POST'])
def index():
data = request.get_json()
intent = data["queryResult"]["intent"]["displayName"]
if (intent == 'Int1'):
proposedOrder = order.proposed_order(location)
return jsonify({
"fulfillmentText": "This is your order preview:",
"payload": {
"google": {
"expectUserResponse": True,
"isSsml": False,
"noInputPrompts": [],
"systemIntent": {
"data": {
"@type": "type.googleapis.com/google.actions.v2.TransactionDecisionValueSpec",
"orderOptions": {
"requestDeliveryAddress": True,
},
"paymentOptions": {
"actionProvidedOptions": {
"displayName": "VISA **** **** **** 3235",
"paymentType": "PAYMENT_CARD"
}
},
"proposedOrder": proposedOrder
},
"intent": "actions.intent.TRANSACTION_DECISION"
}
}
}
})
if __name__== "__main__":
app.run(debug=True)
其中proposed_order
是我在模块order
中编写的函数,该模块以Google文档指定的所需方式形成用户的订单。
当intent == 'Int1'
时,这将向用户(在手机Google智能助理上)显示订单预览,如下所示(示例来自Google文档):
正如您所看到的,订单预览底部有三个芯片建议:下订单,更改付款方式,没关系< / em>的
我的问题如下:我如何(以编程方式)编辑这些芯片建议并添加我的(例如添加一个芯片建议'更改订购的商品数量?
答案 0 :(得分:1)
在平台的订单表单中,您无法控制用户看到的选项。您希望在发送交易意图之前添加对话的中间步骤,以便对其进行最终检查。