実現したいこと
表題の件で、ご知見のある方にご協力頂きたく投稿しました。
LINE公式アカウントに登録いただいた方に対して、「あいさつメッセージ」でURLを送り、そこでアンケートの入力をしてもらうように設定をしております。
URLをクリックアンケート入力後、登録を完了したら、登録ありがとうのLINEメッセージを自動で送りたい、というのが今回実現したいことです。
前提
・環境はwordpressです
・contact form 7を用いて、入力画面を作成しています。
・あいさつメッセージには、アンケートが入力できるURLを記載しています。
・URLをクリックした立ち上がるLIFFのURLは以下
/contact-line/
・登録完了ページは以下を予定しています。
/contact-line-thanks7/
・完了画面が表示されたのち、LINEへメッセージを送信するために、LIFFのエンドポンドには/contact-line-thanks7/を設定しています。
・Scope は、chat_message.writeと profileを選択しています。
・チャネルは「LINEログイン」で制作しています。
・以下のコードを/contact-line-thanks7/の固定ページ画面、カスタムHTMLで入力をしています
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/vConsole/3.3.4/vconsole.min.js"></script> <script> // Initialize vConsole function initVConsole() { window.vConsole = new window.VConsole({ defaultPlugins: ['system', 'network', 'element', 'storage'], maxLogNumber: 1000 }); } $(document).ready(async function() { initVConsole(); const liffId = "LIFF ID"; // LIFF IDをここに liff.init({ liffId: liffId }) .then(async () => { if (liff.isInClient() && liff.isLoggedIn()) { const profile = await liff.getProfile(); const mes = profile.displayName + "さんご予約ありがとうございました。\n自動返信メールを送付していますので受信boxをご確認ください。" liff.sendMessages([{ type: 'text', text: mes }]); } }) .catch(err => { console.error('Error initializing LIFF: ', err); }); }); </script>
発生している問題・エラーメッセージ
画面遷移はしますが、メッセージが自動で送信されない状況です。
試しに以下コードをfooterに設置することも試しましたが、画面遷移もせずLINEで自動でメッセージ送信もされませんでした。
<script src="https://static.line-scdn.net/liff/edge/2/sdk.js"></script> <script> document.addEventListener('wpcf7mailsent', function(event) { console.log("Contact Form 7 イベントが発火しました"); // このメッセージがコンソールに表示されるか確認 if ('xxxx' == event.detail.contactFormId) { liff.init({ liffId: "わたしのLIFF ID" }) .then(() => { console.log("LIFFの初期化が成功しました"); // このメッセージがコンソールに表示されるか確認 return liff.sendMessages([{ type: 'text', text: 'フォームの送信が完了しました' }]); }) .then(() => { console.log("メッセージ送信成功"); // このメッセージがコンソールに表示されるか確認 location = '/challenge/contact-line-thanks7/'; }) .catch(err => { console.error('LIFFでのエラー: ', err); // エラーが発生した場合にはこのメッセージがコンソールに表示される }); } }, false); </script>
補足情報(FW/ツールのバージョンなど)
追加で問題切り分けのために必要な情報がありましたら、ご共有いたします。
ご協力のほど、よろしくお願いいたします。

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。