Piymaru Softwareによる電子書籍の70冊目は、AppleScript対応アプリケーション徹底解説シリーズの第6弾。
macOS上の主要アプリケーション、FileMaker Pro、ミュージック.app、Webブラウザ、iWork(Keynote、Pages、Numbers)、CotEditorときて、ご要望の多かった「メール」(Mail.app)についてのScripting本です。macOS 13.1+Mail.app v16対応。PDF 369ページ+サンプルScript Zipアーカイブで構成されています。
→ 販売ページ
本書は、Mail.appのAppleScriptによるScriptingについて基礎からハイ・テクニックまで、詳細にまとめた決定版です。
メールの詳細な情報取得や送信、ファイル添付送信、メールのスレッドをマインドマップ風に可視化して表示したり、REST API経由で高速メール配信サービスを用いた送信まで。幅広く実用的なメール関連のAppleScriptのノウハウをご紹介しています。
ずいぶん時間をかけて書いた本で、あとから企画が出た数冊の本が追い抜いていました。CotEditor本も、あとから企画したものの、あちらが先に完成しました。とにかくアプリケーションの規模が大きく、機能が多く、試しておくべき機能が多いので、とにかく時間がかかるんですね。実際、年末年始も書いていました。
以前から(2004年ぐらいから)受信メールのサブフォルダへの再仕分けScriptを運用しており、いまも利用していますが、これを添付しています。
また、選択したメールスレッドのマインドマップ形式の可視化Scriptも、別途アプリケーションをインストールしなくても利用できるものを添付しています。
SendGridのREST APIを呼び出して超高速にメール送信を行うScriptは、あんまり速いので腰が抜けるほどですが、これも一見の価値あるものでしょう。
Numbersの表に入れたデータをもとに、メールの文面にデータを差し込んで送信するScriptも添付しているので、年末年始のごあいさつなどに威力を発揮することでしょう。
■■目次
■初級
スクリプトエディタを起動しよう
スクリプトエディタを起動しよう!
スクリプトエディタのヘルプ
色設定を変えてみよう!
スクリプトを入力してみよう
スクリプトを保存しよう
スクリプトを実行しよう(1/2)
スクリプトを実行しよう(2/2)
セキュリティとプライバシー
プライバシーとセキュリティ(13.x以降)
セキュリティとプライバシー>プライバシー
プライバシーとセキュリティ(macOS 13)
メール.appを起動しよう
メール(Mail.app)を指定
メール.appを起動
メール.appを終了
メール.appのAppleScript用語辞書の調べ方
メニュー項目や画面強制操作の調べ方
メール.appの詳細仕様について
メール.appの情報を取得しよう
メール.appの名前を取得
メール.appのバージョンを取得
メール.appのプロパティ項目と内容(1/2)
メール.appのプロパティ項目と内容(2/2)
選択中のメールボックス、メールを取得
selected mainboxes=選択中のメールボックス
selected messages=選択中のメール
selection=選択中のメッセージを取得
メールボックスのプロパティ項目と内容
メール情報の取得
メッセージ(メール)の内容を取得
メッセージ(メール)のソースを取得
メッセージ(メール)の各種情報を取得
メッセージのプロパティ項目と内容
メッセージのプロパティ項目と内容
メッセージのプロパティ項目と内容
条件に合ったメールの抽出
条件に合うメッセージを取得
メールアカウント情報
メールアカウントは複数存在可能
accountオブジェクトの詳細情報を取得
アカウントのプロパティ項目と内容①
アカウントのプロパティ項目と内容②
メールアドレスを取り出す
文字列からメールアドレスと氏名を抽出
選択中のメッセージからメールアドレスと氏名を抽出
シグネチャ(署名)
設定>署名で「署名」を管理
署名から情報を取得
アプリケーションの選択中署名情報
署名の属性値の書き換え(名称、本文)
スクリプトメニューからの操作
スクリプトメニューからの操作①
スクリプトメニューからの操作②
スクリプトメニューからの操作③
プリントアウト
メール.appから印刷出力(GUI側)
AppleScriptによる印刷
AppleScript(GUI Scripting)による印刷
■中級
アカウントを指定しての新着メール確認
メールアカウント種類ごとのメール確認
新着メール確認スケジュールの設定/停止
SMTPサーバー
SMTPサーバー情報の取得
指定アカウントのSMTPサーバー設定を切り替え
SMTPサーバーのプロパティ項目と内容
新規メール作成
メッセージの新規作成
メール送信
メッセージの新規作成+送信
GUI側で作成していたメールの送信①
GUI側で作成していたメールの送信②
添付ファイルつきメール送信
メッセージの新規作成+ファイル添付+送信
メッセージの新規作成+アーカイブファイル添付+送信①
メッセージの新規作成+アーカイブファイル添付+送信②
メールの添付ファイルを処理
選択中のメールの添付ファイルを保存
選択中のメールの添付ファイルの種別を集計①
選択中のメールの添付ファイルの種別を集計②
選択中のメールに添付ファイルがあれば背景色を赤く変更
メール返信
選択中のメールへの返信①
選択中のメールへの返信②
メール転送(Forward)
選択中のメールの転送(forward)①
選択中のメールへの転送②
メールのリダイレクト
選択中のメールの非破壊転送(redirect)①
メールボックスへのアクセス
特別なメールボックスのオブジェクト
特別なメールボックスへのアクセス
アカウント毎の特別なメールボックスへのアクセス
メールフォルダのパス情報
メールボックスのパス表記
選択中のメールボックスのフルパスを取得
フルパス文字列でメールボックスを指定
メールのフォルダ間の移動
メールの指定①
メールの指定②
メールのコピー
メールの移動
ビューアウィンドウの操作
メール.appのウィンドウ種別
ビューアウィンドウ操作
message viewerのプロパティ項目と内容①
message viewerのプロパティ項目と内容②
メールのルールを扱う
受信メールから条件実行するアクション「ルール」
「ルール」の「AppleScriptを実行」環境
テンプレートのメール.app用プラグインScript
ルールにAppleScript側からアクセス
ルールの「条件」にアクセスするrule condition
rule conditionとGUI上の内容との対比
ルールの「操作」の内容にアクセス
ルール「操作」の詳細にアクセス
■上級
URL Eventの発生/受信
メール.appが対応しているURLイベント
mailto: URLイベント(概要)
mailto: URLイベントを発生してメール作成
message: ローカルのメールのURLを求めて表示
メールヘッダー情報の取得
メッセージヘッダーの内容を取得
メッセージ(メール)のヘッダーを取得
ヘッダーの構成例
ヘッダーからフィールド名一覧を取得
メーラー名(x-mailer)を集計
メールスレッドの可視化
スレッドの可視化①
スレッドの可視化②選択中のメール情報
スレッドの可視化③各メールヘッダ情報
スレッドの可視化④.dotデータの作成
スレッドの可視化⑤.dotデータを表示
メーリングリストの振り分け先フォルダを抽出する
メーリングリストを処理するルールを抽出
メッセージ移動先がないルールを抽出
メールの再仕分け
「メールの再仕分け」とは?
「メールの再仕分け」Script変更履歴
「メールの再仕分け」Script処理概要
「メールの再仕分け」Script①
「メールの再仕分け」Script②
「メールの再仕分け」Script③
「メールの再仕分け」Script④
「メールの再仕分け」Script⑤
「メールの再仕分け」Script⑥
「メールの再仕分け」Script⑦
「メールの再仕分け」Script⑧
スタイル付きテキストのメール作成+データ差し込み
スタイル付きメールを作成するために
書式スタイル付きメールを作成
HTMLからスタイル付きメールを作成
RTFからスタイル付きメールを作成①
RTFからスタイル付きメールを作成②
Numbers上のデータをもとにさしこみメール作成
データ差し込みメール送信【概要】
データ差し込みメール送信①
データ差し込みメール送信②
データ差し込みメール送信③
データ差し込みメール送信④
高速・大量メール送信
高速メール配信サービスの利用
高速メール配信サービス一覧
SendGridのAPI Key取得までの道①
SendGridのAPI Key取得までの道②
SendGridのAPI Key取得までの道②
SendGridによるメール配信テスト(メール.app)
SendGridによるメール配信テスト(メール.app)
メール.appによるメール配信プログラム(SendGrid使用)
REST APIによるメール高速配信プログラム
SendGridを用いたメール送信所要時間(500通)
メール.appで大量送信後のメモリの状態
ランタイム環境の選択
AppleScriptの実行環境はたくさんある
実行中に止まる、落ちるという場合には
資料集
メール.appのAppleScript用語辞書解説
メール.app用語辞書
メール.appのAppleScript用語の変遷
メール.app用語辞書の変遷
メール.app&AppleScript Q&A
AppleScriptに関するQ&A❶
AppleScriptに関するQ&A❷
AppleScript mini Reference
macOS搭載 AppleScript関連ドキュメント
AppleScript関連の情報源
macOSバージョンとAppleScriptの動向
macOSとAppleScriptの要素技術史
各macOSごとのAppleScript解説(2/4)
各macOSごとのAppleScript解説(3/4)
各macOSごとのAppleScript解説(4/4)
macOS内AppleScript補助ツールの歴史
System EventsのAppleScript用語辞書変更点
AppleScript 各ランタイム環境情報
AppleScript 関連ツール
Cocoa Scripting 関連ツール
AppleScript予約語一覧
サードパーティ製FrameworkやAppleScript Librariesを呼ぶ
Script BundleにFramework / AppleScript Librariesを入れる
Shane StanleyのScript Toolの変遷
Shane StanleyのScript Libraries
Piyomaru SoftwareのScript Libraries (1/2)
Piyomaru SoftwareのScript Libraries (2/2)
エラーコード表
AppleScriptのエラーコード
AppleScript Errors
Mac OS Errors
AppleEvent Errors (1/2)
AppleEvent Errors (2/2)
OSA Errors
あとがき