liff.sendMessagesでError: invalid receiverが出たときの対処法

この記事について

環境LIFF + javascript
目的liff.sendMessagesで開いているトーク画面にメッセージを送る
結果Keepメモ宛てだったのが原因。通常のトークルームに変えたら送信できた

つまずきポイント要約

  • Keepメモのトーク画面にはliff.sendMessagesで送信できない(invalid receiver)
  • テストは通常のトークルーム(自分のテスト用アカウントなど)で行う

事象

lineのliffアプリを作成中、liff.sendMessagesを使って現在開いているトーク画面にメッセージを送るとエラーが出た

htmlファイル

    <script charset="utf-8" src="https://static.line-scdn.net/liff/edge/2/sdk.js"></script>

    <script>

        liff.init({

            liffId: 'xxxxxxxxxxxxxxxxxxx',

        }).then(() => {

            // Start to use liff's api

        });

        function testsendmsg() {

            liff.sendMessages([

                {

                    type: 'text',

                    text: 'Hello, World!',

                },

            ])

                .then(() => {

                    window.alert('Message sent');

                })

                .catch((error) => {

                    window.alert('Error sending message: ' + error);

                });



        }

    </script>

エラー内容

Error: invalid receiver

原因と対処

開いていたトーク画面が、Keepメモだったが、テスト用(自分の)アカウントにトーク画面を変更したらエラーが起こらずメッセージが送信できた。
Keepメモにはliff.sendMessagesでメッセージは送れないようだ

タイトルとURLをコピーしました