liffIdはあってますか? 今一度確認してみてください。
前提・実現したいこと
liffアプリからメッセージが送信されるようにしたい
発生している問題・エラーメッセージ
liffのAPIである「liff.sendMessages()」を使って、liffアプリ内からメッセージが送信されるようにしたいです。 chat_messageのスコープも設定し、liff.init()も行った上で試してみたのですが、メッセージは送信されずという状況です。 コンソールで見たところ、「メッセージ送信」の文言は出力されていたので、liff.sendMessageの処理で引っかかってしまっているのかなと推測しています。
以下エラーメッセージ
メッセージ送信 ←console.logの文言
sdk.js:1 Uncaught (in promise) Error: LiffId is not found.
at new t (sdk.js:1:21797)
at Ae (sdk.js:1:22124)
at sdk.js:1:86391
at sdk.js:1:17018
at Object.next (sdk.js:1:17123)
at sdk.js:1:16060
at new Promise (<anonymous>)
at H (sdk.js:1:15805)
at Yr (sdk.js:1:85815)
at sdk.js:1:89034
t @ sdk.js:1
Ae @ sdk.js:1
(anonymous) @ sdk.js:1
(anonymous) @ sdk.js:1
(anonymous) @ sdk.js:1
(anonymous) @ sdk.js:1
H @ sdk.js:1
Yr @ sdk.js:1
(anonymous) @ sdk.js:1
(anonymous) @ sdk.js:1
(anonymous) @ sdk.js:1
(anonymous) @ sdk.js:1
H @ sdk.js:1
(anonymous) @ sdk.js:1
(anonymous) @ line:110
Promise.then (async)
c @ sdk.js:1
(anonymous) @ sdk.js:1
H @ sdk.js:1
(anonymous) @ sdk.js:1
(anonymous) @ line:110
Promise.then (async)
(anonymous) @ line:108
該当のソースコード
<script src="https://static.line-scdn.net/liff/edge/2.1/sdk.js"></script>
<script>
liff.init({
liffId: '16~から始まるLIFF ID'
})
.then(() => {
console.log('メッセージ送信');
liff.sendMessages([{
type: "text",
text: "Hello, World!",
}, ]);
})
.catch((err) => {
console.log(err);
})
</script>
試したこと
・LINE DevelopersでLIFFは設定済み、スコープはchat_message.write, openid, profileを設定 ・公式アカウント(未承認)を作成し、公式アカウント&自分のアカウントのトークルーム内でliffアプリを開いて動作確認 ・liffアプリはデプロイ済み