我在dialogflow已經設定好LINE,直接測試也是沒有問題。
但是在自己架設API Server後,卻一直無法正確將json傳給LINE。
最後發現需要設定text區段才能將json正確傳回給LINE。
我在dialogflow測試輸入,按下「DIAGNOSTIC INFO」按鈕,
在下圖中發現Raw API response沒有fulfillmentMessages,
但是fulfillment response卻有值,表示我的webhook是有被呼叫成功並回傳json給dialogflow
加上text區段後,可以在下圖中發現Raw API response有fulfillmentMessages的區段,這樣才是成功的。
也就是payload的區段中需要設定line與text,但是我測試的結果text的值LINE不會顯示
json = {
"fulfillmentMessages": [
{
"payload":{
"line": {
"type": "sticker",
"packageId": "11537",
"stickerId": "52002734"
},
"text": { //text區段必須宣告
"text": ["預設值" ]
}
}
}
]
}
更新:之後我又把text區段拿掉再測試一次,這次又可以了,所以目前我還是不知道是什麼原因。