GAS와 LINEBOT로 복습을 효율적으로 수행
자격 공부할 때 조심하고 있는 것이 복습 타이밍! (공부한 것을 자주 잊어버립니다・・・)
날짜를 쓴 스티커 메모를 붙이거나, 색으로 복습의 타이밍을 나누거나 여러가지 시험해 왔습니다. 공부 당시에 있었으면 좋겠다고 생각하는 것을 이번에 만들어 보았습니다.
에빙 하우스의 망각 곡선
여러분, 헬만 에빙 하우스를 아십니까?
맞습니다! 그 유명한 에빙 하우스의 망각 곡선의 사람입니다.
출처 : 무료 백과 사전 "Wikipedia (Wikipedia)"
헬만 에빙 하우스
기억에 관한 실험적 연구의 선구자로, 망각 곡선을 발견한 것으로 알려진 독일의 심리학자
에빙 하우스에 따르면,
1일 후에는 절약율이 34%였다(1일 후에는 66% 잊어버린다)
2일 후에는 절약률이 27%였다(6일 후에는 73% 잊어버린다)
1개월 후에는 절약률이 21%였다(31일 후에는 79% 잊어버린다)
그림은 내가 쓴 이미지 다이어그램입니다.
할 수있는 것
에빙 하우스라는 거인의 어깨에 타자! 복습에 최적의 타이밍으로 LINE을 보내줍니다.
메커니즘
시스템
1.LINEBOT(암기BOT)에 기억하고 싶은 내용을 입력.
2.google 스프레드시트에 등록됩니다.
3. 등록된 시간부터 1일, 7일, 31일 경과한 것을 LINE Notify로 통지한다.
LINEBOT에서 메시지 등록
LINEBOT 만드는 법은 아래의 기사를 참고로 하고 있습니다.
【LINE BOT】WebAPI를 사용해 자동 회신 BOT를 만들어 보았다
google 스프레드시트의 스크립트는 다음과 같이 결합됩니다.
var SPREADSHEET_ID = '';
function doPost(e) {
// ユーザーのメッセージを取得
var userMessage = JSON.parse(e.postData.contents).events[0].message.text;
var messageParameter = userMessage;
//対象のスプレッドシートを取得
var targetSs = SpreadsheetApp.openById(SPREADSHEET_ID);
//対象のシート取得
var targetSht = targetSs.getSheetByName('シート1');
//最終行取得
var lastRow = targetSht.getLastRow();
//現在年月日取得
var date = Utilities.formatDate(new Date(), 'Asia/Tokyo', "yyyy/MM/dd");
var date2 = Utilities.formatDate(new Date(), 'Asia/Tokyo', "HH:mm:ss");
var date3 = Utilities.formatDate(new Date(), 'Asia/Tokyo', "yyyy/MM/dd HH:mm:ss");
Logger.log(date);
Logger.log(date2);
var targetRow = lastRow+ 1;
targetSht.getRange("A" + targetRow + ":E" + targetRow).setValues([[date, messageParameter, date, date2, date3]]);
return ContentService.createTextOutput(JSON.stringify({'content': 'post ok'})).setMimeType(ContentService.MimeType.JSON);
}
var today = new Date(); // 今の日付と時間
Logger.log(today);
function memory() {
// スプレッドシートの内容を取得
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet1 = ss.getSheetByName("シート1");
for(var i = 2; i < 500; i++){
var content = sheet1.getRange(i, 2).getValue();
var date = sheet1.getRange(i, 5).getValue();
var dt = today - date;
var day = Math.ceil(dt / 1000 / 60 / 60 / 24);
Logger.log(day);
if (2 <= day && day < 3 || 9 <= day && day < 10 || 39 <= day && day < 40){
sendHttpPost(content);
}
}
}
// LINE notifyへの通知
function sendHttpPost(content){
var token = [''];
var options =
{
"method" : "post",
"payload" : "message=" + content,
"headers" : {"Authorization" : "Bearer "+ token}
};
UrlFetchApp.fetch("https://notify-api.line.me/api/notify", options);
}
var SPREADSHEET_ID = '';
대상 스프레드시트의 ID(대상 스프레드시트를 열고 URL의 docs.google.com/spreadsheets/d/여기 문자열/edit#gid=0)를 입력합니다.
// LINE notifyへの通知
function sendHttpPost(content){
var token = [''];
var options =
{
"method" : "post",
"payload" : "message=" + content,
"headers" : {"Authorization" : "Bearer "+ token}
};
UrlFetchApp.fetch("https://notify-api.line.me/api/notify", options);
}
token
= ''
사이에 LINENotify에서 발행한 key를 넣습니다.
LINE Notify를 만드는 방법은 다음 기사를 참고로 합니다.
[초간단] LINE notify 사용해보기
입력이 끝나면 스크립트 편집기 게시를 눌러 웹 응용 프로그램 배포를 눌러 설정합니다.
Who has access to the app:
의 부분이 디폴트에서는 Only myself
로 되어 있으므로 Anyone, even anonymous
로 변경합니다.
다음과 같이 URL이 발행되므로 복사하여 LINEDevelopers의 Messaging API 설정 아래쪽에 있는 Webhook에 등록합니다.
이상으로, 입력측의 설정은 종료. LINEBOT에서 입력하면 아래 그림과 같이 입력되어 있다고 생각합니다.
알림 설정
Google 스프레드시트의 스플릿 편집기에서 시계와 같은 아이콘을 눌러 트리거 설정을 하세요.
トリガーの追加
를 눌러 설정합니다.
イベントのソースを選択
를 時間主導型
로 변경하여 시간 간격을 설정합니다.
이상의 설정으로 1일 후, 1주일 후, 1개월 후에 통지가 옵니다.
참고 사이트
매우 도움이되었습니다, 감사합니다.
GAS에서 스프레드시트 내용을 LINE Notify에 알림
끝에
시험 공부의 복습 방법으로 스티커 메모 붙이거나, 일에 기입 등의 귀찮은 부분이 해소할 수 있을 것 같다.
이번은 텍스트만의 입력이므로 화상도 생기면 폭이 넓어질 것 같다고 생각했습니다.
Reference
이 문제에 관하여(GAS와 LINEBOT로 복습을 효율적으로 수행), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Toshiki0324/items/57fc5f7bc297d33b4ffc
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
에빙 하우스라는 거인의 어깨에 타자! 복습에 최적의 타이밍으로 LINE을 보내줍니다.
메커니즘
시스템
1.LINEBOT(암기BOT)에 기억하고 싶은 내용을 입력.
2.google 스프레드시트에 등록됩니다.
3. 등록된 시간부터 1일, 7일, 31일 경과한 것을 LINE Notify로 통지한다.
LINEBOT에서 메시지 등록
LINEBOT 만드는 법은 아래의 기사를 참고로 하고 있습니다.
【LINE BOT】WebAPI를 사용해 자동 회신 BOT를 만들어 보았다
google 스프레드시트의 스크립트는 다음과 같이 결합됩니다.
var SPREADSHEET_ID = '';
function doPost(e) {
// ユーザーのメッセージを取得
var userMessage = JSON.parse(e.postData.contents).events[0].message.text;
var messageParameter = userMessage;
//対象のスプレッドシートを取得
var targetSs = SpreadsheetApp.openById(SPREADSHEET_ID);
//対象のシート取得
var targetSht = targetSs.getSheetByName('シート1');
//最終行取得
var lastRow = targetSht.getLastRow();
//現在年月日取得
var date = Utilities.formatDate(new Date(), 'Asia/Tokyo', "yyyy/MM/dd");
var date2 = Utilities.formatDate(new Date(), 'Asia/Tokyo', "HH:mm:ss");
var date3 = Utilities.formatDate(new Date(), 'Asia/Tokyo', "yyyy/MM/dd HH:mm:ss");
Logger.log(date);
Logger.log(date2);
var targetRow = lastRow+ 1;
targetSht.getRange("A" + targetRow + ":E" + targetRow).setValues([[date, messageParameter, date, date2, date3]]);
return ContentService.createTextOutput(JSON.stringify({'content': 'post ok'})).setMimeType(ContentService.MimeType.JSON);
}
var today = new Date(); // 今の日付と時間
Logger.log(today);
function memory() {
// スプレッドシートの内容を取得
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet1 = ss.getSheetByName("シート1");
for(var i = 2; i < 500; i++){
var content = sheet1.getRange(i, 2).getValue();
var date = sheet1.getRange(i, 5).getValue();
var dt = today - date;
var day = Math.ceil(dt / 1000 / 60 / 60 / 24);
Logger.log(day);
if (2 <= day && day < 3 || 9 <= day && day < 10 || 39 <= day && day < 40){
sendHttpPost(content);
}
}
}
// LINE notifyへの通知
function sendHttpPost(content){
var token = [''];
var options =
{
"method" : "post",
"payload" : "message=" + content,
"headers" : {"Authorization" : "Bearer "+ token}
};
UrlFetchApp.fetch("https://notify-api.line.me/api/notify", options);
}
var SPREADSHEET_ID = '';
대상 스프레드시트의 ID(대상 스프레드시트를 열고 URL의 docs.google.com/spreadsheets/d/여기 문자열/edit#gid=0)를 입력합니다.
// LINE notifyへの通知
function sendHttpPost(content){
var token = [''];
var options =
{
"method" : "post",
"payload" : "message=" + content,
"headers" : {"Authorization" : "Bearer "+ token}
};
UrlFetchApp.fetch("https://notify-api.line.me/api/notify", options);
}
token
= ''
사이에 LINENotify에서 발행한 key를 넣습니다.
LINE Notify를 만드는 방법은 다음 기사를 참고로 합니다.
[초간단] LINE notify 사용해보기
입력이 끝나면 스크립트 편집기 게시를 눌러 웹 응용 프로그램 배포를 눌러 설정합니다.
Who has access to the app:
의 부분이 디폴트에서는 Only myself
로 되어 있으므로 Anyone, even anonymous
로 변경합니다.
다음과 같이 URL이 발행되므로 복사하여 LINEDevelopers의 Messaging API 설정 아래쪽에 있는 Webhook에 등록합니다.
이상으로, 입력측의 설정은 종료. LINEBOT에서 입력하면 아래 그림과 같이 입력되어 있다고 생각합니다.
알림 설정
Google 스프레드시트의 스플릿 편집기에서 시계와 같은 아이콘을 눌러 트리거 설정을 하세요.
トリガーの追加
를 눌러 설정합니다.
イベントのソースを選択
를 時間主導型
로 변경하여 시간 간격을 설정합니다.
이상의 설정으로 1일 후, 1주일 후, 1개월 후에 통지가 옵니다.
참고 사이트
매우 도움이되었습니다, 감사합니다.
GAS에서 스프레드시트 내용을 LINE Notify에 알림
끝에
시험 공부의 복습 방법으로 스티커 메모 붙이거나, 일에 기입 등의 귀찮은 부분이 해소할 수 있을 것 같다.
이번은 텍스트만의 입력이므로 화상도 생기면 폭이 넓어질 것 같다고 생각했습니다.
Reference
이 문제에 관하여(GAS와 LINEBOT로 복습을 효율적으로 수행), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Toshiki0324/items/57fc5f7bc297d33b4ffc
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
LINEBOT 만드는 법은 아래의 기사를 참고로 하고 있습니다.
【LINE BOT】WebAPI를 사용해 자동 회신 BOT를 만들어 보았다
google 스프레드시트의 스크립트는 다음과 같이 결합됩니다.
var SPREADSHEET_ID = '';
function doPost(e) {
// ユーザーのメッセージを取得
var userMessage = JSON.parse(e.postData.contents).events[0].message.text;
var messageParameter = userMessage;
//対象のスプレッドシートを取得
var targetSs = SpreadsheetApp.openById(SPREADSHEET_ID);
//対象のシート取得
var targetSht = targetSs.getSheetByName('シート1');
//最終行取得
var lastRow = targetSht.getLastRow();
//現在年月日取得
var date = Utilities.formatDate(new Date(), 'Asia/Tokyo', "yyyy/MM/dd");
var date2 = Utilities.formatDate(new Date(), 'Asia/Tokyo', "HH:mm:ss");
var date3 = Utilities.formatDate(new Date(), 'Asia/Tokyo', "yyyy/MM/dd HH:mm:ss");
Logger.log(date);
Logger.log(date2);
var targetRow = lastRow+ 1;
targetSht.getRange("A" + targetRow + ":E" + targetRow).setValues([[date, messageParameter, date, date2, date3]]);
return ContentService.createTextOutput(JSON.stringify({'content': 'post ok'})).setMimeType(ContentService.MimeType.JSON);
}
var today = new Date(); // 今の日付と時間
Logger.log(today);
function memory() {
// スプレッドシートの内容を取得
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet1 = ss.getSheetByName("シート1");
for(var i = 2; i < 500; i++){
var content = sheet1.getRange(i, 2).getValue();
var date = sheet1.getRange(i, 5).getValue();
var dt = today - date;
var day = Math.ceil(dt / 1000 / 60 / 60 / 24);
Logger.log(day);
if (2 <= day && day < 3 || 9 <= day && day < 10 || 39 <= day && day < 40){
sendHttpPost(content);
}
}
}
// LINE notifyへの通知
function sendHttpPost(content){
var token = [''];
var options =
{
"method" : "post",
"payload" : "message=" + content,
"headers" : {"Authorization" : "Bearer "+ token}
};
UrlFetchApp.fetch("https://notify-api.line.me/api/notify", options);
}
var SPREADSHEET_ID = '';
대상 스프레드시트의 ID(대상 스프레드시트를 열고 URL의 docs.google.com/spreadsheets/d/여기 문자열/edit#gid=0)를 입력합니다.
// LINE notifyへの通知
function sendHttpPost(content){
var token = [''];
var options =
{
"method" : "post",
"payload" : "message=" + content,
"headers" : {"Authorization" : "Bearer "+ token}
};
UrlFetchApp.fetch("https://notify-api.line.me/api/notify", options);
}
token
= ''
사이에 LINENotify에서 발행한 key를 넣습니다.LINE Notify를 만드는 방법은 다음 기사를 참고로 합니다.
[초간단] LINE notify 사용해보기
입력이 끝나면 스크립트 편집기 게시를 눌러 웹 응용 프로그램 배포를 눌러 설정합니다.
Who has access to the app:
의 부분이 디폴트에서는 Only myself
로 되어 있으므로 Anyone, even anonymous
로 변경합니다.다음과 같이 URL이 발행되므로 복사하여 LINEDevelopers의 Messaging API 설정 아래쪽에 있는 Webhook에 등록합니다.
이상으로, 입력측의 설정은 종료. LINEBOT에서 입력하면 아래 그림과 같이 입력되어 있다고 생각합니다.
알림 설정
Google 스프레드시트의 스플릿 편집기에서 시계와 같은 아이콘을 눌러 트리거 설정을 하세요.
トリガーの追加
를 눌러 설정합니다.
イベントのソースを選択
를 時間主導型
로 변경하여 시간 간격을 설정합니다.
이상의 설정으로 1일 후, 1주일 후, 1개월 후에 통지가 옵니다.
참고 사이트
매우 도움이되었습니다, 감사합니다.
GAS에서 스프레드시트 내용을 LINE Notify에 알림
끝에
시험 공부의 복습 방법으로 스티커 메모 붙이거나, 일에 기입 등의 귀찮은 부분이 해소할 수 있을 것 같다.
이번은 텍스트만의 입력이므로 화상도 생기면 폭이 넓어질 것 같다고 생각했습니다.
Reference
이 문제에 관하여(GAS와 LINEBOT로 복습을 효율적으로 수행), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Toshiki0324/items/57fc5f7bc297d33b4ffc
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
매우 도움이되었습니다, 감사합니다.
GAS에서 스프레드시트 내용을 LINE Notify에 알림
끝에
시험 공부의 복습 방법으로 스티커 메모 붙이거나, 일에 기입 등의 귀찮은 부분이 해소할 수 있을 것 같다.
이번은 텍스트만의 입력이므로 화상도 생기면 폭이 넓어질 것 같다고 생각했습니다.
Reference
이 문제에 관하여(GAS와 LINEBOT로 복습을 효율적으로 수행), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Toshiki0324/items/57fc5f7bc297d33b4ffc
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(GAS와 LINEBOT로 복습을 효율적으로 수행), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Toshiki0324/items/57fc5f7bc297d33b4ffc텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)