sisimai 4.20.1 → 4.20.2

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of sisimai might be problematic. Click here for more details.

Files changed (82) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +12 -2
  3. data/Changes +11 -1
  4. data/README-JA.md +135 -202
  5. data/README.md +128 -192
  6. data/fig/sisimai-architecture.png +0 -0
  7. data/lib/sisimai.rb +5 -3
  8. data/lib/sisimai/arf.rb +2 -2
  9. data/lib/sisimai/ced/us/amazonses.rb +5 -5
  10. data/lib/sisimai/ced/us/sendgrid.rb +4 -4
  11. data/lib/sisimai/data.rb +1 -8
  12. data/lib/sisimai/data/json.rb +1 -1
  13. data/lib/sisimai/datetime.rb +1 -1
  14. data/lib/sisimai/mail/maildir.rb +3 -3
  15. data/lib/sisimai/mda.rb +2 -2
  16. data/lib/sisimai/message.rb +7 -3
  17. data/lib/sisimai/message/email.rb +8 -2
  18. data/lib/sisimai/mime.rb +2 -2
  19. data/lib/sisimai/msp/de/einsundeins.rb +2 -2
  20. data/lib/sisimai/msp/de/gmx.rb +2 -2
  21. data/lib/sisimai/msp/jp/biglobe.rb +2 -2
  22. data/lib/sisimai/msp/jp/ezweb.rb +2 -2
  23. data/lib/sisimai/msp/jp/kddi.rb +3 -3
  24. data/lib/sisimai/msp/ru/mailru.rb +3 -3
  25. data/lib/sisimai/msp/ru/yandex.rb +2 -2
  26. data/lib/sisimai/msp/uk/messagelabs.rb +2 -2
  27. data/lib/sisimai/msp/us/amazonses.rb +4 -5
  28. data/lib/sisimai/msp/us/amazonworkmail.rb +2 -2
  29. data/lib/sisimai/msp/us/aol.rb +2 -2
  30. data/lib/sisimai/msp/us/bigfoot.rb +3 -3
  31. data/lib/sisimai/msp/us/facebook.rb +2 -2
  32. data/lib/sisimai/msp/us/google.rb +2 -2
  33. data/lib/sisimai/msp/us/office365.rb +2 -3
  34. data/lib/sisimai/msp/us/outlook.rb +2 -2
  35. data/lib/sisimai/msp/us/receivingses.rb +2 -2
  36. data/lib/sisimai/msp/us/sendgrid.rb +2 -2
  37. data/lib/sisimai/msp/us/verizon.rb +3 -3
  38. data/lib/sisimai/msp/us/yahoo.rb +2 -2
  39. data/lib/sisimai/msp/us/zoho.rb +2 -2
  40. data/lib/sisimai/mta/activehunter.rb +2 -2
  41. data/lib/sisimai/mta/apachejames.rb +3 -3
  42. data/lib/sisimai/mta/courier.rb +3 -3
  43. data/lib/sisimai/mta/domino.rb +2 -2
  44. data/lib/sisimai/mta/exchange2003.rb +4 -4
  45. data/lib/sisimai/mta/exchange2007.rb +2 -2
  46. data/lib/sisimai/mta/exim.rb +8 -4
  47. data/lib/sisimai/mta/imailserver.rb +3 -3
  48. data/lib/sisimai/mta/interscanmss.rb +3 -3
  49. data/lib/sisimai/mta/mailfoundry.rb +2 -2
  50. data/lib/sisimai/mta/mailmarshalsmtp.rb +2 -2
  51. data/lib/sisimai/mta/mcafee.rb +2 -2
  52. data/lib/sisimai/mta/messagingserver.rb +3 -3
  53. data/lib/sisimai/mta/mfilter.rb +2 -2
  54. data/lib/sisimai/mta/mxlogic.rb +3 -3
  55. data/lib/sisimai/mta/notes.rb +3 -3
  56. data/lib/sisimai/mta/opensmtpd.rb +2 -2
  57. data/lib/sisimai/mta/postfix.rb +3 -3
  58. data/lib/sisimai/mta/qmail.rb +3 -3
  59. data/lib/sisimai/mta/sendmail.rb +2 -2
  60. data/lib/sisimai/mta/surfcontrol.rb +2 -2
  61. data/lib/sisimai/mta/userdefined.rb +3 -3
  62. data/lib/sisimai/mta/v5sendmail.rb +3 -3
  63. data/lib/sisimai/mta/x1.rb +2 -2
  64. data/lib/sisimai/mta/x2.rb +2 -2
  65. data/lib/sisimai/mta/x3.rb +2 -2
  66. data/lib/sisimai/mta/x4.rb +3 -3
  67. data/lib/sisimai/mta/x5.rb +3 -3
  68. data/lib/sisimai/reason/rejected.rb +1 -0
  69. data/lib/sisimai/reason/securityerror.rb +7 -2
  70. data/lib/sisimai/reason/toomanyconn.rb +4 -0
  71. data/lib/sisimai/rfc3464.rb +3 -3
  72. data/lib/sisimai/rfc3834.rb +2 -2
  73. data/lib/sisimai/rfc5322.rb +4 -4
  74. data/lib/sisimai/rhost.rb +0 -1
  75. data/lib/sisimai/rhost/exchangeonline.rb +2 -2
  76. data/lib/sisimai/smtp.rb +4 -4
  77. data/lib/sisimai/smtp/error.rb +7 -12
  78. data/lib/sisimai/smtp/reply.rb +1 -1
  79. data/lib/sisimai/string.rb +7 -7
  80. data/lib/sisimai/version.rb +1 -1
  81. data/set-of-emails/maildir/bsd/rfc3834-06.eml +56 -0
  82. metadata +5 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 70437a1cc3c7c27e7145fe5596271abee0a41cb2
