今日も「時間クリエーター」としてバシバシ時短に取り組んでます!, 今回はGoogle Apps Scriptを使い、Gmailで特定の件名のメールを受信したらLINEに通知するプログラムの紹介です。, 私はチャットワークを使用しているのですが、スマホにアプリをインストールしておらず、グループチャットでの発言の通知を全てGmailで受け取っていました。, でもGmailだと通知が届いたのに気づかないことがけっこうあったんですね。そこでGmailで受け取った通知メールをLINEに転送できないかな~って思っていたところ、LINEのWeb APIが使える!ということを知り、やってみようとなったわけですっ。, まあでもスマホにチャットワークアプリを入れればこんなことしなくていいんですけどね・・・他の用途にも使えるし、勉強にもなるし何事もチャレンジということで。興味のある人は見ていってくださいね~。, まずはLINEのWeb APIを使えるようにする必要があります。それでは順を追って説明していきますね。, LINEをインストールしたときに登録した「メールアドレス」「パスワード」を入力します。, 「登録したメールアドレスと、パスワードなんて忘れちゃったよ」という人。心配しないでください。調べ方がありますからっ。, 「その他」→「設定」→「アカウント」→「メールアドレス」の順にタップすることで確認できます。, トークン名に適当な名前を入れ、1:1でLINE Notifyから通知を受け取るをクリックします。そして画面下にある「発行する」ボタンをクリックします。, するとトークンが発行されるので、コピーボタンを押してコピーし、テキストエディタなどに保存しておきます。このトークンはWeb APIを使うためのパスワードのようなものだと思っておいてください。, これで準備OKです。次にGoogle Apps Scriptでスクリプトを書いていきます。, Web APIの設定が終わったところで、今度はGoogle Apps ScriptでGmailメールを操作するスクリプトを書いていきます。, 今回のスクリプトは「特定の文字が件名に入っていたらLINEと連携して通知メッセージを送る」ようにします。, Goooleのサイトを開き、「Googleドライブ」→「マイドライブ」→「その他」→「Google Apps Script」の順でクリックし、スクリプエディタを開きます。, 続いて下記のコードを入力します。プロジェクト名は「特定のメールをLine転送」などとし保存します。, それではプログラムコードの解説をしていきます。「とりあえず動けばいい」という人は読み飛ばしてください。, 検索条件はスクリプトの1行目で指定している、subject:(チャットワーク)です。件名にチャットワークという文言が入ったメールだけを抽出します。, スレッドの読み込み開始位置は0を指定すると、検索条件にヒットした中で最新の日付のスレッドから取得します。スレッドの最大数はこの開始位置からいくつ日付を遡って、スレッドを取得するかを指定します。仕様では500が最大になっています。, searchメソッドで取得した全てのスレッドに入っているメールを取得して二次元配列に格納します。, ちょっとわかりにくいと思いますので、下記の図のようなメールを受信した場合を例にしてみます。スレッド数は全部で3つ。一番上のスレッドのみメールが5通入っています。, 「受信したメールを返信」というようなことを繰り返すと、このように一つのスレッドにメールがまとめられます。, 残り2つのスレッドは数字が表示されていませんね。その場合は返信などのやりとりをしておらずスレッドに紐づくメールは1通だけです。, YOUYUBEからのメール Gmailで受け取った特定の件名のメールをLINEに転送する方法を紹介します。LINEのWeb APIが使える!ということを知り、Google Apps Scriptを使って連携してみました。別の用途にも応用が利くと思うのでぜひ試してみてください。 1スレッド目の5番目のメールはmyMessages(0,4), Lookout Mobile Securityからのメール みなさん、こんにちは! タカハシ(@ntakahashi0505)です。GASで問い合わせメールをスプレッドシートに収集する方法をシリーズでお伝えしています。. 問い合わせメールのデータの蓄積と効果分析にまつわることを色々とやっていきたいということで、今回はGoogle Apps Scriptで過去の問い合わせメールを特定条件で検索して取り出す方法です。 下記のようにスターがついてないメールのみ、関数sendLineをコールするような処理にしてるためです。, 最後にトリガーを設定します。トリガーとはどのようなタイミングでプログラムを動かすかを指定する設定です。, いかがでしたか?今回はGoogle Apps ScriptでGmailの特定のメールを受信したらLINEと連携して通知する方法を紹介しました。, Gmailに届くメールで重要なメールだけLINEで通知したり、アイデア次第で便利に使えそうです。, プログラムの参考書ってある程度プログラムを理解していることが前提で書かれていることが少なくありません。この本はとことん初心者の目線に立ち、つまずきそうなポイントなどを丁寧に解説してくれています。GASを学ぼうとしてるかたで、効率的かつ体系的に学びたいかたにおすすめです。, Google Apps ScriptでGoogleドライブ内から直接スクリプトエディタを開いて、新規プロジェクトを作る方法を紹介します。Gmailを操作して添付ファイルを保存するスクリプトなど、他のアプリとの連携が不要な場合スクリプトエディタ単体で開いたほうが便利ですよね。, 転職は過去に3回経験しており、2017年に、某プリンタ会社から完全リモートワークのシステム開発会社へ転職しました。, 当ブログでは、エクセルVBAとAmazon echoを中心に情報を発信しています。, LINE NotifyはGitHub,IFTTT,MackerelなどのWebサービスからの通知を、LINEで受信することが出来る便利なサービスです。, 「詳解! var toadd=”メールアドレスを記載”;var title = “件名テスト”;var body = “本文テスト”; また、下記のサンプル2は、オプションのうちfrom、cc、noReply、replyToを設定したサンプルになります。. 2018/8/21
2スレッド目の1番目のメールはmyMessages(1,0), Google+からのメール フォームに日付けを設定すると、 日付けが自動返信で日本語ではなく、英語で出力されてしまいます。 どう対処したらよろしいでしょうか。 教えていただけますと幸いです。, ゆう様 コメントありがとうございます。 「自動返信メール内の『お問い合わせ日時』が英語表記になってしまう」ということでよろしいでしょうか。 もしかしたら、タイムゾーンの設定かもしれません。, 以下の2つの項目について、タイムゾーンが「(GMT+09:00)東京」になっていることを確認してみてください。 <GAS側> 対象スクリプトのスクリプトエディタから、 [ファイル]-[プロジェクトのプロパティ]を選択 [情報]タブ-[タイムゾーン], <スプレッドシート側> 対象スプレッドシートから、 [ファイル]-[スプレッドシートの設定]を選択 [全般]タブ-[タイムゾーン] ※[言語と地域]が日本になっていなければ日本にする ※上記はGASの記述が合っているのが前提, 上記で違う場合は、お手数ですが再度コメントor問い合わせフォームからご返信ください。, […] ームの作成は下記のサイトを参考にしたのでリンクを張っておきます。 ▷▷【適当。でも繊細】ブログを参考にする ▷▷【INFACT】ブログを参考にする ※フォームサイズは「幅670/高さ887 […], 次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。. Google Apps ScriptではGmailApp.sendEmailを使ってGメールを送信する事ができます。 このスクリプトには様々な値を設定する事ができるため少々ややこしいですが、今回はその中の機能の一部をご紹介し … 1スレッド目の3番目のメールはmyMessages(0,2)