クイック返信の実装方法 - トークBot - LINE WORKS Developers : コミュニティ

コミュニティ

LINE WORKSのテクニカルエキスパート及び開発者と
コードのサンプル、リソース、Tip等を共有し問題解決への相談が可能です。

??dev_메인_타이틀_모바일_ja_JP??

トークBot

クイック返信の実装方法

中村恭輔

2021.05.14既読 267

”クイック返信 (quick reply) ボタンが含まれているメッセージを受信すると、メンバーのトーク画面下部にクイック返信ボタンが表示されます。"と下記リンクに記載があります。
具体的にどこにどのように含ませればよいのでしょうか。
メッセージオブジェクトの「accountId(またはroomID)」「content」に加え、以下のような「quickReply」要素を追加すればよいのでしょうか?
"quickReply": {
  "items": [
    {
      "imageUrl": "https://www.example.com/a.png",
      "action": {
        "type": "message",
        "label": "Send message",
        "text": "send message"
      }
    },
    {
      "action": {
        "type": "camera",
        "label": "Open camera"
      }
    }
  ]
}

コメント7

  • 업데이트 된 답글입니다.

    中村恭輔 投稿者

    {
       "accountId": "XXXXXX@YYY",
       "content": {
           "type": "flex",
           "altText": "(登録内容)",
           "contents": {
               "type": "carousel",
               "contents": [
                   {
                       "type": "bubble",
                       "size": "nano",
                       "header": {
                           "separator": false, "layout": "vertical", "type": "box",
                           "contents": [
                               { "type": "text", "text": "2021/05/09", },
                               { "type": "text", "text": "07:29:39", }
                           ]
                       },
                       "body": {
                           "type": "box", "layout": "vertical",
                           "contents": [
                               {  "type": "text", "text": "AAAA", },
                               {  "type": "text", "text": "ああああ",}
                           ]
                       }
                   },
                   {
                       "type": "bubble",
                       "size": "nano",
                       "header": {
                           "separator": false, "layout": "vertical", "type": "box",
                           "contents": [
                               {  "type": "text", "text": "2021/05/02", },
                               {  "type": "text", "text": "07:21:24", }
                           ]
                       },
                       "body": {
                           "type": "box",
                           "layout": "vertical",
                           "contents": [
                               {"type": "text", "text": "BBBB", },
                               {"type": "text", "text": "いいいい",}
                           ]
                       }
                   }
               ]
           },
           "quickReply": { "items": [ {"action": { "type": "message", "label": "もっと見る", "text": "もっと見る" }} ] }
       }
    }

    2021.05.15

    0
  • 업데이트 된 답글입니다.

    中村恭輔 投稿者

    ↑quickReplyが表示されない実際のJSONオブジェクトです(一部加工)。quickReplyの位置はここではないのでしょうか。
    なお、「"type": "flex"」でなく「 "type": "text"」とする、通常のメッセ―ジでは、この位置でquickReplyの表示がされることを確認済です。

    2021.05.15

    0
  • 업데이트 된 답글입니다.

    LINE WORKS 公式アカウント

    Quick Reply の記述につきましてはご認識の通り content 直下への記載でお間違えございません。

    ただ、こちらでも動作を確認いたしましたところ、FlexTemplate での Quick Reply の動作が正常に機能していないことを確認いたしました。
    こちらの問題に関しましては、開発に報告の上、修正を予定しております。
    ご不便をおかけしてしまい申し訳ございません。
    修正が完了いたしましたら、こちらの投稿にてご連絡させていただきますので、今しばらくお待ちください。

    2021.05.17

    0
  • 업데이트 된 답글입니다.

    中村恭輔 投稿者

    ご回答ありがとうございます。不備である旨、承知しました。
    ご修正の程よろしくお願いします。

    >開発に報告の上、修正を予定しております。
    >修正が完了いたしましたら、こちらの投稿にてご連絡させていただきますので、今しばらくお待ちください。

    ちなみに、上記はクライアントサイド(モバイルアプリ)、サーバーサイドどちらの修正になりますでしょうか。
    (つまり、修正後にあるべき状態にするためには、モバイルアプリのバージョンアップが必要となりますでしょうか。)
    メンバー全員のモバイルアプリを指定バージョンに上げるためには、少々時間を要します。
    また、FlexTemplate とQuickReplyのうち、どちらかというとQuickReply機能を優先的に使用したい機能を開発しています。

    そのため、上記のご質問のご回答によって、以下のように今後の進め方が変わってくることになります。

    ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
    【①本不備がサーバーサイドのみの場合】
    修正後必ずメンバー全員に状態が反映されるため、FlexTemplate 使用前提での開発を継続⇒不備解消後に一部コード修正、としたい と考えております。
    (暫定的に修正まではボタンテンプレートにて返信用ボタンをFlexTemplateに続いて出力、かつ直前以外のトーク中のボタンをクリックしないように運用でカバー、不備修正後、ボタンテンプレート送信のコメントアウト作業を予定。)

    【②モバイルアプリのバージョンアップも必要な場合】
    不備解消後にQuickReply対応をしたとしても、全員のモバイルアプリがバージョンアップされるまで、QuickReplyボタンが表示されない人(手動で文字を入力しないと返信できない人)が残ってしまうことになります。また、モバイルアプリのバージョンを参照して、対応後バージョンの場合のみQuickReply、対応前であればボタンテンプレート、、、といった分岐処理もできないものとみています。

    そのため現実的にFlexTemplate とQuickReplyは共存できないものとして捉え、そもそもQuickReplyを優先的に使用したい本機能では、FlexTemplateを使用しないよう、開発の方針を転換したいと考えています。
    ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

    完了したタイミングのご連絡に先立ち、対応方針や対応時期感がわかった段階で、こちらの投稿にご連絡をお願いできますでしょうか。
    以上、よろしくお願いします。

    2021.05.18

    0
  • 업데이트 된 답글입니다.

    LINE WORKS 公式アカウント

    こちらの症状は、現状 API サーバサイドの問題と認識しております。

    修正時期などの詳細に関しましては非公開情報となるため、こちらの Community ではお答えすることできません。
    公開できる情報につきましては、順次お知らせのページに記載させていただきます。
    https://developers.worksmobile.com/jp/notice?lang=ja

    ご不便をおかけして申し訳ございませんが、今しばらくお待ちくださいませ。

    2021.05.20

    0
  • 업데이트 된 답글입니다.

    LINE WORKS 公式アカウント

    お待たせしてしまい申し訳ございません。
    こちらの件に関しまして、修正が完了いたしました。
    お手数をおかけいたしますが、動作をお確かめください。

    2021.05.28

    0
  • 업데이트 된 답글입니다.

    中村恭輔 投稿者

    ご連絡ありがとうございました。正常にQuickReplyが表示されることを確認しました。ご対応ありがとうございました。

    2021.05.29

    0
前の投稿 顧客/取引先の連絡先の照会APIでbuddyUserIdsが空なのはなぜですか?
次の投稿違うテナント登録してしまったユーザを正しいテナントに登録したい。