目次

はじめに

スパムフィルタリング

迷惑メール(スパムメール)対策は、PCの世界ではメーラーに組み込まれたスパムフィルタによる対策(クライアント側の対策)とメールサーバ側の対策がある。
サーバ側ではメールアドレスをブラックリストまたはホワイトリストと照合しスパムを駆除、またはなんらかの機械学習アルゴリズムにより生成されたスパムフィルタを使用してスパムを駆除する。
両方の方式を組み合わせてスパムを駆除する場合もある。
しかし、メールが迷惑であるか否かは個人の主観に依るので、サーバ側のスパム対策が各ユーザーの要求に100%応えることはない。
ユーザーの事情に応じたスパム対策をするのであれば、クライアント側でのスパム対策が不可欠になる。
これまではサーバ側のスパム対策を利用するだけで、iPhone単体ではスパム対策はできなかった。iPhone以外にPCを利用できる人はIMAPメールに限りPCメーラーのスパムフィルタを利用することができたが、運用上の不便さがつきまとっていた。
MailKitは学習型のスパムフィルタを搭載しており、PCメーラーと同等それ以上のスパム対策をiPhone単体で可能にする。

基本的操作

プル・ダウン/ナビゲーションバーの長押しによるメッセージのリロード

メッセージ一覧のプル・ダウンまたはナビゲーションバーの長押しで新規メッセージのダウンロード、スパムフィルタリングを行う。
未学習データがある場合は、学習を行い、スパムフィルタを更新する。

プル・ダウンによる
メッセージダウンロード

ナビゲーションバーの長押し

プル・アップによる既存メッセージのダウンロード

メッセージ一覧の最後尾でのプル・アップにより既存メッセージのダウンロード、スパムフィルタリングを行う。 一度にダウンロードするメッセージ数は、設定できる。

ナビゲーションバーのタップ/スワイプによるアカウント切替え

利用可能なアカウントが複数ある場合は、メールボックス一覧のナビゲーションバーをタップ/スワイプすることで、アカウントを切り替えることができる。

ナビゲーションバー上のツールバーによるメッセージの移動、削除、未読処理

“INBOX”、”迷惑メール”、”ゴミ箱”において編集ボタンをタップすると、ナビゲーションバー上に”マーク”,”削除”,”移動”ボタンが表示され、 メッセージの未読、削除、移動処理ができる。

スワイプアップ•ダウンによるメッセージ表示の切替え

下方向にスワイプすると次のメッセージが表示される。
上方向にスワイプすると前のメッセージが表示される。

スワイプダウン
下方向にスワイプすると次のメッセージが表示される

スワイプアップ
上方向にスワイプすると前のメッセージが表示される

スワイプ&タップして ブラックリスト

Inbox、統合受信ボックスにおいてメール・セルを左から右にスワイプすると、セル内に背景が黒のボタンが表示される。 黒の背景ボタンをタップするとメールをブラックリストへ登録できる。

ブラックリストに追加したメールアドレスは、設定において編集可能。

メッセージ・セル 長押しによる既読・未読の切替

メールメッセージ一覧のテーブル・セルを長押しすると未読と既読が切り替わる。

プル・ダウンでルール追加

送信者メールアドレス、件名、メッセージ本文の新規ルールを追加するには、テーブルリストを プル・ダウンする。
新規のテーブル・セルが追加されるので、セルをタップして内容を編集する。

ナビゲーションバーのタップ/スワイプによる画面移動(ルール閲覧時)

4種類のルール(送信者メールアドレス、件名、メッセージ本文、複合ルール)をそれぞれ別の画面で管理する。
ルール閲覧時に画面間を移動するには、ナビゲーションバーをタップ/スワイプする。

タップ/スワイプ
による画面移動

本文画面から複合ルール画面へ

画面の左右スワイプによる画面移動(ルール編集時)

ルール編集時に画面間を移動するのにナビゲーションバーを使用できないので、代わりに画面を左右にスワイプして移動する。

複合ルール・セル 長押しによるルール解除

複合ルール一覧のテーブル・セルを長押しすると、複合ルールのレベルが1つ解除される。
複合ルールの内容を直接編集することはできないので、複合ルールを構成する個々の条件を編集するには、複合ルールのレベルを解除する必要がある。

複合ルールの視覚化

複合ルール一覧のテーブルセルをタップすると、複合ルールが視覚化される。
視覚化された画面では編集はできない。複合ルールを編集するには、複合ルールのレベルを解除して編集する。

クィックビューリストの編集

クィックビューリストは、Inbox(統合受信ボックス)から、ナビゲーションバーのタップ•スワイプでアクセスできるビューリストを意味する。
クィックビューに指定できるのは、システムメールボックスのみ。
クィックビュー属性は、メールボックス一覧で編集ボタンをタップして、メールボックス編集モードに入り指定する。

