【GAS】でGmailを使いこなすために知っておくべきこと
GoogleAppsScript で Gmail を扱うにあたり、知っとくべき知識や仕組みがあります。
もちろん、基本的なメールの知識や Gmail の事などを知っている方も多くいらっしゃると思いますが、Gmail 特有と思われる考え方と仕組みの知識を知ることでより GoogleAppsScript を通して扱いやすくなるでしょう。
ただし、ここでの説明は私の解釈が多くあるため間違っている場合があります。ご了承ください。
GoogleAppsScript で Gmail を扱うにあたり、知っとくべき知識や仕組みがあります。
もちろん、基本的なメールの知識や Gmail の事などを知っている方も多くいらっしゃると思いますが、Gmail 特有と思われる考え方と仕組みの知識を知ることでより GoogleAppsScript を通して扱いやすくなるでしょう。
ただし、ここでの説明は私の解釈が多くあるため間違っている場合があります。ご了承ください。
Gmail で知っておくべきこと
Gmail は、メールを受信し、必要ならば返信するだけでなく、メールを処理する上で便利な仕組みがあります。
そんな仕組みを知る上で、3つの項目を紹介していきます。
それぞれの項目を以下で詳しく説明していきます。
メールを処理する流れ
Gmail では、メールを処理するために、受信したメールを分別や返信により完結したものを、アーカイブに保存するまでが一連の流れとなります。
つまり、メールを処理してアーカイブに移し、受信トレイ(Inbox)にはまだ処理していないメールのみがあり、それだけに集中できる利点があります。
処理の流れ
下の図で大まかな流れを確認し、以下の項目で詳しくみてみましょう。
① 受信メールが受信トレイ(Inbox)に
新たに受信したメールは、はじめに受信トレイ(Inbox)に溜められます。
② メールを分別
受信トレイに入ったメールが不要な場合はゴミ箱へ、また迷惑メールの場合はスパムとして報告します。
③ メールを処理
受信したメールの要件が完了するまで、やいとりを行います。
例えば、「花見の集まりについて」という要件のメールに対してのやり取りをし、場所や日時が決まったら完了とした場合などです。
④ メールをアーカイブに保存
ある要件についてやり取りしたメールのまとまりを「スレッド」と言います(後ほど説明します)が、それを記録として残して、後に見返したりするためにそのメールのまとまりをアーカイブに移動させます。
メールが置かれるそれぞれの場所
上記の処理の流れの中で、メール(もしくはメールのまとまり)は、「受信トレイ(Inbox)」、「アーカイブ(Archive)」または「ゴミ箱(迷惑メール)」のいずれかに置かれます。
受信トレイ(Inbox)
新たに受信した全てのメールが、ここに一旦溜められます。
例外として、Gmail 側に迷惑(Spam)メールとして判定されたものは、受信トレイに入れられる前に迷惑メール(Spam)の場所に置かれます。
なお、迷惑メールとして置かれたメールは30日後に自動的に削除されます。
アーカイブ(Archive)
要件が完了したメールのやり取りのまとまりを移動し、記録として保存しておく場所となります。
ゴミ箱(迷惑メール)
受信トレイにあるメールで不要なメールをゴミ箱(Trash)に移動して捨てる場所になります。
また、不要というよりいわゆる迷惑メールもしくはスパムメールとして処分したい場合は、迷惑メール(Spam)に移動させます。
なお、迷惑メールと判定すると Gmail が学習してくれて、後には同じ様なメールを事前に迷惑メールに移動させてくれます。
ゴミ箱に移動したメールも、迷惑メールに移動させたメールも自動的に30日後に削除されます。
Gmail の構成
Gmail を普段使う場合も、GoogleAppsScript で扱う場合も、大原則としてメールを扱うには、スレッドと呼ばれるメールのまとまりごとになります。
では、スレッドとはどの様なものなのか、そして一通のメールとどの様な関係性なのか、そしてその他にある「下書き」のメールはどうなのかを下の図を見ながら説明していきます。
スレッドとは何か
スレッドとは、複数のメールまたは返信メールの下書きがまとまったものとなります。
そして、上の図のようにそれらのメールのまとまりの関係性は、互いに返信されあったものになります。
また、返信しようとしているメールの下書きもその一部として考えらます。
例えば、「花見の集まりについて」という要件の内容を決めるために、相互に返信し合い、場所や日時を決めていった場合に交わされた複数のメールがあるとするならば、この複数のメールのまとまりがスレッドとなります。
なお、スレッドは複数のメールを常に持っているわけではなく、一通のメールの時点で一つのスレッドとなります。
つまり、一通のメールは、一つのスレッドに入った一通のメールというものとして扱います。
また、新規に送信しようとしている下書きのメールも、一つのスレッドの中の一通の下書きのメールとなります。
ここで、GoogleAppsScript では一通のメールのことをメッセージ(Message)としています。
スレッドをどう扱うか
特に GoogleAppsScript で Gmail を扱う場合、メールを検索したり、メールにラベル(タグの様な識別し易くするもの(後ほど説明))を貼るにも、基本的にスレッド単位で行うことになります。
例えば、メールを探す場合、まず条件に合うスレッドを探し、そしてそのスレッドの中のメッセージ(Message)を見ていくことになるのです。
スレッドの中身
上記にある通り、スレッドの中身は、相互に返信しあったメッセージのまとまり、または単体のメッセージや返信メッセージの下書きまたは新規のメッセージの下書きです。
ここでは、メッセージや下書きについてどの様なものかみてみましょう。
メッセージ(Message)
一通のメールを通称メッセージと Gmail では呼んでいますが、そのメッセージは基本的なメールと同じ構成です。
メッセージは、アドレス情報、件名、本文、添付データから構成されます。
このアドレス情報とは、
からなります。
下書き(Draft)
下書きとは、簡単に言えばメッセージの未送信のものであり、またはメッセージの下書きバージョンとでも言いましょうか。
GoogleAppsScript で下書きを扱うには、下書き専用のクラスが用意されており、それのオブジェクトを扱うことになります。
そして、この下書き用のクラスのオブジェクトの中に、メッセージのオブジェクトが要素として保有されています。
メールの分類
メールを整理する為に、メールを分類したり、重要なものや既読済みなどの印を付けることができます。
メールの分類や目印の付け方には、スレッド(Thread)とメッセージ(Message)のそれぞれに与えます。
どの様なものがあるかみてみましょう。
スレッドに印を付けたりや分類をする
スレッドを分類(ラベル(Label))
スレッドには、分類するためのユーザーが独自に作成したラベル(Label)を付与できます。
上の画像の様に、あるスレッドを分類した場合、そのスレッドが「仕事」関係のものであり、そして「緊急」を要するものであることを見分けられるラベルを付けられるため、どのスレッドから処理して良いかわかりやすくなります。
また、上の画像の様にラベルは複数つけることができます。
スレッドに印を付ける
重要性
スレッドが重要なものか、もしくはスレッドのメッセージの送信元が重要な方からなのかを表すものとしての目印を付けておくことで、メール処理において効率的になります。
また、この重要性の印には、その付けられ方により2種類あります。
これらの意味合いと見た目は上の画像の様に同じです。
そして、その付けられ方の違いとは、
があります。
既読済み
そのスレッドを読んだか読んでいないかがわかります。
メッセージに印を付ける
メッセージ単体を分類することはできず、基本的にスターマークと既読済みの印を付ける事だけとなります。
スターマーク(starred)
スレッドの中でも、メッセージ単体に重要であることを示す事ができます。これは、スレッドの重要性を表すものと別として「星印」として付けられます。
既読済み
スレッドにも既読しているかどうかを示せますが、メッセージ単体ごとにもそのメッセージが読まれているかを知ることができます。