質問編集履歴

5

コードを一部修正

2021/11/02 04:17

投稿

two_back_low
two_back_low

スコア20

test CHANGED
File without changes
test CHANGED
@@ -128,10 +128,6 @@
128
128
 
129
129
  var postMsg = data.events[0].message.text;
130
130
 
131
- var replyToken = data.events[0].replyToken;
132
-
133
- var action = data.events[0].message.action;
134
-
135
131
  // 記録用に検索語とuserIdを記録
136
132
 
137
133
  debug(postMsg, lineUserId);

4

ご教示いただいたコードを修正しました

2021/11/02 04:17

投稿

two_back_low
two_back_low

スコア20

test CHANGED
File without changes
test CHANGED
@@ -68,13 +68,13 @@
68
68
 
69
69
  //★★LINE Messaging APIのチャネルアクセストークン★★
70
70
 
71
- var LINE_ACCESS_TOKEN = "アクセストークン";
71
+ var LINE_ACCESS_TOKEN = "アクセストークン";
72
72
 
73
73
 
74
74
 
75
75
  //★★スプレッドシートID★★
76
76
 
77
- var ss = SpreadsheetApp.openById("スプレッドシートID");
77
+ var ss = SpreadsheetApp.openById("スプレッドシートID");
78
78
 
79
79
 
80
80
 
@@ -84,6 +84,8 @@
84
84
 
85
85
 
86
86
 
87
+
88
+
87
89
  //LINEからPOSTリクエストを受けたときに起動する
88
90
 
89
91
  //eはJSON文字列
@@ -120,6 +122,22 @@
120
122
 
121
123
  function replyFromSheet(data) {
122
124
 
125
+ // POST情報から必要データを抽出
126
+
127
+ var lineUserId = data.events[0].source.userId;
128
+
129
+ var postMsg = data.events[0].message.text;
130
+
131
+ var replyToken = data.events[0].replyToken;
132
+
133
+ var action = data.events[0].message.action;
134
+
135
+ // 記録用に検索語とuserIdを記録
136
+
137
+ debug(postMsg, lineUserId);
138
+
139
+ // debug(action, lineUserId);
140
+
123
141
  //返信先URL
124
142
 
125
143
  var replyUrl = "https://api.line.me/v2/bot/message/reply";
@@ -184,7 +202,7 @@
184
202
 
185
203
  if (replyType.length < 1) {
186
204
 
187
- var message = "質問の答えがありません。ほかの言葉で質問をするか、よくある質問のご確認をお願いします。";
205
+ var message = "質問の答えがありません。ほかの言葉で質問をお願いします。";
188
206
 
189
207
  messageArray.push({
190
208
 
@@ -332,6 +350,48 @@
332
350
 
333
351
  }
334
352
 
353
+
354
+
355
+ /** ユーザーのアカウント名を取得
356
+
357
+ */
358
+
359
+ function getUserDisplayName(userId) {
360
+
361
+ var url = 'https://api.line.me/v2/bot/profile/' + userId;
362
+
363
+ var userProfile = UrlFetchApp.fetch(url,{
364
+
365
+ 'headers': {
366
+
367
+ 'Authorization' : 'Bearer ' + LINE_ACCESS_TOKEN,
368
+
369
+ },
370
+
371
+ })
372
+
373
+ return JSON.parse(userProfile).displayName;
374
+
375
+ }
376
+
377
+
378
+
379
+ // debugシートに値を記載
380
+
381
+ function debug(text, userId) {
382
+
383
+ var SHEET_ID = ss;
384
+
385
+ var sheet = SpreadsheetApp.openById(SHEET_ID).getSheetByName('debug');
386
+
387
+ var date = new Date();
388
+
389
+ var userName = getUserDisplayName(userId);
390
+
391
+ sheet.appendRow([userId, userName, text, Utilities.formatDate( date, 'Asia/Tokyo', 'yyyy-MM-dd HH:mm:ss')]);
392
+
393
+ }
394
+
335
395
  ```
336
396
 
337
397
  ### 試してみたこと

3

参考サイトの追記

2021/11/02 04:10

投稿

two_back_low
two_back_low

スコア20

test CHANGED
File without changes
test CHANGED
@@ -333,3 +333,7 @@
333
333
  }
334
334
 
335
335
  ```
336
+
337
+ ### 試してみたこと
338
+
339
+ [こちら](https://qiita.com/WdknWdkn/items/b78ae572e7cb5c9dfdca)のサイトに出てる【30分でやる】Google Spread Sheetで管理するLINE BOTの作り方を参考にコードの組み合わせをしてみましたがうまくいきません。

2

ソースコードのテキストを一部削除

2021/11/02 03:06

投稿

two_back_low
two_back_low

スコア20

test CHANGED
File without changes
test CHANGED
@@ -184,7 +184,7 @@
184
184
 
185
185
  if (replyType.length < 1) {
186
186
 
187
- var message = "質問の答えがありません。ほかの言葉で質問をするか、よくある質問のご確認をお願いします。\nhttp://www.sanpai.com/support/faq_top.html\n\nまたは『メニュー』と話しかけると簡単な一覧メニューから調べることもできます。";
187
+ var message = "質問の答えがありません。ほかの言葉で質問をするか、よくある質問のご確認をお願いします。";
188
188
 
189
189
  messageArray.push({
190
190
 

1

ログとして残したいサンプルの2行目以降を追加しました。

2021/11/01 02:39

投稿

two_back_low
two_back_low

スコア20

test CHANGED
File without changes
test CHANGED
@@ -52,7 +52,11 @@
52
52
 
53
53
  |U164165c43516b66deb|相手のアカウント表示名|こんにちは|2021-10-08 14:35:12|
54
54
 
55
-
55
+ |U164165c43516b66deb|相手のアカウント表示名|さようなら|2021-10-08 14:38:36|
56
+
57
+ |次のID|次の表示名|次の受信語句|日時|
58
+
59
+ |その次のID|表示名|受信語句|日時|
56
60
 
57
61
 
58
62