ナビゲーションバーのタップ/スワイプによるメールボックス切替え

メールメッセージ一覧のナビゲーションバーをタップ/スワイプするとクィックビュー属性のあるメールボックス間でメールボックスが切替わる。
ナビゲーションバーの右スワイプは、タップと同じ動作をする。左スワイプは、直前のメールボックスに戻る。

INBOX画面

迷惑メールボックス画面

  

設定

監視モニタのオン・オフ、学習データ数の確認をする。
迷惑メールのルールの編集はここで行う。

  

アカウント設定

スパムフィルタ・ルールフィルタのオン・オフ、迷惑メールの一括削除、アカウントの削除をする。

  

詳細設定

ユーザインファーフェースの設定、iCloudのオン・オフをする。

メールサーバへ接続

はじめてアプリを起動すると新規アカウント画面が表示される。
作成したいアカウントのメールアドレスとパスワードを入力すると、IMAPサーバに接続され、最新のメール32件がダウンロードされ、監視モニタ画面が表示される。
メールアドレスがログイン名でない場合は、アカウント詳細設定画面が表示されるので、ログイン名(ユーザー名)を入力して、再接続を試みる。

新規アカウント画面

アカウント設定画面

メールサーバの接続に失敗した場合は、接続ボタンが手動ボタンになる。手動ボタンをタップすると詳細設定画面が表示されるので、必要な情報を入力して再度接続を試みる。

ログイン名、パスワードが分からない場合はメールサーバを管理している組織、あるいは担当者に問い合わせ、接続に必要な情報、ホスト名、ログイン名(ユーザー名)、パスワードを入手する。

SSL設定、ポート番号は再設定する必要はない。
SSL接続をしない場合はSSL接続をオフにする。
それに併せてポート番号も変わるが、期待するポート番号でない場合は設定し直す。

アカウント情報

MailKitに設定するアカウント情報はメールサーバに接続するために必要な情報であり、他のメーラーに設定するアカウント情報と同じになる。したがって、他のメーラーにおいて接続済みのアカウントをMailKitに設定する場合、同じログイン名(ユーザー名)とパスワードを設定すれば良いことになる。

ソフトバンクの例

ソフトバンクの場合は、メールアドレスがユーザー名なので、新規アカウント画面で、メールアドレスとパスワードを入力すればIMAPサーバに接続できる。
パスワードはiPhone Mail.appにおいてi.softbank.jpについて設定しているパスワードと同じになる。
iPhoneのアプリ設定を起動して、

  メール/連絡先/カレンダー →アカウント → Softbank Email → 受信メールサーバ

の受信メールサーバで設定したパスワードを設定する。

EZWebの例

ezwebメールのリアルタイム受信設定をすると新しいメールサーバsync.ezweb.ne.jpに接続することになるが、サーバに接続するためのパスワードを含むアカウント情報が見られないため接続はできない。仮にアカウント情報を知り得たとしてもsync.ezweb.ne.jpはExchange Serverなので接続はできない。
現在、リアルタイム受信をしていないのであれば、Mail.appに設定しているimap.ezweb.ne.jpのユーザー名とパスワードを設定すればよい。
ユーザー名は、メールアドレスと異なるので、アカウント詳細設定画面で、ユーザー名を設定する必要がある。 このユーザー名とパスワードはiPhoneの『メッセージ』アプリの宛先に『#5000』と本文に『1234』を入力して送信し、Mailアカウントを手動設定した場合に入手できる情報になる。
リアルタイム受信をしているのであれば、リアルタイム受信をやめて、imap.ezweb.ne.jpへ接続し直す必要がある。以下はその方法。
アプリ設定→一般→インストールしたプロファイルを削除。
Wi-Fiをオフ。
先にSMSから#5000で1234を送信したメッセージを再度開く。
メール設定URLを開く。その他の設定→メールアカウント手動設定からユーザー名と新しいパスワードを取得。
MailKitに上記で入手したユーザー名とパスワードを設定すればよい。

接続エラーの対処
一旦接続が完了した後で"ネットワークエラー"が発生した時の対処

一旦接続が完了し、特定のメールサーバ側の原因で"ネットワークエラー"が発生すると、次のようなアラートが発生する。

ネットワークエラー

ここで、オフラインを選択した場合、オフラインから復帰するには、登録しているアカウントが1つの場合は、MailKitを終了し、再度起動する必要がある。
複数のアカウントが登録されている場合は、アカウント一覧を表示すると、当該アカウントにオフラインマークが付くので、テーブルセルを長押し(2秒間)すると、(当該メールサーバのネットワーク状況が改善されていれば)オンラインに復帰する。

