ご訪問ありがとうございます。
Googleシートマスターのひろしです。
今回は、とっても価値の高い方法をお伝えします。
これを知ることであなたは、
Gmailで受信した大切なメールをLINEに通知させることができます。
(LINE Notify APIから手軽に移行することができます。)
なので、サクッとマスターして
と答えてあげてください。
すみません、「LINE Notify」が終了してしまっていました。

なので、「LINE Notify」に変わって「Messaging API」を使用して
やってみましょう。
イメージとしては、

の
「LINE Notify」の部分を「Messaging API」に置き換える感じです。
また、「Messaging API」の取得方法は、

でやっています。
とはいえ、「Messaging API」の仕様も少し変わっているので
動画のとおりやってみてください。
やること
- LINE公式アカウントを作成する。
- 作成したLINE公式アカウントでMessaging APIの利用を有効にする。
- プロバイダーを作成する。
- チャネルを作成する。
- Messaging APIの設定画面から、「チャネルアクセストークン(長期)」 を取得する。
- AppsScriptをコピペする
- メールのフィルターを確認する
- LINEにメッセージを送ってみる
準備
LINE Developerにフリープランで登録し、LINEアカウントでログイ
対象のチャネルからアクセストークン
LINE official Account ManagerからLINE Developersへの遷移方法
「LINE Developer」から「プロバイダー」を作成し「Messaging APIチャネル」を
作成しようとすると「LINE official Account Manager」でアカウントを作成するよう
促されます。
その際、「LINE official Account Manager」から「LINE Developer」へ戻る方法です。
Step1.
①右上の「設定」をクリックします。
②「Messaging API」をクリックします。
③「Messaging APIを利用する」をクリックします。
Step2.
①「プロバイダーを作成」で「プロバイダー名」を指定します。
②「同意する」をクリックします。
Step3.
①「OK」をクリックします。(「プライバシーポリシー」、「利用規約」は空でOKです)
Step4.
①「LINE Developersコンソール」をクリックします。
動画はこちら
スクリプト
const LINE_ACCESS_TOKEN = 'アクセストークン' //★
//検索文字列
const query = "subject:テスト"; //★
//例) const query = "subject:(テスト) from:xxxx@gmail.com"
//メールをチェックし条件に該当するメールをLINEに通知する
function getMail() {
//指定した条件でスレッドを検索して取得
const myThreads = GmailApp.search(query, 0, 10);
//スレッドからメールを取得し二次元配列に格納
const myMessages = GmailApp.getMessagesForThreads(myThreads);
for (let i in myMessages) {
for (let j in myMessages[i]) {
//スターがないメッセージのみ処理
// if(!myMessages[i][j].isStarred()){
//未読メッセージのみ処理
if (myMessages[i][j].isUnread()) {
let strmsg = Utilities.formatDate(myMessages[i][j].getDate(), 'Asia/Tokyo', 'yyyy-MM-dd HH:mm:ss') + "\n" //タイムスタンプ
strmsg += myMessages[i][j].getSubject() + "\n" //Subject
strmsg += myMessages[i][j].getPlainBody().slice(0, 200)//本文の先頭から200文字
//LINEにメッセージを送信
sendLineMessage(strmsg); //★
console.log(strmsg); //★
//処理済みのメッセージをスターをつける
// myMessages[i][j].star()
//処理済みのメッセージを既読にする★
// myMessages[i][j].markRead()
}
}
}
}
function test() {
sendLineMessage("LINEに送ってみる")
}
//LINEにメッセージを送信する
function sendLineMessage(message) {
const options = {
"method": "post",
"headers": {
"Content-Type": "application/json",
"Authorization": `Bearer ${LINE_ACCESS_TOKEN}`
},
"payload": JSON.stringify({
"messages": [{
"type": "text",
"text": message
}]
})
};
UrlFetchApp.fetch("https://api.line.me/v2/bot/message/broadcast", options);
}
ポイント
プロバイダーの作成
チャネルの作成
Messaging APIの作成
トークンの取得
LINEメッセージの送信
該当メールの取得
最後までご覧いただきありがとうございます。
つぎはこちら
コメント