4
- data.tar.gz: 41e3102528283f6c5e8e88d1f225120525cb72ed
3
+ metadata.gz: 1ae65a92e8ce97f94a3a2e9d49afac7daf4dd616
4
+ data.tar.gz: ac6fb8541ef2fcdfb931fb144ff6fcb6eab19774
5
5
  SHA512:
6
- metadata.gz: 6704f85c5e8191df829fe1d3559195febfa3c02395cf225ae359d3ade99fb6f930498e360c4d86c620b72ff9f858b669d3fc4d16345c8ac82fe1859750b1c891
7
- data.tar.gz: 317e9d5c37602a583d2d05d87d355d93cdcd12f05bd949e105543705ee29354694b1146c61a871799525f70c90a208e81268f1d7570e6889d0fa205592f4c0b7
6
+ metadata.gz: 2ccd7a6266707802d83a0ad80c9e76e27660a93210c20620a0b9f641b9d5d0e2bc72560f1934b89c641e0ba9b1ab081eaa101d8289966a46db9da100d63b692f
7
+ data.tar.gz: bec6463ca315a9eae480c1302f1d7227c4dc8c389e911a65f2634c4cf1f7de5efd6ae8df94557d192714fb60eb9c303f5e7ece6519d7b8e42a7cfc981eb81e39
data/.rubocop.yml CHANGED
@@ -73,8 +73,12 @@ Style/EmptyLineBetweenDefs:
73
73
  - 'lib/sisimai/msp.rb'
74
74
  - 'lib/sisimai/mta/*'
75
75
  - 'lib/sisimai/msp/*/*'
76
- - 'lib/sisimai/rfc3463.rb'
76
+ - 'lib/sisimai/ced/*.rb'
77
+ - 'lib/sisimai/reason/*.rb'
78
+ - 'lib/sisimai/rfc3464.rb'
77
79
  - 'lib/sisimai/rfc3834.rb'
80
+ - 'lib/sisimai/order.rb'
81
+ - 'lib/sisimai/order/*.rb'
78
82
 
79
83
  # Cop supports --auto-correct.
80
84
  # Configuration parameters: EnforcedStyle, SupportedStyles.
@@ -157,6 +161,8 @@ Style/SingleLineMethods:
157
161
  - 'lib/sisimai/rfc3464.rb'
158
162
  - 'lib/sisimai/rfc3834.rb'
159
163
  - 'lib/sisimai/reason/*.rb'
164
+ - 'lib/sisimai/order.rb'
165
+ - 'lib/sisimai/order/*.rb'
160
166
 
161
167
  # Cop supports --auto-correct.
162
168
  Style/SpaceAfterComma:
@@ -170,7 +176,7 @@ Style/TrailingBlankLines:
170
176
 
171
177
  # Cop supports --auto-correct.
172
178
  # Configuration parameters: EnforcedStyleForMultiline, SupportedStyles.
173
- Style/TrailingComma:
179
+ Style/TrailingCommaInLiteral:
174
180
  Enabled: false
175
181
  EnforcedStyleForMultiline: comma
176
182
 
@@ -183,3 +189,7 @@ Style/UnneededPercentQ:
183
189
  Exclude:
184
190
  - 'spec/*'
185
191
 
192
+ Style/ZeroLengthPredicate:
193
+ Enabled: false
194
+
195
+
data/Changes CHANGED
@@ -1,4 +1,14 @@
1
- Revision history for Ruby version of Sisimai
1
+ Revision history for the Ruby version of Sisimai
2
+
3
+ 4.20.2 Sat, 11 Mar 2017 16:32:48 +0900 (JST)
4
+ - Pull-Request #63 Add some error message patterns from Amazon SES SMTP
5
+ endpoint.
6
+ - Fix regular expression in Sisimai::Message::Email.headers for resolving
7
+ a bug reported from @rdeavila at issue #65.
8
+ - Issue #67, Fix code in Sisimai.make method for reading bounce email data
9
+ from STDIN. Thanks to @marine_dayo.
10
+ - Callback feature improvement: import pull-request from sisimai/p5-Sisimai
11
+ https://github.com/sisimai/p5-Sisimai/pull/210.
2
12
 