オンライン復帰

スパムフィルタ作成

iOSデバイスがiCloudにサイン・インしていることを確認する。
詳細設定で背景が青色のiCloudセルをタップする。
iCloud上に学習データがある場合は、設定に学習データ数が表示される。
統合受信ボックス(Inbox)において、プル・ダウンあるいはナビゲーションバーの長押しを行うと、機械学習が行われスパムフィルタが作成・更新される。
スパムフィルタリングをするためには、スパムフィルタを適用する必要がある。

スパムフィルタ適用

アカウント設定でスパムフィルタを有効にすると受信ボックス内のメールを対象にスパムフィルタリングを実行する。
スパムフィルタのスイッチをオンにしない限りスパムフィルタリングが実行されない。
スパムフィルタリングをするか否かはアカウント毎に指定できる。
スパムフィルタの対象となるのは受信ボックスのみ。

メールルール作成

分類先のメールボックスにルールを指定することで、メールを分類できる。

ルールは、差出人、件名、本文(ルールに本文を指定するとIMAP受信メールのフィルタリング速度が低下)、またそれらの複合条件において指定できる。

ルールを作成するためには、メールボックス一覧でナビゲーションバーの編集ボタンをタップする。
選択メニューからルールを選択すると、ルール編集モードになる。
ルール編集モードに入り分類先のメールボックスを選択すると、最初に差出人メールアドレス一覧が表示される。
ナビゲーションバーをタップ、もしくは左にスワイプする毎に件名、本文、複合条件一覧へと画面が変遷する。
ナビゲーションバーを右にスワイプすると直前の画面に戻る。

差出人メールアドレス、件名、本文のルールを追加する場合には、画面をプル・ダウンすると、空の条件がテーブル一覧に追加されるので、新規追加されたテーブルセルをタップして条件を編集する。
差出人メールアドレスの場合は、ナビゲーションバーの右端の+ボタンをタップすると、ナビゲーションバーにツールバーが表示され、既存の差出人メールアドレス一覧から選択が可能になる。
複合条件を指定する場合には、ナビゲーションバーの右端の編集ボタンをタップすると、複合条件編集モードになり、ナビゲーションバーにツールバーが表示され、既存の条件をAND/OR/NOTの演算子で結合し、複雑なルールを作成できる。

ルール一覧画面において、テーブルセルをスワイプすると削除ボタンが表示されるので、タップすればルールが削除される。

同様の操作で設定から迷惑メールルールを作成できる。

複合条件

差出人、件名、本文で指定したルールをAND、OR結合したり、否定したりして複雑なルールを指定できる。
複合条件編集では、画面を左右にスワイプすることで移動し、差出人、件名、本文でルールを2つ以上選択して(NOTの場合は1つ以上)、AND/OR/NOTボタンをタップすると選択したルールがAND/OR/NOT結合されて、複合条件画面に移動する。

複合条件のセルをタップすると複合条件が視覚化されて表示される。

複合条件のテーブル・セルには次の記号が使用される。

複合条件で使用する記号

論理演算子

AND演算子
OR演算子
¬
否定演算子

条件の種類を示す記号

@.
送信者アドレス
件.
件名
本.
メッセージ本文
複合条件の例

複合条件は無限にネスト可能だが、常識的には、認知可能という意味で3か4レベルまでが妥当。
例を2つ示す。
最初の例は、3レベルのネストを持つルールで、比較的単純。
2番目の例は、表記の揺れを吸収するためのもので、これも単純な例となる。

