質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
LINE Messaging API

LINE Messaging APIは、メッセージの送信・返信ができるAPIです。Web APIを経由しアプリケーションサーバとLINEのAPIでやり取りが可能。複数のメッセージタイプや分かりやすいAPIリファレンスを持ち、グループチャットにも対応しています。

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

解決済

おうむ返しbotで返信がかえってきません

fujimonpg
fujimonpg

総合スコア10

LINE Messaging API

LINE Messaging APIは、メッセージの送信・返信ができるAPIです。Web APIを経由しアプリケーションサーバとLINEのAPIでやり取りが可能。複数のメッセージタイプや分かりやすいAPIリファレンスを持ち、グループチャットにも対応しています。

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

1回答

-1評価

0クリップ

413閲覧

投稿2022/02/28 02:47

編集2022/03/01 08:04

前提・実現したいこと

LINE Messaging APIとGoogle Apps Scriptを使っておうむ返しbotを作ろうとしたのですが、こちらの入力に対して返信が返ってきませんでした。以下の手順で行ったのですが間違っている原因がわかるかたがおられましたら教えていただきたいです。

手順

  1. lineDevelopersでチャネルを作成

  2. チャネルアクセストークンを発行し、GoogleAppScriptでコードを書く。

  3. コードを公開し、発行されたweb app URLをlineDevelopersのwebhookのurlの箇所に挿入。

  4. botを友達登録し、文字を送信する。

該当のソースコード

var CHANNEL_ACCESS_TOKEN = 'アクセストークン'; function doPost(e) { var replytoken= JSON.parse(e.postData.contents).events[0].replyToken; if (typeof replytoken === 'undefined') { return; } var user_message = JSON.parse(e.postData.contents).events[0].message.text; var url = 'https://api.line.me/v2/bot/message/reply'; UrlFetchApp.fetch(url, { 'headers': { 'Content-Type': 'application/json; charset=UTF-8', 'Authorization': 'Bearer ' + CHANNEL_ACCESS_TOKEN, }, 'method': 'post', 'payload': JSON.stringify({ 'replyToken': replytoken, 'messages': [{ 'type': 'text', 'text': user_message, }], }), }); return ContentService.createTextOutput(JSON.stringify({'content': 'post ok'})).setMimeType(ContentService.MimeType.JSON); }

試したこと

・lineDevelopersで「webhookを使用する」の設定: オンにした
・プログラムのコードが間違っている: udemyの教材でコピペをするものなので間違っている可能性は低いと思われます。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

YAmaGNZ

2022/02/28 04:01

どこでどういうエラーが出るのですか?
CHERRY

2022/02/28 04:12

記載されているソースコードで、インデント・書式が崩れていて見にくいので、質問するときのヒントの [表現するための言葉がわからない時は表現の仕方を工夫しましょう]( https://teratail.com/help/question-tips#questionTips33 ) や [ソースコードを書きましょう]( https://teratail.com/help/question-tips#questionTips35 )を参考に「<CODE>」ボタンを利用して、ソースコードの内容を見やすく記載していただけないでしょうか。
YAmaGNZ

2022/02/28 06:53 編集

Lineのほうで送信したときに既読はつきますか? 提示されたソースで動作確認したところ、トークンが間違っている場合に既読がつくがオウム返ししないという状況になりました。 また、正しいトークンの場合はオウム返ししました。
fujimonpg

2022/02/28 08:27

動作確認いただきありがとうございます。 再度botを作り直したところ、やはり既読はつきますがおうむ返ししないです。 ソースの'アクセストークン'の部分にはLINE DevelopersのChannel access token (long-lived)で発行されたものをペーストしております。 このような場合LINE Developersの設定などが原因で返信されないのでしょうか。 無知で申し訳ありません。 よろしくお願いいたします。
YAmaGNZ

2022/02/28 12:43

デフォルトから特に変更していないはずです。 試しに別のアカウントでbot作成してみましたがデフォルトから特に触らず、webhook設定とトークンの生成しかしませんでした。 自動応答がONでしたが、自動応答とオウム返し両方が出ました。
fujimonpg

2022/02/28 23:04

自動応答をONにしたことで返信が来ました。ただし昨日作ったものに追加で自動応答をONにしたところ返信は返ってこなかったため、このことが原因だったのかもしれないです。 今回はご丁寧にご回答いただきありがとうございました。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

LINE Messaging API

LINE Messaging APIは、メッセージの送信・返信ができるAPIです。Web APIを経由しアプリケーションサーバとLINEのAPIでやり取りが可能。複数のメッセージタイプや分かりやすいAPIリファレンスを持ち、グループチャットにも対応しています。

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。