MailKitサポートページ
MailKitは、メール送信機能を除くメーラーとしての一般的な機能が備わっています。
IMAPのみサポートします。
受信メールのスパムフィルタリングとルールによるメールボックスへの分類•移動をサポートします。
iCloudを介し、無料アプリSpamBlockerで指定した学習データを利用してスパムフィルタを生成し、スパムフィルタリングを行います。
機械学習によるスパムフィルタリングの他に差出人、件名、本文、またそれらの複合条件をルールに指定することでスパムフィルタリングできます。
英語および日本語のメールを対象にします。
迷惑メール(スパムメール)対策は、PCの世界ではメーラーに組み込まれたスパムフィルタによる対策(クライアント側の対策)とメールサーバ側の対策がある。
サーバ側ではメールアドレスをブラックリストまたはホワイトリストと照合しスパムを駆除、またはなんらかの機械学習アルゴリズムにより生成されたスパムフィルタを使用してスパムを駆除する。
両方の方式を組み合わせてスパムを駆除する場合もある。
しかし、メールが迷惑であるか否かは個人の主観に依るので、サーバ側のスパム対策が各ユーザーの要求に100%応えることはない。
ユーザーの事情に応じたスパム対策をするのであれば、クライアント側でのスパム対策が不可欠になる。
これまではサーバ側のスパム対策を利用するだけで、iPhone単体ではスパム対策はできなかった。iPhone以外にPCを利用できる人はIMAPメールに限りPCメーラーのスパムフィルタを利用することができたが、運用上の不便さがつきまとっていた。
MailKitは学習型のスパムフィルタを搭載しており、PCメーラーと同等それ以上のスパム対策をiPhone単体で可能にする。
メッセージ一覧のプル・ダウンまたはナビゲーションバーの長押しで新規メッセージのダウンロード、スパムフィルタリングを行う。
未学習データがある場合は、学習を行い、スパムフィルタを更新する。
プル・ダウンによる |
|
|
メッセージ一覧の最後尾でのプル・アップにより既存メッセージのダウンロード、スパムフィルタリングを行う。 一度にダウンロードするメッセージ数は、設定できる。
利用可能なアカウントが複数ある場合は、メールボックス一覧のナビゲーションバーをタップ/スワイプすることで、アカウントを切り替えることができる。
“INBOX”、”迷惑メール”、”ゴミ箱”において編集ボタンをタップすると、ナビゲーションバー上に”マーク”,”削除”,”移動”ボタンが表示され、 メッセージの未読、削除、移動処理ができる。
下方向にスワイプすると次のメッセージが表示される。
上方向にスワイプすると前のメッセージが表示される。
スワイプダウン |
|
スワイプアップ |
Inbox、統合受信ボックスにおいてメール・セルを左から右にスワイプすると、セル内に背景が黒のボタンが表示される。 黒の背景ボタンをタップするとメールをブラックリストへ登録できる。
ブラックリストに追加したメールアドレスは、設定において編集可能。
メールメッセージ一覧のテーブル・セルを長押しすると未読と既読が切り替わる。
送信者メールアドレス、件名、メッセージ本文の新規ルールを追加するには、テーブルリストを
プル・ダウンする。
新規のテーブル・セルが追加されるので、セルをタップして内容を編集する。
4種類のルール(送信者メールアドレス、件名、メッセージ本文、複合ルール)をそれぞれ別の画面で管理する。
ルール閲覧時に画面間を移動するには、ナビゲーションバーをタップ/スワイプする。
による画面移動 |
⇒ |
|
ルール編集時に画面間を移動するのにナビゲーションバーを使用できないので、代わりに画面を左右にスワイプして移動する。
複合ルール一覧のテーブル・セルを長押しすると、複合ルールのレベルが1つ解除される。
複合ルールの内容を直接編集することはできないので、複合ルールを構成する個々の条件を編集するには、複合ルールのレベルを解除する必要がある。
複合ルール一覧のテーブルセルをタップすると、複合ルールが視覚化される。
視覚化された画面では編集はできない。複合ルールを編集するには、複合ルールのレベルを解除して編集する。
クィックビューリストは、Inbox(統合受信ボックス)から、ナビゲーションバーのタップ•スワイプでアクセスできるビューリストを意味する。
クィックビューに指定できるのは、システムメールボックスのみ。
クィックビュー属性は、メールボックス一覧で編集ボタンをタップして、メールボックス編集モードに入り指定する。
メールメッセージ一覧のナビゲーションバーをタップ/スワイプするとクィックビュー属性のあるメールボックス間でメールボックスが切替わる。
ナビゲーションバーの右スワイプは、タップと同じ動作をする。左スワイプは、直前のメールボックスに戻る。
|
⇒ |
|
監視モニタのオン・オフ、学習データ数の確認をする。
迷惑メールのルールの編集はここで行う。
スパムフィルタ・ルールフィルタのオン・オフ、迷惑メールの一括削除、アカウントの削除をする。
ユーザインファーフェースの設定、iCloudのオン・オフをする。
はじめてアプリを起動すると新規アカウント画面が表示される。
作成したいアカウントのメールアドレスとパスワードを入力すると、IMAPサーバに接続され、最新のメール32件がダウンロードされ、監視モニタ画面が表示される。
メールアドレスがログイン名でない場合は、アカウント詳細設定画面が表示されるので、ログイン名(ユーザー名)を入力して、再接続を試みる。
|
⇒ |
|
メールサーバの接続に失敗した場合は、接続ボタンが手動ボタンになる。手動ボタンをタップすると詳細設定画面が表示されるので、必要な情報を入力して再度接続を試みる。
ログイン名、パスワードが分からない場合はメールサーバを管理している組織、あるいは担当者に問い合わせ、接続に必要な情報、ホスト名、ログイン名(ユーザー名)、パスワードを入手する。
SSL設定、ポート番号は再設定する必要はない。
SSL接続をしない場合はSSL接続をオフにする。
それに併せてポート番号も変わるが、期待するポート番号でない場合は設定し直す。
MailKitに設定するアカウント情報はメールサーバに接続するために必要な情報であり、他のメーラーに設定するアカウント情報と同じになる。したがって、他のメーラーにおいて接続済みのアカウントをMailKitに設定する場合、同じログイン名(ユーザー名)とパスワードを設定すれば良いことになる。
ソフトバンクの場合は、メールアドレスがユーザー名なので、新規アカウント画面で、メールアドレスとパスワードを入力すればIMAPサーバに接続できる。
パスワードはiPhone Mail.appにおいてi.softbank.jpについて設定しているパスワードと同じになる。
iPhoneのアプリ設定を起動して、
メール/連絡先/カレンダー →アカウント → Softbank Email → 受信メールサーバ
の受信メールサーバで設定したパスワードを設定する。
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に上記で入手したユーザー名とパスワードを設定すればよい。
ユーザー名、またはパスワードが正しくないので、正しく入力されているかどうか確認後、再入力する必要がある。
ネットワーク(3G,Wi-Fi)の状況を確認する。
ネットワーク接続状況に難がある場合にはタイムアウトになる可能性がある。
ネットワーク接続状況が改善された状況で再接続を試みる。
一旦接続が完了し、特定のメールサーバ側の原因で"ネットワークエラー"が発生すると、次のようなアラートが発生する。
|
ここで、オフラインを選択した場合、オフラインから復帰するには、登録しているアカウントが1つの場合は、MailKitを終了し、再度起動する必要がある。
複数のアカウントが登録されている場合は、アカウント一覧を表示すると、当該アカウントにオフラインマークが付くので、テーブルセルを長押し(2秒間)すると、(当該メールサーバのネットワーク状況が改善されていれば)オンラインに復帰する。
|
iOSデバイスがiCloudにサイン・インしていることを確認する。
詳細設定で背景が青色のiCloudセルをタップする。
iCloud上に学習データがある場合は、設定に学習データ数が表示される。
統合受信ボックス(Inbox)において、プル・ダウンあるいはナビゲーションバーの長押しを行うと、機械学習が行われスパムフィルタが作成・更新される。
スパムフィルタリングをするためには、スパムフィルタを適用する必要がある。
アカウント設定でスパムフィルタを有効にすると受信ボックス内のメールを対象にスパムフィルタリングを実行する。
スパムフィルタのスイッチをオンにしない限りスパムフィルタリングが実行されない。
スパムフィルタリングをするか否かはアカウント毎に指定できる。
スパムフィルタの対象となるのは受信ボックスのみ。
分類先のメールボックスにルールを指定することで、メールを分類できる。
ルールは、差出人、件名、本文(ルールに本文を指定するとIMAP受信メールのフィルタリング速度が低下)、またそれらの複合条件において指定できる。
ルールを作成するためには、メールボックス一覧でナビゲーションバーの編集ボタンをタップする。
選択メニューからルールを選択すると、ルール編集モードになる。
ルール編集モードに入り分類先のメールボックスを選択すると、最初に差出人メールアドレス一覧が表示される。
ナビゲーションバーをタップ、もしくは左にスワイプする毎に件名、本文、複合条件一覧へと画面が変遷する。
ナビゲーションバーを右にスワイプすると直前の画面に戻る。
差出人メールアドレス、件名、本文のルールを追加する場合には、画面をプル・ダウンすると、空の条件がテーブル一覧に追加されるので、新規追加されたテーブルセルをタップして条件を編集する。
差出人メールアドレスの場合は、ナビゲーションバーの右端の+ボタンをタップすると、ナビゲーションバーにツールバーが表示され、既存の差出人メールアドレス一覧から選択が可能になる。
複合条件を指定する場合には、ナビゲーションバーの右端の編集ボタンをタップすると、複合条件編集モードになり、ナビゲーションバーにツールバーが表示され、既存の条件をAND/OR/NOTの演算子で結合し、複雑なルールを作成できる。
ルール一覧画面において、テーブルセルをスワイプすると削除ボタンが表示されるので、タップすればルールが削除される。
同様の操作で設定から迷惑メールルールを作成できる。
差出人、件名、本文で指定したルールをAND、OR結合したり、否定したりして複雑なルールを指定できる。
複合条件編集では、画面を左右にスワイプすることで移動し、差出人、件名、本文でルールを2つ以上選択して(NOTの場合は1つ以上)、AND/OR/NOTボタンをタップすると選択したルールがAND/OR/NOT結合されて、複合条件画面に移動する。
複合条件のセルをタップすると複合条件が視覚化されて表示される。
複合条件のテーブル・セルには次の記号が使用される。
論理演算子
条件の種類を示す記号
複合条件は無限にネスト可能だが、常識的には、認知可能という意味で3か4レベルまでが妥当。
例を2つ示す。
最初の例は、3レベルのネストを持つルールで、比較的単純。
2番目の例は、表記の揺れを吸収するためのもので、これも単純な例となる。
単純なルールで検索条件を表現できない場合は、複合条件を使用すると良い。
ルールによる分類は、スパムフィルタリングより優先して行われる。
ルールには、アカウント全体に有効なルールとアカウントだけに有効なルールがある。
アカウント全体に有効なルールは、統合アカウントのシステムメールボックス一覧のルール編集で指定するルールであり、アカウントだけに有効なルールは、各アカウントにおけるメールボックス一覧のルール編集で指定するルールになる。
システムメールボックス対するルールは、統合アカウントで指定した方が効率が良いことになる。
アカウント設定でルール適用の有無を指定できる。
メールボックス一覧においては次のことができる。
編集ボタンをタップすれば、メールボックス編集あるはルール編集モードに移行できる。
未割当のシステムメールボックスを割り当てることで、システムメールボックスにできる。
システムメールボックスにすることで、クイックビューリストに追加したり、統合アカウントでメッセージの移動先の対象にすることができる。
![]() |
iOSデバイス(iOS7.0以上)がiCloudにサイン・インしているのであれば、詳細設定でiCloudの利用を選択できる。
ルールデータまたは学習データを変更しても、iOSデバイスのホームボタンを押してアプリをバックグランド状態するか、メッセージ一覧でフィルタリングを開始しない限り、変更分はiCloudへアップロードされない。
iCloudデータ同期が非常に遅れることがある。
詳細設定の"iCloudストア再構築"をタップすると強制的に同期が行われる。
強制同期に数分かかることがあり、その間、学習データ、ルールデータが削除されている状態になる。
詳細設定の背景が青色のiCloudをタップすると、ローカルデータをiCloudに移行する際に
のいずれかの方法を選択できる。
上書きを選択するとiCloud上の既存のデータがが削除された後で、ローカルデータがiCloudへコピーされる。
マージを選択するとiCloud上の既存のデータとローカルデータの差分のみがiCloudへコピーされる。
スキップはデータ移行処理なしで、iCloudモードになる。
詳細設定の背景が赤色のiCloudをタップすると、iCloudデータをローカルデータへ移行できる。
何かの理由でiCloudデータが壊れ、自動復旧ができない場合は、次の手順でローカルデータからiCloudデータを復旧可能になる。
iOSデバイスがiCloudからサイン・アウトするとMailKitではiCloudを利用できなくなる。
iCloud利用を選択するとルールと学習データがiCloud上に保存され、MailCat、MailKitで相互に利用できるようになる。
入力したパスワードは、iOSデバイスとユーザが契約しているメールサーバに保存されているので、安全性は保証されているので、漏洩などの 心配はない。
ログイン名、パスワードが分からない場合はメールサーバを管理している組織、あるいは担当者に問い合わせ、接続に必要な情報、 ホスト名、ログイン名(ユーザー名)、パスワードを入手する。
次のいずれかが原因。
次の確認•設定をする。
学習データ数が少ないのが原因。
より多くの学習データ数を指定することで解消される。
SpamBlockerでは、迷惑メールだけを学習データに指定した場合、アドレス帳に登録されているメールアドレスを使用し受信済メールから合致するメールを探し、正常メールデータとする。この場合、同じようなメールだけが正常メールデータになり、学習効果があがらない可能性がある。モニタ画面で正常メールを手動で選択することで学習効果をあげることができる。
モニタ画面で学習データを設定し直し、再学習すれば良い。
IMAPにおいて、ルールの本文の項目を指定すると、フィルタルング速度が低下する。
iCloudを参照
iCloudを参照
数回試しても、アプリが起動しない場合は、iOSデバイスの電源を落とし、再び電源を入れてアプリの再起動を試みる。
それでも起動しない場合は、アプリを削除して、再インストール。
それでも起動しない場合は、iCloudのストレージ管理においてMailCatを削除して、再起動を試みる。
アプケーションが適切に動作するのに必要なメモリがないか、ネットワーク環境に原因があると考えられる。
メモリ不足を解消するためには、MailKitを一旦終了し、再度、起動する。
動作速度が改善されない場合は、使用していないアプリを終了してみる。それでも改善されない場合は、
iOSデバイス(iPhone/iPad)の電源を一旦切り、再度電源を入れる。
あるいは、改善されたネットワーク環境下での運用を試みる。
使用法のご質問、ご要望、あるいは不具合等のお問い合わせはメールにて承ります。
問い合わせメール support_seimitsu@jcom.home.ne.jp
本プログラムを作成するにあたり以下のリソースを活用いたしました。
Any rereleasing of this code is prohibited. Please attribute use of this code within your application Any Queries should be directed to hi@tmdvs.me | http://www.tmdvs.me Created by Tim on [Dec 30]. Copyright 2009 Tim Davies. All rights reserved.
Created by Devin Doty on 10/14/09October14. Copyright 2009 enormego. All rights reserved. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Copyright (c) 2011 Sam Vermette Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
base64.cpp and base64.h
Copyright (C) 2004-2008 René Nyffenegger
This source code is provided 'as-is', without any express or implied
warranty. In no event will the author be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this source code must not be misrepresented; you must not
claim that you wrote the original source code. If you use this source code
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original source code.
3. This notice may not be removed or altered from any source distribution.
René Nyffenegger rene.nyffenegger@adp-gmbh.ch
Created by Ian Baird on 10/28/08.
Copyright (c) 2008 Skorpiostech, Inc. All rights reserved.
Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation
files (the "Software"), to deal in the Software without
restriction, including without limitation the rights to use,
copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following
conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
Copyright (c) 2013 Ali Karagoz (http://alikaragoz.net/)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Author: Landon Fuller
Copyright (c) 2008-2009 Plausible Labs Cooperative, Inc. All rights reserved.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Some of icons in this software are designed by Icons8
(http://icons8.com).