単純なルールで検索条件を表現できない場合は、複合条件を使用すると良い。

  • (本.finance ∨ 本.money ∨ 本.stock )∧ ¬(@.daiwa ∧ @.nomura)
  • (件.10 ∨ 件.ten ∨ 件.Ten) ∧ (件.Flu ∨ 件.flu ) ∧ 件.patient
  • メールルール適用

    ルールによる分類は、スパムフィルタリングより優先して行われる。
    ルールには、アカウント全体に有効なルールとアカウントだけに有効なルールがある。 アカウント全体に有効なルールは、統合アカウントのシステムメールボックス一覧のルール編集で指定するルールであり、アカウントだけに有効なルールは、各アカウントにおけるメールボックス一覧のルール編集で指定するルールになる。
    システムメールボックス対するルールは、統合アカウントで指定した方が効率が良いことになる。

    アカウント設定でルール適用の有無を指定できる。

    メールボックス一覧

    メールボックス一覧においては次のことができる。

    編集ボタンをタップすれば、メールボックス編集あるはルール編集モードに移行できる。


    メールボックス編集

    未割当のシステムメールボックスを割り当てることで、システムメールボックスにできる。
    システムメールボックスにすることで、クイックビューリストに追加したり、統合アカウントでメッセージの移動先の対象にすることができる。

    メールボックス編集

    iCloud

    iOSデバイス(iOS7.0以上)がiCloudにサイン・インしているのであれば、詳細設定iCloudの利用を選択できる。

    ルールデータまたは学習データを変更しても、iOSデバイスのホームボタンを押してアプリをバックグランド状態するか、メッセージ一覧でフィルタリングを開始しない限り、変更分はiCloudへアップロードされない
    iCloudデータ同期が非常に遅れることがある。
    詳細設定の"iCloudストア再構築"をタップすると強制的に同期が行われる。
    強制同期に数分かかることがあり、その間、学習データ、ルールデータが削除されている状態になる。

    詳細設定の背景が青色のiCloudをタップすると、ローカルデータをiCloudに移行する際に

    のいずれかの方法を選択できる。
    上書きを選択するとiCloud上の既存のデータがが削除された後で、ローカルデータがiCloudへコピーされる。
    マージを選択するとiCloud上の既存のデータとローカルデータの差分のみがiCloudへコピーされる。
    スキップはデータ移行処理なしで、iCloudモードになる。


    詳細設定の背景が赤色のiCloudをタップすると、iCloudデータをローカルデータへ移行できる。
    何かの理由でiCloudデータが壊れ、自動復旧ができない場合は、次の手順でローカルデータからiCloudデータを復旧可能になる。

    1. 設定アプリでiCloudのストレージ管理においてMailCatを削除
    2. MailKitの詳細設定で、背景が赤色のiCloudをタップする。その際、スキップを選択する
    3. 詳細設定で、背景が青色のiCloudをタップする。その際、上書きを選択する

    iOSデバイスがiCloudからサイン・アウトするとMailKitではiCloudを利用できなくなる。


    iCloud利用を選択するとルールと学習データがiCloud上に保存され、MailCat、MailKitで相互に利用できるようになる。

    よくある問題

    メールサーバ接続時に指定したパスワードの安全性

    入力したパスワードは、iOSデバイスとユーザが契約しているメールサーバに保存されているので、安全性は保証されているので、漏洩などの 心配はない。

    ログイン名・パスワードを入力してもメールサーバに接続できない

    ログイン名、パスワードが分からない場合はメールサーバを管理している組織、あるいは担当者に問い合わせ、接続に必要な情報、 ホスト名、ログイン名(ユーザー名)、パスワードを入手する。

    学習したにも関わらず、迷惑(スパム)メールがフィルタリング(ブロック)されない

    次のいずれかが原因。

    受信済のメールをフィルタリングしたい

    次の確認•設定をする。

    学習しても迷惑メールが正常メール、あるいは迷惑メールが正常メールと判断されてしまう

    学習データ数が少ないのが原因。
    より多くの学習データ数を指定することで解消される。
    SpamBlockerでは、迷惑メールだけを学習データに指定した場合、アドレス帳に登録されているメールアドレスを使用し受信済メールから合致するメールを探し、正常メールデータとする。この場合、同じようなメールだけが正常メールデータになり、学習効果があがらない可能性がある。モニタ画面で正常メールを手動で選択することで学習効果をあげることができる。

    誤って正常メールを迷惑メールに指定して学習してしまった

    モニタ画面で学習データを設定し直し、再学習すれば良い。

    ルールによるフィリタング速度が遅い

     IMAPにおいて、ルールの本文の項目を指定すると、フィルタルング速度が低下する。

    iCloudデータが同期されない

    iCloudを参照

    iCloudデータが壊れた

    iCloudを参照

    アプリが起動しなくなった

    数回試しても、アプリが起動しない場合は、iOSデバイスの電源を落とし、再び電源を入れてアプリの再起動を試みる。
    それでも起動しない場合は、アプリを削除して、再インストール。
    それでも起動しない場合は、iCloudのストレージ管理においてMailCatを削除して、再起動を試みる。

    動作が遅い

    アプケーションが適切に動作するのに必要なメモリがないか、ネットワーク環境に原因があると考えられる。
    メモリ不足を解消するためには、MailKitを一旦終了し、再度、起動する。
    動作速度が改善されない場合は、使用していないアプリを終了してみる。それでも改善されない場合は、 iOSデバイス(iPhone/iPad)の電源を一旦切り、再度電源を入れる。
    あるいは、改善されたネットワーク環境下での運用を試みる。

    サポート

    使用法のご質問、ご要望、あるいは不具合等のお問い合わせはメールにて承ります。

    問い合わせメール support_seimitsu@jcom.home.ne.jp

    著作権

    本プログラムを作成するにあたり以下のリソースを活用いたしました。