email-bounce-parser 1.0.20 → 1.0.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/lib/parser.js +16 -13
  2. package/package.json +1 -1
package/lib/parser.js CHANGED
@@ -35,11 +35,13 @@ var ERROR_CODES_TYPES = {
35
35
  "550 5.1.1" : "no_such_recipient",
36
36
  "550 5.2.1" : "recipient_disabled_or_recipient_rate_limited",
37
37
  "550 5.7.1" : "spam_content",
38
+ "550 5.7.26" : "authentication_failure",
38
39
  "551" : "user_not_local",
39
40
  "552" : "action_aborted_exceeded_storage_allocation",
40
41
  "552 5.2.2" : "mailbox_over_quota",
41
42
  "552 5.2.3" : "message_size_limit",
42
43
  "553" : "action_not_taken_mailbox_name_not_allowed",
44
+ "553 5.1.2" : "no_such_recipient",
43
45
  "554" : "transaction_failed",
44
46
  "554 5.7.1" : "spam_content",
45
47
  "555" : "parameters_not_recognized",
@@ -78,19 +80,20 @@ var REGEXES = {
78
80
  /Message rejected by\:\s+([\S\.]+?)$/m, // Outlook error
79
81
  /from (\S+) \[([\d\.]+)\](?:\:(\d+)\:)?/m,
80
82
  /conversation with (\S+)\[([\d\.]+)\](?:\:(\d+)\:)? timed out/m,
83
+ /lost connection with (\S+)\[([\d\.]+)\](?:\:(\d+)\:)?/m, // "lost connection with mx.mail-data.net[134.244.220.69]"
81
84
  /Generating server: (\S+)(?:\[([\d\.]+)\])?(?:\:(\d+)\:)?/m // "Generating server: PH7PR02MB9549495.namprd02.prod.outlook.com"
82
85
  ],
83
86
 
84
87
  error : [
85
- /said\: (\d{3}(?:[\s\-]\d\.\d\.\d{1,3})?) (.+) \(in reply to/,
86
- /said\: (\d{3}(?:[\s\-]\d\.\d\.\d{1,3})?)-(.+)/,
88
+ /said\: (\d{3}(?:[\s\-\#\']{1,2}\d\.\d\.\d{1,3})?) (.+) \(in reply to/,
89
+ /said\: (\d{3}(?:[\s\-\#\']{1,2}\d\.\d\.\d{1,3})?)-(.+)/,
87
90
  /(\d{3}\-\'\d\.\d\.\d{1,3}) (.+)/,
88
- /LMTP error after .+?\:\<.+?\>\: (\d{3}(?:[\s\-]\d\.\d\.\d{1,3})?) <.+?\>(.+)$/m,
89
- /remote server returned \'(\d{3}(?:[\s\-]\d\.\d\.\d{1,3})?) (.+)\'/i,
90
- /The response from the remote server was:\s(\d{3}(?:[\s\-]\d\.\d\.\d{1,3})?) (.+)/,
91
- /refused to talk to me\: (\d{3}(?:[\s\-]\d\.\d\.\d{1,3})?) (.+)/,
92
- /(?:error|reason)\:\s*?(\d{3}(?:[\s\-]\d\.\d\.\d{1,3})?) (.+)/i,
93
- /(\d{3}[\s\-]\d\.\d\.\d{1,3})/,
91
+ /LMTP error after .+?\:\<.+?\>\: (\d{3}(?:[\s\-\#\']{1,2}\d\.\d\.\d{1,3})?) <.+?\>(.+)$/m,
92
+ /remote server returned \'(\d{3}(?:[\s\-\#\']{1,2}\d\.\d\.\d{1,3})?) (.+)\'/i,
93
+ /The response from the remote server was:\s(\d{3}(?:[\s\-\#\']{1,2}\d\.\d\.\d{1,3})?) (.+)/,
94
+ /refused to talk to me\: (\d{3}(?:[\s\-\#\']{1,2}\d\.\d\.\d{1,3})?) (.+)/,
95
+ /(?:error|reason)\:\s*?(\d{3}(?:[\s\-\#\']{1,2}\d\.\d\.\d{1,3})?) (.+)/i,
96
+ /(\d{3}[\s\-\#\']{1,2}\d\.\d\.\d{1,3})/,
94
97
  /(\d{3}\-\'\d\.\d\.\d{1,3})/
95
98
  ],
96
99
 
@@ -122,8 +125,8 @@ var REGEXES = {
122
125
  ],
123
126
 
124
127
  temporary_safe : /(temporary|temporarily)/i,
125
- blocked : /((?:is listed)|blocked|banned|denied|dnsbl)/i,
126
- spam : /(spam)/i,
128
+ blocked : /((?:is listed)|blocked|block list|banned|denied|dnsbl)/i,
129
+ spam : /(spam|unsolicited)/i,
127
130
 
128
131
  enhanced_types : {
129
132
  no_such_recipient : [
@@ -150,13 +153,13 @@ var REGEXES = {
150
153
  ],
151
154
 
152
155
  reputation : [
153
- /(rate limited due to IP reputation)/i
156
+ /(rate limited due to IP reputation)/i,
157
+ /(new or untrusted IP)/i
154
158
  ]
155
159
  },
156
160
 
157
161
  error_code : [
158
- /(\d{3})[\s\-](\d\.\d\.\d{1,3})/, // "550 5.4.1" or "550-5.4.1" or "550-5.4.11" or "550-5.4.110"
159
- /(\d{3})\-\'(\d\.\d\.\d{1,3})/, // "550-'5.4.1" or "550-'5.4.11" or "550-'5.4.110"
162
+ /(\d{3})[\s\-\#\']{1,2}(\d\.\d\.\d{1,3})/, // "550 5.4.1" or "550 #5.4.1" or "550-5.4.1" or "550-'5.4.1"
160
163
  /(\d{3})/ // "550"
161
164
  ]
162
165
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "email-bounce-parser",
3
- "version": "1.0.20",
3
+ "version": "1.0.21",
4
4
  "description": "Parses bounce emails and extract errors",
5
5
  "author": "Eliott Vincent <eliott@crisp.chat>",
6
6
  "main": "lib/index.js",