見出し画像

迷惑メールから大切な情報を救出!ChatGPTとGASで実現する自動メール管理

メールソフトのセキュリティーレベルが上がる中、重要なメールを見逃すことはないだろうか?

私はGmailを使っているが、時々クライアントからのメールが迷惑メールに分類され、返信が遅くなることがある。これをプログラミングにより解決してみたい。

前提として、私は全くプログラミングの知識を有していないし、ホームページやアプリを作ったことがない。そのような者でも作れたコードを紹介させていただきたい。


迷惑メールに重要なメールが分類

Gmailの場合、「迷惑メール」に分類されると通常閲覧している「受信トレイ」から除かれてしまう。「迷惑メール」に定期的に見に行けばいいのだが、ほとんどが広告系のメールなので、チェックを忘れがちである。

送信者からすると送られているはずのメールが受信者側で確認できていないという問題が起きてしまう。

GAS(Google Apps Script)で解決したいが・・

では、「迷惑メール」に分類されているメールをまとめて「受信トレイ」に移したいところだが、全て移動させたら意味がないし、詐欺メールに引っかかるリスクもある。

そこで、Google社が出しているプログラミングサービスの「Google Apps Script」(以下、「GAS」)を使って、「迷惑メール」を整理することを考えてみた。しかし、「GAS」の画面を見ると、コードだらけ・・。

全く何が書いてあるのか分からない・・

プログラミングのど素人である私ではとても太刀打ちできない。。

ChatGPTにコードを作ってもらう

そこで、登場するのがChatGPTである。ChatGPTに下記のようなプロンプト(質問文)で質問する。

Gmailのうち「迷惑メール」(「in:spam」と検索)の送信元と件名をコピーし、それをまとめてGmailに送るGoogle Apps Scriptのプログラミングコードを教えてもらえますでしょうか?
#条件
直近20件の「迷惑メール」
Gmailのアカウント: eiichiro@higashinihon.ne.jp
Gmailのフォルダ名: 迷惑メール
送信先のメールアドレス: eiichiro@higashinihon.ne.jp
送信メールの件名:迷惑メール直近20件

ChatGPTへの命令文(メールアドレスは一部改変)

質問文のポイントは、直近20件の届いた「迷惑メール」をまとめて自身のメールアドレスに送信元と件名の情報を送るというものである。

ChatGPTから提示されたコードは下記の通り。これを「GAS」にコピーペーストするだけで、プログラムが実行される。

function sendSpamSummary() {
// 迷惑メールフォルダのスレッドを取得
var threads = GmailApp.search('in:spam', 0, 20);
// 送信元と件名をまとめる変数
var summary = '迷惑メールの送信元と件名:\n\n';
// 各スレッドの送信元と件名を取得
threads.forEach(function(thread) {
var messages = thread.getMessages();
messages.forEach(function(message) {
summary += '送信元: ' + message.getFrom() + '\n'; // 送信元を取得
summary += '件名: ' + message.getSubject() + '\n\n';
});
});
// 送信先のメールアドレス
var recipientEmail = 'eiichiro@higashinihon.ne.jp';
// 送信メールの件名
var subject = '迷惑メール直近20件';
// メールを送信
GmailApp.sendEmail(recipientEmail, subject, summary);
}

ChatGPTから提示されたコード

上記コードは完成版である。実際には完成に至るまでChatGPTに何回か質問している。「GAS」でエラーが出るような場合には、エラーの箇所をChatGPTに質問すれば差し替えのコードを何度でも提示してくれる。

プログラムにより自動送信されたメール

「GAS」の画面に移ってみよう。「GAS」では「+ 新しいプロジェクト」をクリックした後、下記のように①から③の手順が必要となる。

③まで終了すると、自身のGoogleアカウントとの連携を求める画面になり許諾すると、プログラミングが完成する。ここで注意が必要なのは「GAS」を利用できるのは「Google Workspace」のユーザーのみである。無料でGoogleサービスを利用している場合は対象外である。

プログラミングを実行すると、下記のようなメールが届く。どのような迷惑メールが届いているのか一目瞭然である。

プログラミング実行後に届いたメール

さらにZapierでChatworkに自動送信

ただ、メールで届いてもそのメールを見逃す可能性がある。そこで、届いたメールをChatworkにその都度転送するようにする。

ここで、使うサービスは「Zapier」。

「Zapier」は「GAS」と違い完全ノーコード。コードがないので、プログラミングアレルギーのある方でも問題なく使えるだろう。

「Zapier」で組んだプログラミングはとてもシンプル。「GAS」のプログラム実行後にメールが届いた場合、それをチャットワークに送るというもの。本記事は「ChatGPT」「GAS」がメインなので、操作方法の説明は省略する。

Zapierの操作はとてもシンプル

ChatGPT出現により無限に可能性が広がる

今まではプロのプログラマーに依頼しなければできなかったような仕事効率化ツールを自ら作れるようになった。まさに総プログラマー時代の到来である。

迷惑メールの定期的なチェックのような業務は山ほどある。一回一回はそれほど時間がかからなくても、チリも積もれば山となる。自動化して損はないのではないか?

この記事が気に入ったらサポートをしてみませんか?