クイックリプライボタンのpostbackイベントでdisplayTextの内容が表示されない

この記事について

環境Python + line-bot-sdk-python
目的クイックリプライのpostbackでdisplayTextをトーク画面に表示させる
結果display_text(スネークケース)に直したら表示された

つまずきポイント要約

  • APIリファレンスはキャメルケース、pythonのSDKはスネークケース
  • エラーにはならず、単に表示されないだけなので気づきにくい

事象

通常、クイックリプライボタンにpostbackイベントを設置して、displayTextを記述すれば、ユーザーがクイックリプライボタンをタップしたときにトーク画面にdisplayTextの内容が表示される。しかし表示されない事象が発生。

views.py

postback=PostbackAction(
label="みかん",
data="fruits",
displayText="みかんが押された",
),

原因

LINEのMessaging APIリファレンスはキャメルケース(displayText)だが、line-bot-sdk-pythonのパラメータ名はスネークケース(display_text)。リファレンスの表記のままSDKに書いても無視される。

対処

displayText を display_textと書き直すとok

postback=PostbackAction(
label="みかん",
data="fruits",
display_text="みかんが押された",
),
タイトルとURLをコピーしました