3
13
  4.20.1 Sat, 31 Dec 2016 20:10:22 +0900 (JST)
4
14
  - Fix the Java version of Gem file.
data/README-JA.md CHANGED
@@ -1,37 +1,70 @@
1
+ ![](http://libsisimai.org/static/images/logo/sisimai-x01.png)
2
+
1
3
  [![License](https://img.shields.io/badge/license-BSD%202--Clause-orange.svg)](https://github.com/sisimai/rb-Sisimai/blob/master/LICENSE)
2
4
  [![Coverage Status](https://img.shields.io/coveralls/sisimai/rb-Sisimai.svg)](https://coveralls.io/r/sisimai/rb-Sisimai)
3
5
  [![Build Status](https://travis-ci.org/sisimai/rb-Sisimai.svg?branch=master)](https://travis-ci.org/sisimai/rb-Sisimai)
4
6
  [![Codacy Badge](https://api.codacy.com/project/badge/grade/38340177e6284a65be69c0c7c3dc2b58)](https://www.codacy.com/app/azumakuniyuki/rb-Sisimai)
5
- [![Ruby](https://img.shields.io/badge/ruby-v2.1.0--v2.3.0-red.svg)](https://www.ruby-lang.org/)
7
+ [![Ruby](https://img.shields.io/badge/ruby-v2.1.0--v2.4.0-red.svg)](https://www.ruby-lang.org/)
6
8
  [![Gem Version](https://badge.fury.io/rb/sisimai.svg)](https://badge.fury.io/rb/sisimai)
7
9
 
8
- ![](http://41.media.tumblr.com/45c8d33bea2f92da707f4bbe66251d6b/tumblr_nuf7bgeyH51uz9e9oo1_1280.png)
9
-
10
- シシマイ?
11
- =========
10
+ - [**README(English)**](README.md)
11
+ - [シシマイ? | What is Sisimai](#what-is-sisimai)
12
+ - [主な特徴的機能 | Key features](#key-features)
13
+ - [コマンドラインでのデモ | Command line demo](#command-line-demo)
14
+ - [シシマイを使う準備 | Setting Up Sisimai](#setting-up-sisimai)
15
+ - [動作環境 | System requirements](#system-requirements)
16
+ - [インストール | Install](#install)
17
+ - [RubyGemsから | From RubyGems](#from-rubygems)
18
+ - [GitHubから | From GitHub](#from-github)
19
+ - [使い方 | Usage](#usage)
20
+ - [基本的な使い方 | Basic usage](#basic-usage)
21
+ - [解析結果をJSONで得る | Convert to JSON](#convert-to-json)
22
+ - [バウンスオブジェクトを読む | Read bounce object](#read-bounce-object)
23
+ - [コールバック機能 | Callback feature](#callback-feature)
24
+ - [ワンライナー | One-Liner](#one-liner)
25
+ - [出力例 | Output example](#output-example)
26
+ - [シシマイの仕様 | Sisimai Specification](#sisimai-specification)
27
+ - [Ruby版とPerl版の違い | Differences between Ruby version and Perl version](#differences-between-ruby-version-and-perl-version)
28
+ - [その他の仕様詳細 | Other specification of Sisimai](#other-specification-of-sisimai)
29
+ - [Contributing](#contributing)
30
+ - [バグ報告 | Bug report](#bug-report)
31
+ - [解析できないメール | Emails could not be parsed](#emails-could-not-be-parsed)
32
+ - [その他の情報 | Other Information](#other-information)
33
+ - [関連サイト | Related sites](#related-sites)
34
+ - [参考情報| See also](#see-also)
35
+ - [作者 | Author](#author)
36
+ - [著作権 | Copyright](#copyright)
37
+ - [ライセンス | License](#license)
38
+
39
+ What is Sisimai
40
+ ===============================================================================
12
41
  Sisimai(シシマイ)はRFC5322準拠のエラーメールを解析し、解析結果をデータ構造に
13
42
  変換するインターフェイスを提供するRubyライブラリです。
14
43
  [github.com/sisimai/p5-Sisimai](https://github.com/sisimai/p5-Sisimai/)
15
44
  で公開しているPerl版シシマイから移植しました。
16
45
 
17
- 主な特徴的機能
18
- --------------
46
+ ![](http://libsisimai.org/static/images/figure/sisimai-overview-1.png)
47
+
48
+ Key features
49
+ -------------------------------------------------------------------------------
19
50
  * __エラーメールをデータ構造に変換__
20
- * Perlのデータ形式とJSONに対応
51
+ * Rubyのデータ形式(HashとArray)とJSON(String)に対応
21
52
  * __インストールも使用も簡単__
22
53
  * gem install
23
54
  * git clone & make
24
55
  * __高い解析精度__
25
- * 解析精度はbounceHammerの二倍
56
+ * 解析精度はbounceHammerの2倍
26
57
  * 27種類のMTAに対応
27
58
  * 21種類の著名なMSPに対応
59
+ * 2種類の著名なメール配信クラウドに対応(JSON)
28
60
  * Feedback Loopにも対応
29
61
  * 27種類のエラー理由を検出
30
62
 
31
- シシマイを使う準備
32
- ==================
33
- 動作環境
34
- --------
63
+ Setting Up Sisimai
64
+ ===============================================================================
65
+
66
+ System requirements
67
+ -------------------------------------------------------------------------------
35
68
  Sisimaiの動作環境についての詳細は
36
69
  [Sisimai | シシマイを使ってみる](http://libsisimai.org/ja/start)をご覧ください。
37
70
 
@@ -41,16 +74,16 @@ Sisimaiの動作環境についての詳細は
41
74
  * Also works on [JRuby 9.0.4.0 or later](http://jruby.org)
42
75
  * [__JrJackson | A mostly native JRuby wrapper for the java jackson json processor jar__](https://rubygems.org/gems/jrjackson)
43
76
 
44
- インストール
45
- ------------
77
+ Install
78
+ -------------------------------------------------------------------------------
46
79
  ### From RubyGems.org
47
80
 
48
81
  ```shell
49
- % sudo gem install sisimai
50
- Fetching: sisimai-4.16.0.gem (100%)
51
- Successfully installed sisimai-4.16.0
52
- Parsing documentation for sisimai-4.16.0
53
- Installing ri documentation for sisimai-4.16.0
82
+ $ sudo gem install sisimai
83
+ Fetching: sisimai-4.20.2.gem (100%)
84
+ Successfully installed sisimai-4.20.2
85
+ Parsing documentation for sisimai-4.20.2
86
+ Installing ri documentation for sisimai-4.20.2
54
87
  Done installing documentation for sisimai after 6 seconds
55
88
  1 gem installed
56
89
  ```
@@ -58,10 +91,10 @@ Done installing documentation for sisimai after 6 seconds
58
91
  ### From GitHub
59
92
 
60
93
  ```shell
61
- % cd /usr/local/src
62
- % git clone https://github.com/sisimai/rb-Sisimai.git
63
- % cd ./rb-Sisimai
64
- % sudo make depend install-from-local
94
+ $ cd /usr/local/src
95
+ $ git clone https://github.com/sisimai/rb-Sisimai.git
96
+ $ cd ./rb-Sisimai
97
+ $ sudo make depend install-from-local
65
98
  gem install bundle rake rspec coveralls
66
99
  Successfully installed bundle-0.0.1
67
100
  Parsing documentation for bundle-0.0.1
@@ -77,14 +110,15 @@ Parsing documentation for coveralls-0.8.10
77
110
  Done installing documentation for coveralls after 0 seconds
78
111
  4 gems installed
79
112
  bundle exec rake install
80
- sisimai 4.14.2 built to pkg/sisimai-4.16.0.gem.
81
- sisimai (4.14.2) installed.
113
+ sisimai 4.20.2 built to pkg/sisimai-4.20.2.gem.
114
+ sisimai (4.20.2) installed.
82
115
  ```
83
116
 
84
- 使い方
117
+ Usage
85
118
  ======
86
- 基本的な使い方
87
- --------------
119
+
120
+ Basic usage
121
+ -------------------------------------------------------------------------------
88
122
  下記のようにSisimaiの`make()`メソッドをmboxかMaildirのPATHを引数にして実行すると
89
123
  解析結果が配列で返ってきます。
90
124
 
@@ -115,7 +149,14 @@ if v.is_a? Array
115
149
  puts e.dump('json') # JSON formatted bounce data
116
150
  end
117
151
  end
152
+ ```
118
153
 
154
+ Convert to JSON
155
+ -------------------------------------------------------------------------------
156
+ 下記のようにSisimaiの`dump()`メソッドをmboxかMaildirのPATHを引数にして実行すると
157
+ 解析結果が文字列(JSON)で返ってきます。
158
+
159
+ ```ruby
119
160
  # Get JSON string from parsed mailbox or Maildir/
120
161
  puts Sisimai.dump('/path/to/mbox') # or path to Maildir/
121
162
 
@@ -123,8 +164,8 @@ puts Sisimai.dump('/path/to/mbox') # or path to Maildir/
123
164
  puts Sisimai.dump('/path/to/mbox', delivered: true)
124
165
  ```
125
166
 
126
- バウンスオブジェクト(JSON)を読む
127
- --------------------------------
167
+ Read bounce object
168
+ -------------------------------------------------------------------------------
128
169
  メール配信クラウドからAPIで取得したバウンスオブジェクト(JSON)を読んで解析する
129
170
  場合は、次のようなコードを書いてください。この機能はSisimai v4.20.0で実装され
130
171
  ました。
@@ -145,27 +186,29 @@ end
145
186
  ```
146
187
  現時点ではAmazon SESとSendGridのみをサポートしています。
147
188
 
148
-
149
- コールバック機能
150
- ----------------
151
- Sisimai 4.19.0から、`Sisimai.make()`と`Sisimai.dump()`にLamda(Procオブジェクト)
152
- を引数`hook`に指定できるようになりました。`hook`に指定したコードによって処理さ
153
- れた結果は`Sisimai::Data.catch`メソッドで得ることができます。
189
+ Callback feature
190
+ -------------------------------------------------------------------------------
191
+ Sisimai 4.19.0から`Sisimai.make()`と`Sisimai.dump()`にLamda(Procオブジェクト)
192
+ を引数`hook`に指定できるコールバック機能が実装されました。
193
+ `hook`に指定したコードによって処理された結果は`Sisimai::Data.catch`
194
+ メソッドで得ることができます。
154
195
 
155
196
  ```ruby
156
197
  #! /usr/bin/env ruby
157
198
  require 'sisimai'
158
199
  callbackto = lambda do |v|
159
- r = { 'x-mailer' => '' }
200
+ r = { 'x-mailer' => '', 'queue-id' => '' }
160
201
 
161
- if cv = v['message'].match(/^X-Mailer:\s*(.+)$/)
162
- r['x-mailer'] = cv[1]
202
+ if cv = v['message'].match(/^X-Postfix-Queue-ID:\s*(.+)$/)
203
+ r['queue-id'] = cv[1]
163
204
  end
205
+ r['x-mailer'] = v['headers']['x-mailer'] || ''
164
206
  return r
165
207
  end
166
208
 
167
- data = Sisimai.make('/path/to/mbox', hook: callbackto)
168
- json = Sisimai.dump('/path/to/mbox', hook: callbackto)
209
+ list = ['X-Mailer']
210
+ data = Sisimai.make('/path/to/mbox', hook: callbackto, field: list)
211
+ json = Sisimai.dump('/path/to/mbox', hook: callbackto, field: list)
169
212
 
170
213
  puts data[0].catch['x-mailer'] # Apple Mail (2.1283)
171
214
  ```
@@ -175,26 +218,28 @@ puts data[0].catch['x-mailer'] # Apple Mail (2.1283)
175
218
  をご覧ください。
176
219
 
177
220
 
178
- ワンライナーで
179
- --------------
221
+ One-Liner
222
+ -------------------------------------------------------------------------------
180
223
 
181
224
  ```shell
182
- % ruby -rsisimai -e 'puts Sisimai.dump($*.shift)' /path/to/mbox
225
+ $ ruby -rsisimai -e 'puts Sisimai.dump($*.shift)' /path/to/mbox
183
226
  ```
184
227
 
185
- 解析結果の例(JSON)
186
- ------------------
228
+ Output example
229
+ -------------------------------------------------------------------------------
230
+ ![](http://libsisimai.org/static/images/demo/sisimai-dump-02.gif)
231
+
187
232
  ```json
188
233
  [{"recipient": "kijitora@example.jp", "addresser": "shironeko@1jo.example.org", "feedbacktype": "", "action": "failed", "subject": "Nyaaaaan", "smtpcommand": "DATA", "diagnosticcode": "550 Unknown user kijitora@example.jp", "listid": "", "destination": "example.jp", "smtpagent": "Courier", "lhost": "1jo.example.org", "deliverystatus": "5.0.0", "timestamp": 1291954879, "messageid": "201012100421.oBA4LJFU042012@1jo.example.org", "diagnostictype": "SMTP", "timezoneoffset": "+0900", "reason": "filtered", "token": "ce999a4c869e3f5e4d8a77b2e310b23960fb32ab", "alias": "", "senderdomain": "1jo.example.org", "rhost": "mfsmax.example.jp"}, {"diagnostictype": "SMTP", "timezoneoffset": "+0900", "reason": "userunknown", "timestamp": 1381900535, "messageid": "E1C50F1B-1C83-4820-BC36-AC6FBFBE8568@example.org", "token": "9fe754876e9133aae5d20f0fd8dd7f05b4e9d9f0", "alias": "", "senderdomain": "example.org", "rhost": "mx.bouncehammer.jp", "action": "failed", "addresser": "kijitora@example.org", "recipient": "userunknown@bouncehammer.jp", "feedbacktype": "", "smtpcommand": "DATA", "subject": "バウンスメールのテスト(日本語)", "destination": "bouncehammer.jp", "listid": "", "diagnosticcode": "550 5.1.1 <userunknown@bouncehammer.jp>... User Unknown", "deliverystatus": "5.1.1", "lhost": "p0000-ipbfpfx00kyoto.kyoto.example.co.jp", "smtpagent": "Sendmail"}]
189
234
  ```
190
235
 
191
- シシマイの仕様
192
- ==============
236
+ Sisimai Specification
237
+ ===============================================================================
193
238
 
194
- Perl版Sisimaiとの違い
195
- ---------------------
239
+ Differences between Ruby version and Perl version
240
+ -------------------------------------------------------------------------------
196
241
  公開中のPerl版Sisimai(p5-Sisimai)とRuby版Sisimai(rb-Sisimai)は下記のような違いが
197
- あります。bounceHammer version 2.7.13p3とSisimai(シシマイ)の違いについては
242
+ あります。bounceHammer 2.7.13p3とSisimai(シシマイ)の違いについては
198
243
  [Sisimai | 違いの一覧](http://libsisimai.org/ja/diff)をご覧ください。
199
244
 
200
245
  | 機能 | Ruby version | Perl version |
@@ -212,153 +257,41 @@ Perl版Sisimaiとの違い
212
257
 
213
258
  1. [./ANALYTICAL-PRECISION](https://github.com/sisimai/rb-Sisimai/blob/master/ANALYTICAL-PRECISION)を参照
214
259
 
215
- MTA/MSPモジュール一覧
216
- ---------------------
217
- 下記はSisimaiに含まれてるMTA/MSP(メールサービスプロバイダ)モジュールの一覧です。
218
- より詳しい情報は[Sisimai | 解析エンジン](http://libsisimai.org/ja/engine)
219
- ご覧ください。
220
-
221
- | Module Name(Sisimai::) | Description |
222
- |--------------------------|---------------------------------------------------|
223
- | MTA::Activehunter | TransWARE Active!hunter |
224
- | MTA::ApacheJames | Java Apache Mail Enterprise Server |
225
- | MTA::Courier | Courier MTA |
226
- | MTA::Domino | IBM Domino Server |
227
- | MTA::Exchange2003 | Microsoft Exchange Server 2003 |
228
- | MTA::Exchange2007 | Microsoft Exchange Server 2007 (> v4.18.0) |
229
- | MTA::Exim | Exim |
230
- | MTA::IMailServer | IPSWITCH IMail Server |
231
- | MTA::InterScanMSS | Trend Micro InterScan Messaging Security Suite |
232
- | MTA::MXLogic | McAfee SaaS |
233
- | MTA::MailFoundry | MailFoundry |
234
- | MTA::MailMarshalSMTP | Trustwave Secure Email Gateway |
235
- | MTA::McAfee | McAfee Email Appliance |
236
- | MTA::MessagingServer | Oracle Communications Messaging Server |
237
- | MTA::MFILTER | Digital Arts m-FILTER |
238
- | MTA::Notes | Lotus Notes |
239
- | MTA::OpenSMTPD | OpenSMTPD |
240
- | MTA::Postfix | Postfix |
241
- | MTA::Qmail | qmail |
242
- | MTA::Sendmail | V8Sendmail: /usr/sbin/sendmail |
243
- | MTA::SurfControl | WebSense SurfControl |
244
- | MTA::V5sendmail | Sendmail version 5 |
245
- | MTA::X1 | Unknown MTA #1 |
246
- | MTA::X2 | Unknown MTA #2 |
247
- | MTA::X3 | Unknown MTA #3 |
248
- | MTA::X4 | Unknown MTA #4 qmail clones |
249
- | MTA::X5 | Unknown MTA #5 |
250
- | MSP::DE::EinsUndEins | 1&1: http://www.1and1.de |
251
- | MSP::DE::GMX | GMX: http://www.gmx.net |
252
- | MSP::JP::Biglobe | BIGLOBE: http://www.biglobe.ne.jp |
253
- | MSP::JP::EZweb | au EZweb: http://www.au.kddi.com/mobile/ |
254
- | MSP::JP::KDDI | au by KDDI: http://www.au.kddi.com |
255
- | MSP::RU::MailRu | @mail.ru: https://mail.ru |
256
- | MSP::RU::Yandex | Yandex.Mail: http://www.yandex.ru |
257
- | MSP::UK::MessageLabs | Symantec.cloud http://www.messagelabs.com |
258
- | MSP::US::AmazonSES | AmazonSES(Sending): http://aws.amazon.com/ses/ |
259
- | MSP::US::AmazonWorkMail | Amazon WorkMail: https://aws.amazon.com/workmail/ |
260
- | MSP::US::Aol | Aol Mail: http://www.aol.com |
261
- | MSP::US::Bigfoot | Bigfoot: http://www.bigfoot.com |
262
- | MSP::US::Facebook | Facebook: https://www.facebook.com |
263
- | MSP::US::Google | Google Gmail: https://mail.google.com |
264
- | MSP::US::Office365 | Microsoft Office 365: http://office.microsoft.com/|
265
- | MSP::US::Outlook | Microsoft Outlook.com: https://www.outlook.com/ |
266
- | MSP::US::ReceivingSES | AmazonSES(Receiving): http://aws.amazon.com/ses/ |
267
- | MSP::US::SendGrid | SendGrid: http://sendgrid.com/ |
268
- | MSP::US::Verizon | Verizon Wireless: http://www.verizonwireless.com |
269
- | MSP::US::Yahoo | Yahoo! MAIL: https://www.yahoo.com |
270
- | MSP::US::Zoho | Zoho Mail: https://www.zoho.com |
271
- | ARF | Abuse Feedback Reporting Format |
272
- | RFC3464 | Fallback Module for MTAs |
273
- | RFC3834 | Detector for auto replied message |
274
-
275
- バウンス理由の一覧
276
- ------------------
277
- Sisimaiは下記のエラー27種を検出します。バウンス理由についてのより詳細な情報は
278
- [Sisimai | バウンス理由の一覧](http://libsisimai.org/ja/reason)をご覧ください。
279
-
280
- | バウンス理由 | 理由の説明 | 実装バージョン |
281
- |----------------|--------------------------------------------|----------------|
282
- | Blocked | IPアドレスやホスト名による拒否 | |
283
- | ContentError | 不正な形式のヘッダまたはメール | |
284
- | Delivered[1] | 正常に配信された | v4.16.0 |
285
- | ExceedLimit | メールサイズの超過 | |
286
- | Expired | 配送時間切れ | |
287
- | Feedback | 元メールへの苦情によるバウンス(FBL形式の) | |
288
- | Filtered | DATAコマンド以降で拒否された | |
289
- | HasMoved | 宛先メールアドレスは移動した | |
290
- | HostUnknown | 宛先ホスト名が存在しない | |
291
- | MailboxFull | メールボックスが一杯 | |
292
- | MailerError | メールプログラムのエラー | |
293
- | MesgTooBig | メールが大き過ぎる | |
294
- | NetworkError | DNS等ネットワーク関係のエラー | |
295
- | NotAccept | 宛先ホストはメールを受けとらない | |
296
- | OnHold | エラー理由の特定は保留 | |
297
- | Rejected | エンベロープFromで拒否された | |
298
- | NoRelaying | リレーの拒否 | |
299
- | SecurityError | ウィルスの検出または認証失敗 | |
300
- | SpamDetected | メールはスパムとして判定された | |
301
- | Suspend | 宛先アカウントは一時的に停止中 | |
302
- | SyntaxError | SMTPの文法エラー | v4.17.0 |
303
- | SystemError | 宛先サーバでのOSレベルのエラー | |
304
- | SystemFull | 宛先サーバのディスクが一杯 | |
305
- | TooManyConn | 接続制限数を超過した | |
306
- | UserUnknown | 宛先メールアドレスは存在しない | |
307
- | Undefined | バウンスした理由は特定出来ず | |
308
- | Vacation | 自動応答メッセージ | v4.1.28 |
309
-
310
- 1. このバウンス理由は標準では解析結果に含まれません
311
-
312
-
313
- 解析後のデータ構造
314
- ------------------
315
- 下記の表は解析後のバウンスメールの構造(`Sisimai::Data`)です。データ構造のより詳細な情報は
316
- [Sisimai | Sisimai::Dataのデータ構造](http://libsisimai.org/ja/data)をご覧ください。
317
-
318
- | アクセサ名 | 値の説明 |
319
- |----------------|-------------------------------------------------------------|
320
- | action | Action:ヘッダの値 |
321
- | addresser | 送信者のアドレス |
322
- | alias | 受信者アドレスのエイリアス |
323
- | catch | 引数に指定したフックメソッドが返すデータ |
324
- | destination | "recipient"のドメイン部分 |
325
- | deliverystatus | 配信状態(DSN)の値(例: 5.1.1, 4.4.7) |
326
- | diagnosticcode | エラーメッセージ |
327
- | diagnostictype | エラーメッセージの種別 |
328
- | feedbacktype | Feedback-Typeのフィールド |
329
- | lhost | 送信側MTAのホスト名 |
330
- | listid | 本メールのList-Idヘッダの値 |
331
- | messageid | 元メールのMessage-Idヘッダの値 |
332
- | reason | 検出したバウンスした理由 |
333
- | recipient | バウンスした受信者のアドレス |
334
- | replycode | SMTP応答コード(例: 550, 421) |
335
- | rhost | 受信側MTAのホスト名 |
336
- | senderdomain | "addresser"のドメイン部分 |
337
- | softbounce | ソフトバウンスであるかどうか(0=hard,1=soft,-1=不明) |
338
- | smtpagent | 解析に使用したMTA/MSPのモジュール名(Sisimai::MTA::,MSP::) |
339
- | smtpcommand | セッション中最後のSMTPコマンド |
340
- | subject | 元メールのSubjectヘッダの値(UTF-8) |
341
- | timestamp | バウンスした日時(UNIXマシンタイム) |
342
- | timezoneoffset | タイムゾーンの時差(例:+0900) |
343
- | token | 送信者と受信者・時刻から作られるハッシュ値 |
344
-
345
- 解析出来ないメール
346
- ------------------
347
- 解析出来ないバウンスメールは`set-of-emails/to-be-debugged-because/sisimai-cannot-parse-yet`
348
- ディレクトリにはいっています。もしもSisimaiで解析出来ないメールを見つけたら、
349
- このディレクトリに追加してPull-Requestを送ってください。
350
-
351
- その他の情報
352
- ============
353
- 関連サイト
354
- ----------
260
+ Other spec of Sisimai
261
+ -------------------------------------------------------------------------------
262
+ - [**解析モジュールの一覧**](http://libsisimai.org/ja/engine)
263
+ - [**バウンス理由の一覧**](http://libsisimai.org/ja/reason)
264
+ - [**Sisimai::Dataのデータ構造**](http://libsisimai.org/ja/data)
265
+
266
+ Contributing
267
+ ===============================================================================
268
+
269
+ Bug report
270
+ -------------------------------------------------------------------------------
271
+ もしもSisimaiにバグを発見した場合は[Issues](https://github.com/sisimai/rb-Sisimai/issues)
272
+ にて連絡をいただけると助かります。
273
+
274
+ Emails could not be parsed
275
+ -------------------------------------------------------------------------------
276
+ Sisimaiで解析できないバウンスメールは
277
+ [set-of-emails/to-be-debugged-because/sisimai-cannot-parse-yet](https://github.com/sisimai/set-of-emails/tree/master/to-be-debugged-because/sisimai-cannot-parse-yet)リポジトリに追加してPull-Requestを送ってください。
278
+
279
+ Other Information
280
+ ===============================================================================
281
+
282
+ Related sites
283
+ -------------------------------------------------------------------------------
355
284
  * __@libsisimai__ | [Sisimai on Twitter (@libsisimai)](https://twitter.com/libsisimai)
356
- * __libsisimai.org__ | [Sisimai | The successor to bounceHammer, Library to parse bounce mails](http://libsisimai.org/)
285
+ * __libSISIMAI.ORG__ | [Sisimai | The successor to bounceHammer, Library to parse bounce mails](http://libsisimai.org/)
286
+ * __Sisimai Blog__ | [blog.libsisimai.org](http://blog.libsisimai.org/)
287
+ * __Facebook Page__ | [facebook.com/libsisimai](https://www.facebook.com/libsisimai/)
357
288
  * __GitHub__ | [github.com/sisimai/rb-Sisimai](https://github.com/sisimai/rb-Sisimai)
289
+ * __RubyGems.org__ | [rubygems.org/gems/sisimai](https://rubygems.org/gems/sisimai)
358
290
  * __Perl verson__ | [Perl version of Sisimai](https://github.com/sisimai/p5-Sisimai)
291
+ * __Fixtures__ | [set-of-emails - Sample emails for "make test"](https://github.com/sisimai/set-of-emails)
359
292
 
360
- 参考情報
361
- --------
293
+ See also
294
+ -------------------------------------------------------------------------------
362
295
  * [README.md - README.md in English](https://github.com/sisimai/rb-Sisimai/blob/master/README.md)
363
296
  * [RFC3463 - Enhanced Mail System Status Codes](https://tools.ietf.org/html/rfc3463)
364
297
  * [RFC3464 - An Extensible Message Format for Delivery Status Notifications](https://tools.ietf.org/html/rfc3464)
@@ -366,15 +299,15 @@ Sisimaiは下記のエラー27種を検出します。バウンス理由につ
366
299
  * [RFC5321 - Simple Mail Transfer Protocol](https://tools.ietf.org/html/rfc5321)
367
300
  * [RFC5322 - Internet Message Format](https://tools.ietf.org/html/rfc5322)
368
301
 
369
- 作者
370
- ----
302
+ Author
303
+ ===============================================================================
371
304
  [@azumakuniyuki](https://twitter.com/azumakuniyuki)
372
305
 
373
- 著作権
374
- ------
375
- Copyright (C) 2015-2016 azumakuniyuki, All Rights Reserved.
306
+ Copyright
307
+ ===============================================================================
308
+ Copyright (C) 2015-2017 azumakuniyuki, All Rights Reserved.
376
309
 
377
- ライセンス
378
- ----------
310
+ License
311
+ ===============================================================================
379
312
  This software is distributed under The BSD 2-Clause License.
380
313