gmail 0.6.0 → 0.7.0

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 (94) hide show
  1. checksums.yaml +4 -4
  2. data/.coveralls.yml +1 -0
  3. data/.gitignore +27 -27
  4. data/.rspec +1 -1
  5. data/.rubocop.yml +53 -13
  6. data/.rubocop_todo.yml +299 -239
  7. data/.travis.yml +19 -19
  8. data/CHANGELOG.md +152 -145
  9. data/Gemfile +5 -3
  10. data/LICENSE +21 -21
  11. data/README.md +380 -355
  12. data/Rakefile +44 -46
  13. data/gmail.gemspec +32 -34
  14. data/lib/gmail.rb +72 -78
  15. data/lib/gmail/client.rb +35 -34
  16. data/lib/gmail/client/base.rb +244 -229
  17. data/lib/gmail/client/plain.rb +24 -24
  18. data/lib/gmail/client/xoauth.rb +67 -68
  19. data/lib/gmail/client/xoauth2.rb +39 -39
  20. data/lib/gmail/imap_extensions.rb +156 -159
  21. data/lib/gmail/labels.rb +80 -79
  22. data/lib/gmail/mailbox.rb +178 -175
  23. data/lib/gmail/message.rb +212 -207
  24. data/lib/gmail/version.rb +3 -3
  25. data/spec/account.yml.example +1 -1
  26. data/spec/account.yml.obfus +2 -2
  27. data/spec/gmail/client/base_spec.rb +5 -5
  28. data/spec/gmail/client/plain_spec.rb +169 -169
  29. data/spec/gmail/client/xoauth2_spec.rb +186 -186
  30. data/spec/gmail/client/xoauth_spec.rb +5 -5
  31. data/spec/gmail/client_spec.rb +5 -5
  32. data/spec/gmail/imap_extensions_spec.rb +47 -47
  33. data/spec/gmail/labels_spec.rb +27 -27
  34. data/spec/gmail/mailbox_spec.rb +84 -84
  35. data/spec/gmail/message_spec.rb +181 -181
  36. data/spec/gmail_spec.rb +40 -39
  37. data/spec/recordings/gmail/_new_connects_with_client_and_give_it_context_when_block_given.yml +61 -28
  38. data/spec/recordings/gmail/_new_connects_with_gmail_service_and_return_valid_connection_object.yml +43 -28
  39. data/spec/recordings/gmail/_new_does_not_raise_error_when_couldn_t_connect_with_given_account.yml +21 -13
  40. data/spec/recordings/gmail/_new_raises_error_when_couldn_t_connect_with_given_account.yml +21 -13
  41. data/spec/recordings/gmail_client_plain/instance/delivers_inline_composed_email.yml +61 -42
  42. data/spec/recordings/gmail_client_plain/instance/does_not_log_in_when_given_gmail_account_is_invalid.yml +21 -13
  43. data/spec/recordings/gmail_client_plain/instance/does_not_raise_error_even_though_gmail_account_is_invalid.yml +21 -13
  44. data/spec/recordings/gmail_client_plain/instance/labels/checks_if_there_is_given_label_defined.yml +409 -196
  45. data/spec/recordings/gmail_client_plain/instance/labels/creates_given_label.yml +280 -151
  46. data/spec/recordings/gmail_client_plain/instance/labels/removes_existing_label.yml +271 -146
  47. data/spec/recordings/gmail_client_plain/instance/labels/returns_list_of_all_available_labels.yml +227 -113
  48. data/spec/recordings/gmail_client_plain/instance/properly_logs_in_to_valid_gmail_account.yml +61 -42
  49. data/spec/recordings/gmail_client_plain/instance/properly_logs_out_from_gmail.yml +61 -42
  50. data/spec/recordings/gmail_client_plain/instance/properly_switches_to_given_mailbox.yml +164 -109
  51. data/spec/recordings/gmail_client_plain/instance/properly_switches_to_given_mailbox_using_block_style.yml +164 -109
  52. data/spec/recordings/gmail_client_plain/instance/raises_error_when_given_gmail_account_is_invalid_and_errors_enabled.yml +21 -13
  53. data/spec/recordings/gmail_client_xo_auth2/instance/does_not_log_in_when_given_gmail_account_is_invalid.yml +24 -13
  54. data/spec/recordings/gmail_client_xo_auth2/instance/labels/checks_if_there_is_given_label_defined.yml +39 -27
  55. data/spec/recordings/gmail_client_xo_auth2/instance/labels/creates_given_label.yml +52 -39
  56. data/spec/recordings/gmail_client_xo_auth2/instance/labels/removes_existing_label.yml +52 -39
  57. data/spec/recordings/gmail_client_xo_auth2/instance/labels/returns_list_of_all_available_labels.yml +39 -27
  58. data/spec/recordings/gmail_client_xo_auth2/instance/properly_logs_in_to_valid_gmail_account.yml +26 -15
  59. data/spec/recordings/gmail_client_xo_auth2/instance/properly_logs_out_from_gmail.yml +26 -15
  60. data/spec/recordings/gmail_client_xo_auth2/instance/properly_switches_to_given_mailbox.yml +63 -40
  61. data/spec/recordings/gmail_client_xo_auth2/instance/properly_switches_to_given_mailbox_using_block_style.yml +63 -40
  62. data/spec/recordings/gmail_client_xo_auth2/instance/raises_error_when_given_gmail_account_is_invalid_and_errors_enabled.yml +24 -13
  63. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/all/localizes_into_the_appropriate_label.yml +229 -116
  64. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/and_the_mailbox_does_not_exist/returns_the_mailbox_name_as_a_string.yml +229 -110
  65. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/drafts/localizes_into_the_appropriate_label.yml +229 -116
  66. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/flagged/localizes_into_the_appropriate_label.yml +229 -116
  67. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/important/localizes_into_the_appropriate_label.yml +229 -116
  68. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/inbox/localizes_into_the_appropriate_label.yml +61 -42
  69. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/junk/localizes_into_the_appropriate_label.yml +229 -116
  70. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/sent/localizes_into_the_appropriate_label.yml +229 -116
  71. data/spec/recordings/gmail_labels/localize/when_given_the_xl_is_tflag/trash/localizes_into_the_appropriate_label.yml +229 -116
  72. data/spec/recordings/gmail_mailbox/instance/counts_all_emails.yml +595 -277
  73. data/spec/recordings/gmail_mailbox/instance/finds_messages.yml +1049 -586
  74. data/spec/recordings/gmail_mailbox/instance/waits_once.yml +191 -136
  75. data/spec/recordings/gmail_mailbox/instance/waits_repeatedly.yml +217 -141
  76. data/spec/recordings/gmail_mailbox/instance/waits_with_29-minute_re-issue.yml +188 -136
  77. data/spec/recordings/gmail_mailbox/instance/waits_with_an_unblocked_connection.yml +644 -207
  78. data/spec/recordings/gmail_mailbox/on_initialize/sets_client_and_name.yml +61 -42
  79. data/spec/recordings/gmail_mailbox/on_initialize/works_in_inbox_by_default.yml +61 -42
  80. data/spec/recordings/gmail_message/initialize/sets_prefetch_attrs.yml +1068 -578
  81. data/spec/recordings/gmail_message/initialize/sets_uid_and_mailbox.yml +1068 -580
  82. data/spec/recordings/gmail_message/instance_methods/deletes_itself.yml +1084 -637
  83. data/spec/recordings/gmail_message/instance_methods/marks_itself_read.yml +1137 -682
  84. data/spec/recordings/gmail_message/instance_methods/marks_itself_unread.yml +1153 -686
  85. data/spec/recordings/gmail_message/instance_methods/moves_from_one_tag_to_other.yml +1447 -862
  86. data/spec/recordings/gmail_message/instance_methods/removes_a_given_label.yml +1288 -776
  87. data/spec/recordings/gmail_message/instance_methods/removes_a_given_label_with_old_method.yml +1288 -776
  88. data/spec/recordings/gmail_message/instance_methods/sets_given_label.yml +1165 -690
  89. data/spec/recordings/gmail_message/instance_methods/sets_given_label_with_old_method.yml +1157 -691
  90. data/spec/spec_helper.rb +56 -53
  91. data/spec/support/imap_mock.rb +181 -181
  92. data/spec/support/obfuscation.rb +49 -52
  93. metadata +21 -90
  94. data/spec/recordings/gmail_client_plain/instance/_connection_automatically_logs_in_to_gmail_account_when_it_s_called.yml +0 -42
@@ -1,42 +1,61 @@
1
- ---
2
- LOGIN-9a890af1c86854f5170d99be6e10b8f1:
3
- - - :return
4
- - !ruby/struct:Net::IMAP::TaggedResponse
5
- tag: RUBY0001
6
- name: OK
7
- data: !ruby/struct:Net::IMAP::ResponseText
8
- code:
9
- text: ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated (Success)
10
- raw_data: "RUBY0001 OK ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated
11
- (Success)\r\n"
12
- - CAPABILITY: &1
13
- - - IMAP4REV1
14
- - UNSELECT
15
- - IDLE
16
- - NAMESPACE
17
- - QUOTA
18
- - ID
19
- - XLIST
20
- - CHILDREN
21
- - X-GM-EXT-1
22
- - UIDPLUS
23
- - COMPRESS=DEFLATE
24
- - ENABLE
25
- - MOVE
26
- - CONDSTORE
27
- - ESEARCH
28
- - UTF8=ACCEPT
29
- LOGOUT-e76a09b7766d60a37ff9e1af527a143e:
30
- - - :return
31
- - !ruby/struct:Net::IMAP::TaggedResponse
32
- tag: RUBY0002
33
- name: OK
34
- data: !ruby/struct:Net::IMAP::ResponseText
35
- code:
36
- text: 73 good day (Success)
37
- raw_data: "RUBY0002 OK 73 good day (Success)\r\n"
38
- - CAPABILITY: *1
39
- BYE:
40
- - !ruby/struct:Net::IMAP::ResponseText
41
- code:
42
- text: LOGOUT Requested
1
+ ---
2
+ LOGIN-9a890af1c86854f5170d99be6e10b8f1:
3
+ - - :return
4
+ - !ruby/struct:Net::IMAP::TaggedResponse
5
+ tag: RUBY0001
6
+ name: OK
7
+ data: &2 !ruby/struct:Net::IMAP::ResponseText
8
+ code:
9
+ text: ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated (Success)
10
+ raw_data: "RUBY0001 OK ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated
11
+ (Success)\r\n"
12
+ - CAPABILITY: &3
13
+ - &1
14
+ - IMAP4REV1
15
+ - UNSELECT
16
+ - IDLE
17
+ - NAMESPACE
18
+ - QUOTA
19
+ - ID
20
+ - XLIST
21
+ - CHILDREN
22
+ - X-GM-EXT-1
23
+ - UIDPLUS
24
+ - COMPRESS=DEFLATE
25
+ - ENABLE
26
+ - MOVE
27
+ - CONDSTORE
28
+ - ESEARCH
29
+ - UTF8=ACCEPT
30
+ - LIST-EXTENDED
31
+ - LIST-STATUS
32
+ - - !ruby/struct:Net::IMAP::UntaggedResponse
33
+ name: CAPABILITY
34
+ data: *1
35
+ raw_data: "* CAPABILITY IMAP4rev1 UNSELECT IDLE NAMESPACE QUOTA ID XLIST CHILDREN
36
+ X-GM-EXT-1 UIDPLUS COMPRESS=DEFLATE ENABLE MOVE CONDSTORE ESEARCH UTF8=ACCEPT
37
+ LIST-EXTENDED LIST-STATUS\r\n"
38
+ - !ruby/struct:Net::IMAP::TaggedResponse
39
+ tag: RUBY0001
40
+ name: OK
41
+ data: *2
42
+ raw_data: "RUBY0001 OK ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated
43
+ (Success)\r\n"
44
+ LOGOUT-e76a09b7766d60a37ff9e1af527a143e:
45
+ - - :return
46
+ - !ruby/struct:Net::IMAP::TaggedResponse
47
+ tag: RUBY0002
48
+ name: OK
49
+ data: !ruby/struct:Net::IMAP::ResponseText
50
+ code:
51
+ text: 73 good day (Success)
52
+ raw_data: "RUBY0002 OK 73 good day (Success)\r\n"
53
+ - CAPABILITY: *3
54
+ BYE:
55
+ - &4 !ruby/struct:Net::IMAP::ResponseText
56
+ code:
57
+ text: LOGOUT Requested
58
+ - - !ruby/struct:Net::IMAP::UntaggedResponse
59
+ name: BYE
60
+ data: *4
61
+ raw_data: "* BYE LOGOUT Requested\r\n"
@@ -1,42 +1,61 @@
1
- ---
2
- LOGIN-9a890af1c86854f5170d99be6e10b8f1:
3
- - - :return
4
- - !ruby/struct:Net::IMAP::TaggedResponse
5
- tag: RUBY0001
6
- name: OK
7
- data: !ruby/struct:Net::IMAP::ResponseText
8
- code:
9
- text: ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated (Success)
10
- raw_data: "RUBY0001 OK ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated
11
- (Success)\r\n"
12
- - CAPABILITY: &1
13
- - - IMAP4REV1
14
- - UNSELECT
15
- - IDLE
16
- - NAMESPACE
17
- - QUOTA
18
- - ID
19
- - XLIST
20
- - CHILDREN
21
- - X-GM-EXT-1
22
- - UIDPLUS
23
- - COMPRESS=DEFLATE
24
- - ENABLE
25
- - MOVE
26
- - CONDSTORE
27
- - ESEARCH
28
- - UTF8=ACCEPT
29
- LOGOUT-e76a09b7766d60a37ff9e1af527a143e:
30
- - - :return
31
- - !ruby/struct:Net::IMAP::TaggedResponse
32
- tag: RUBY0002
33
- name: OK
34
- data: !ruby/struct:Net::IMAP::ResponseText
35
- code:
36
- text: 73 good day (Success)
37
- raw_data: "RUBY0002 OK 73 good day (Success)\r\n"
38
- - CAPABILITY: *1
39
- BYE:
40
- - !ruby/struct:Net::IMAP::ResponseText
41
- code:
42
- text: LOGOUT Requested
1
+ ---
2
+ LOGIN-9a890af1c86854f5170d99be6e10b8f1:
3
+ - - :return
4
+ - !ruby/struct:Net::IMAP::TaggedResponse
5
+ tag: RUBY0001
6
+ name: OK
7
+ data: &2 !ruby/struct:Net::IMAP::ResponseText
8
+ code:
9
+ text: ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated (Success)
10
+ raw_data: "RUBY0001 OK ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated
11
+ (Success)\r\n"
12
+ - CAPABILITY: &3
13
+ - &1
14
+ - IMAP4REV1
15
+ - UNSELECT
16
+ - IDLE
17
+ - NAMESPACE
18
+ - QUOTA
19
+ - ID
20
+ - XLIST
21
+ - CHILDREN
22
+ - X-GM-EXT-1
23
+ - UIDPLUS
24
+ - COMPRESS=DEFLATE
25
+ - ENABLE
26
+ - MOVE
27
+ - CONDSTORE
28
+ - ESEARCH
29
+ - UTF8=ACCEPT
30
+ - LIST-EXTENDED
31
+ - LIST-STATUS
32
+ - - !ruby/struct:Net::IMAP::UntaggedResponse
33
+ name: CAPABILITY
34
+ data: *1
35
+ raw_data: "* CAPABILITY IMAP4rev1 UNSELECT IDLE NAMESPACE QUOTA ID XLIST CHILDREN
36
+ X-GM-EXT-1 UIDPLUS COMPRESS=DEFLATE ENABLE MOVE CONDSTORE ESEARCH UTF8=ACCEPT
37
+ LIST-EXTENDED LIST-STATUS\r\n"
38
+ - !ruby/struct:Net::IMAP::TaggedResponse
39
+ tag: RUBY0001
40
+ name: OK
41
+ data: *2
42
+ raw_data: "RUBY0001 OK ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated
43
+ (Success)\r\n"
44
+ LOGOUT-e76a09b7766d60a37ff9e1af527a143e:
45
+ - - :return
46
+ - !ruby/struct:Net::IMAP::TaggedResponse
47
+ tag: RUBY0002
48
+ name: OK
49
+ data: !ruby/struct:Net::IMAP::ResponseText
50
+ code:
51
+ text: 73 good day (Success)
52
+ raw_data: "RUBY0002 OK 73 good day (Success)\r\n"
53
+ - CAPABILITY: *3
54
+ BYE:
55
+ - &4 !ruby/struct:Net::IMAP::ResponseText
56
+ code:
57
+ text: LOGOUT Requested
58
+ - - !ruby/struct:Net::IMAP::UntaggedResponse
59
+ name: BYE
60
+ data: *4
61
+ raw_data: "* BYE LOGOUT Requested\r\n"
@@ -1,578 +1,1068 @@
1
- ---
2
- LOGIN-9a890af1c86854f5170d99be6e10b8f1:
3
- - - :return
4
- - !ruby/struct:Net::IMAP::TaggedResponse
5
- tag: RUBY0001
6
- name: OK
7
- data: !ruby/struct:Net::IMAP::ResponseText
8
- code:
9
- text: ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated (Success)
10
- raw_data: "RUBY0001 OK ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated
11
- (Success)\r\n"
12
- - CAPABILITY: &1
13
- - - IMAP4REV1
14
- - UNSELECT
15
- - IDLE
16
- - NAMESPACE
17
- - QUOTA
18
- - ID
19
- - XLIST
20
- - CHILDREN
21
- - X-GM-EXT-1
22
- - UIDPLUS
23
- - COMPRESS=DEFLATE
24
- - ENABLE
25
- - MOVE
26
- - CONDSTORE
27
- - ESEARCH
28
- - UTF8=ACCEPT
29
- LIST-b30698c3407aff5520448484b159fc07:
30
- - - :return
31
- - !ruby/struct:Net::IMAP::TaggedResponse
32
- tag: RUBY0002
33
- name: OK
34
- data: !ruby/struct:Net::IMAP::ResponseText
35
- code:
36
- text: Success
37
- raw_data: "RUBY0002 OK Success\r\n"
38
- - CAPABILITY: *1
39
- LIST:
40
- - !ruby/struct:Net::IMAP::MailboxList
41
- attr:
42
- - :Hasnochildren
43
- delim: "/"
44
- name: Awesome
45
- - !ruby/struct:Net::IMAP::MailboxList
46
- attr:
47
- - :Hasnochildren
48
- delim: "/"
49
- name: Great
50
- - !ruby/struct:Net::IMAP::MailboxList
51
- attr:
52
- - :Hasnochildren
53
- delim: "/"
54
- name: INBOX
55
- - !ruby/struct:Net::IMAP::MailboxList
56
- attr:
57
- - :Hasnochildren
58
- delim: "/"
59
- name: Ni&APE-os
60
- - !ruby/struct:Net::IMAP::MailboxList
61
- attr:
62
- - :Noselect
63
- - :Haschildren
64
- delim: "/"
65
- name: "[Gmail]"
66
- - !ruby/struct:Net::IMAP::MailboxList
67
- attr:
68
- - :Hasnochildren
69
- - :All
70
- delim: "/"
71
- name: "[Gmail]/All Mail"
72
- - !ruby/struct:Net::IMAP::MailboxList
73
- attr:
74
- - :Hasnochildren
75
- - :Drafts
76
- delim: "/"
77
- name: "[Gmail]/Drafts"
78
- - !ruby/struct:Net::IMAP::MailboxList
79
- attr:
80
- - :Hasnochildren
81
- - :Important
82
- delim: "/"
83
- name: "[Gmail]/Important"
84
- - !ruby/struct:Net::IMAP::MailboxList
85
- attr:
86
- - :Sent
87
- - :Hasnochildren
88
- delim: "/"
89
- name: "[Gmail]/Sent Mail"
90
- - !ruby/struct:Net::IMAP::MailboxList
91
- attr:
92
- - :Hasnochildren
93
- - :Junk
94
- delim: "/"
95
- name: "[Gmail]/Spam"
96
- - !ruby/struct:Net::IMAP::MailboxList
97
- attr:
98
- - :Hasnochildren
99
- - :Flagged
100
- delim: "/"
101
- name: "[Gmail]/Starred"
102
- - !ruby/struct:Net::IMAP::MailboxList
103
- attr:
104
- - :Trash
105
- - :Hasnochildren
106
- delim: "/"
107
- name: "[Gmail]/Trash"
108
- - !ruby/struct:Net::IMAP::MailboxList
109
- attr:
110
- - :Hasnochildren
111
- delim: "/"
112
- name: one's and two's
113
- - !ruby/struct:Net::IMAP::MailboxList
114
- attr:
115
- - :Hasnochildren
116
- delim: "/"
117
- name: some new label
118
- - !ruby/struct:Net::IMAP::MailboxList
119
- attr:
120
- - :Hasnochildren
121
- delim: "/"
122
- name: some other label
123
- SELECT-868fce8856c91e50bebd43b4dbd8e071:
124
- - - :return
125
- - !ruby/struct:Net::IMAP::TaggedResponse
126
- tag: RUBY0003
127
- name: OK
128
- data: !ruby/struct:Net::IMAP::ResponseText
129
- code: !ruby/struct:Net::IMAP::ResponseCode
130
- name: READ-WRITE
131
- data:
132
- text: " [Gmail]/All Mail selected. (Success)"
133
- raw_data: "RUBY0003 OK [READ-WRITE] [Gmail]/All Mail selected. (Success)\r\n"
134
- - FLAGS: &4
135
- - - :Answered
136
- - :Flagged
137
- - :Draft
138
- - :Deleted
139
- - :Seen
140
- - "$Phishing"
141
- - "$NotPhishing"
142
- OK: &5
143
- - !ruby/struct:Net::IMAP::ResponseText
144
- code: !ruby/struct:Net::IMAP::ResponseCode
145
- name: PERMANENTFLAGS
146
- data: &2
147
- - :Answered
148
- - :Flagged
149
- - :Draft
150
- - :Deleted
151
- - :Seen
152
- - "$Phishing"
153
- - "$NotPhishing"
154
- - :*
155
- text: " Flags permitted."
156
- - !ruby/struct:Net::IMAP::ResponseText
157
- code: !ruby/struct:Net::IMAP::ResponseCode
158
- name: UIDVALIDITY
159
- data: 11
160
- text: " UIDs valid."
161
- - !ruby/struct:Net::IMAP::ResponseText
162
- code: !ruby/struct:Net::IMAP::ResponseCode
163
- name: UIDNEXT
164
- data: 187
165
- text: " Predicted next UID."
166
- - !ruby/struct:Net::IMAP::ResponseText
167
- code: !ruby/struct:Net::IMAP::ResponseCode
168
- name: HIGHESTMODSEQ
169
- data: '14589'
170
- text: ''
171
- PERMANENTFLAGS: &6
172
- - *2
173
- UIDVALIDITY: &7
174
- - 11
175
- EXISTS: &8
176
- - 179
177
- RECENT: &9
178
- - 0
179
- UIDNEXT: &10
180
- - 187
181
- HIGHESTMODSEQ: &11
182
- - '14589'
183
- - - :return
184
- - !ruby/struct:Net::IMAP::TaggedResponse
185
- tag: RUBY0005
186
- name: OK
187
- data: !ruby/struct:Net::IMAP::ResponseText
188
- code: !ruby/struct:Net::IMAP::ResponseCode
189
- name: READ-WRITE
190
- data:
191
- text: " [Gmail]/All Mail selected. (Success)"
192
- raw_data: "RUBY0005 OK [READ-WRITE] [Gmail]/All Mail selected. (Success)\r\n"
193
- - FLAGS: &12
194
- - - :Answered
195
- - :Flagged
196
- - :Draft
197
- - :Deleted
198
- - :Seen
199
- - "$Phishing"
200
- - "$NotPhishing"
201
- OK: &13
202
- - !ruby/struct:Net::IMAP::ResponseText
203
- code: !ruby/struct:Net::IMAP::ResponseCode
204
- name: PERMANENTFLAGS
205
- data: &3
206
- - :Answered
207
- - :Flagged
208
- - :Draft
209
- - :Deleted
210
- - :Seen
211
- - "$Phishing"
212
- - "$NotPhishing"
213
- - :*
214
- text: " Flags permitted."
215
- - !ruby/struct:Net::IMAP::ResponseText
216
- code: !ruby/struct:Net::IMAP::ResponseCode
217
- name: UIDVALIDITY
218
- data: 11
219
- text: " UIDs valid."
220
- - !ruby/struct:Net::IMAP::ResponseText
221
- code: !ruby/struct:Net::IMAP::ResponseCode
222
- name: UIDNEXT
223
- data: 187
224
- text: " Predicted next UID."
225
- - !ruby/struct:Net::IMAP::ResponseText
226
- code: !ruby/struct:Net::IMAP::ResponseCode
227
- name: HIGHESTMODSEQ
228
- data: '14589'
229
- text: ''
230
- PERMANENTFLAGS: &14
231
- - *3
232
- UIDVALIDITY: &15
233
- - 11
234
- EXISTS: &16
235
- - 179
236
- RECENT: &17
237
- - 0
238
- UIDNEXT: &18
239
- - 187
240
- HIGHESTMODSEQ: &19
241
- - '14589'
242
- UID SEARCH-b19658413e2b63d2bac9c290a67c2cb3:
243
- - - :return
244
- - !ruby/struct:Net::IMAP::TaggedResponse
245
- tag: RUBY0004
246
- name: OK
247
- data: !ruby/struct:Net::IMAP::ResponseText
248
- code:
249
- text: SEARCH completed (Success)
250
- raw_data: "RUBY0004 OK SEARCH completed (Success)\r\n"
251
- - FLAGS: *4
252
- OK: *5
253
- PERMANENTFLAGS: *6
254
- UIDVALIDITY: *7
255
- EXISTS: *8
256
- RECENT: *9
257
- UIDNEXT: *10
258
- HIGHESTMODSEQ: *11
259
- SEARCH:
260
- - - 1
261
- - 2
262
- - 3
263
- - 4
264
- - 5
265
- - 6
266
- - 7
267
- - 8
268
- - 9
269
- - 10
270
- - 11
271
- - 12
272
- - 13
273
- - 14
274
- - 15
275
- - 16
276
- - 17
277
- - 18
278
- - 19
279
- - 20
280
- - 21
281
- - 22
282
- - 23
283
- - 24
284
- - 25
285
- - 26
286
- - 27
287
- - 28
288
- - 29
289
- - 30
290
- - 31
291
- - 32
292
- - 33
293
- - 34
294
- - 35
295
- - 36
296
- - 37
297
- - 38
298
- - 39
299
- - 40
300
- - 41
301
- - 42
302
- - 43
303
- - 44
304
- - 45
305
- - 46
306
- - 47
307
- - 48
308
- - 49
309
- - 50
310
- - 51
311
- - 52
312
- - 53
313
- - 54
314
- - 55
315
- - 56
316
- - 57
317
- - 58
318
- - 59
319
- - 60
320
- - 61
321
- - 62
322
- - 63
323
- - 64
324
- - 65
325
- - 66
326
- - 67
327
- - 68
328
- - 69
329
- - 70
330
- - 71
331
- - 72
332
- - 73
333
- - 74
334
- - 75
335
- - 76
336
- - 77
337
- - 78
338
- - 79
339
- - 80
340
- - 81
341
- - 82
342
- - 83
343
- - 84
344
- - 85
345
- - 86
346
- - 87
347
- - 88
348
- - 89
349
- - 90
350
- - 91
351
- - 92
352
- - 93
353
- - 94
354
- - 95
355
- - 96
356
- - 97
357
- - 98
358
- - 99
359
- - 100
360
- - 101
361
- - 102
362
- - 103
363
- - 104
364
- - 105
365
- - 106
366
- - 107
367
- - 108
368
- - 109
369
- - 110
370
- - 111
371
- - 112
372
- - 113
373
- - 114
374
- - 115
375
- - 116
376
- - 117
377
- - 118
378
- - 119
379
- - 120
380
- - 121
381
- - 122
382
- - 123
383
- - 124
384
- - 125
385
- - 126
386
- - 127
387
- - 128
388
- - 129
389
- - 130
390
- - 131
391
- - 132
392
- - 133
393
- - 134
394
- - 135
395
- - 136
396
- - 137
397
- - 138
398
- - 139
399
- - 140
400
- - 141
401
- - 142
402
- - 143
403
- - 144
404
- - 145
405
- - 150
406
- - 151
407
- - 155
408
- - 156
409
- - 157
410
- - 158
411
- - 159
412
- - 160
413
- - 161
414
- - 162
415
- - 163
416
- - 164
417
- - 165
418
- - 166
419
- - 167
420
- - 168
421
- - 169
422
- - 170
423
- - 171
424
- - 172
425
- - 173
426
- - 174
427
- - 175
428
- - 176
429
- - 177
430
- - 178
431
- - 179
432
- - 180
433
- - 181
434
- - 182
435
- - 183
436
- - 184
437
- - 185
438
- - 186
439
- UID FETCH-70e92ae4507a5481cf98aac122edceb8:
440
- - - :return
441
- - !ruby/struct:Net::IMAP::TaggedResponse
442
- tag: RUBY0006
443
- name: OK
444
- data: !ruby/struct:Net::IMAP::ResponseText
445
- code:
446
- text: Success
447
- raw_data: "RUBY0006 OK Success\r\n"
448
- - FLAGS: *12
449
- OK: *13
450
- PERMANENTFLAGS: *14
451
- UIDVALIDITY: *15
452
- EXISTS: *16
453
- RECENT: *17
454
- UIDNEXT: *18
455
- HIGHESTMODSEQ: *19
456
- FETCH:
457
- - !ruby/struct:Net::IMAP::FetchData
458
- seqno: 1
459
- attr:
460
- X-GM-THRID: 1490339162618061913
461
- X-GM-MSGID: 1490339162618061913
462
- X-GM-LABELS:
463
- - "\\Inbox"
464
- UID: 1
465
- FLAGS:
466
- - :Seen
467
- ENVELOPE: !ruby/struct:Net::IMAP::Envelope
468
- date: Wed, 14 Jan 2015 21:03:01 -0800
469
- subject: Three tips to get the most out of Gmail
470
- from:
471
- - !ruby/struct:Net::IMAP::Address
472
- name: Gmail Team
473
- route:
474
- mailbox: mail-noreply
475
- host: google.com
476
- sender:
477
- - !ruby/struct:Net::IMAP::Address
478
- name: Gmail Team
479
- route:
480
- mailbox: mail-noreply
481
- host: google.com
482
- reply_to:
483
- - !ruby/struct:Net::IMAP::Address
484
- name: Gmail Team
485
- route:
486
- mailbox: mail-noreply
487
- host: google.com
488
- to:
489
- - !ruby/struct:Net::IMAP::Address
490
- name: John Doe
491
- route:
492
- mailbox: ki0zvkyi1yzgy7xu4f4dh46nqrcecm
493
- host: gmail.com
494
- cc:
495
- bcc:
496
- in_reply_to:
497
- message_id: "<CACNRAYKakHOCaxin=3D-9QAC=GRQgDae66vLpwqPQC6rDAJK2w@mail.gmail.com>"
498
- BODY[]: "MIME-Version: 1.0\r\nx-no-auto-attachment: 1\r\nReceived: by 10.70.87.10;
499
- Wed, 14 Jan 2015 21:03:01 -0800 (PST)\r\nDate: Wed, 14 Jan 2015 21:03:01
500
- -0800\r\nMessage-ID: <CACNRAYKakHOCaxin=3D-9QAC=GRQgDae66vLpwqPQC6rDAJK2w@mail.gmail.com>\r\nSubject:
501
- Three tips to get the most out of Gmail\r\nFrom: Gmail Team <mail-noreply@google.com>\r\nTo:
502
- John Doe <ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com>\r\nContent-Type: multipart/alternative;
503
- boundary=bcaec51dcff73ca5e9050ca9c59a\r\n\r\n--bcaec51dcff73ca5e9050ca9c59a\r\nContent-Type:
504
- text/plain; charset=UTF-8\r\nContent-Transfer-Encoding: quoted-printable\r\n\r\n
505
- Three tips to get the most out of Gmail\r\n[image: Google]\r\n\r\nHi John\r\n\r\nTips
506
- to get the most out of Gmail\r\n\r\n[image: Contacts]\r\nBring your contacts
507
- and mail into Gmail\r\n\r\nOn your computer, you can copy your contacts
508
- and emails from your old email\r\naccount to make the transition to Gmail
509
- even better. Learn how\r\n<https://support.google.com/mail/answer/164640?hl=3Den&ref_topic=3D1669014>=\r\n.\r\n[image:
510
- Search]\r\nFind what you need fast\r\n\r\nWith the power of Google Search
511
- right in your inbox, it's easy to sort your\r\nemail. Find what you're looking
512
- for with predictions based on email\r\ncontent, past searches and contacts.\r\n[image:
513
- Search]\r\nMuch more than email\r\n\r\nYou can send text messages and make
514
- video calls with Hangouts\r\n<https://www.google.com/intl/en/hangouts/>
515
- right from Gmail. To use this\r\nfeature on mobile, download the Hangouts
516
- app for Android\r\n<https://play.google.com/store/apps/details?id=3Dcom.google.android.talk&hl=\r\n=3Den>\r\nand
517
- Apple <https://itunes.apple.com/en/app/hangouts/id643496868?mt=3D8>\r\ndevices.\r\n\r\n\r\n[image:
518
- Gmail icon]Happy emailing,\r\nThe Gmail Team\r\n =C2=A9 2015 Google Inc.
519
- 1600 Amphitheatre Parkway, Mountain View, CA 94043\r\n\r\n--bcaec51dcff73ca5e9050ca9c59a\r\nContent-Type:
520
- text/html; charset=UTF-8\r\nContent-Transfer-Encoding: quoted-printable\r\n\r\n<!DOCTYPE
521
- html>\r\n<html><head><meta http-equiv=3D\"content-type\" content=3D\"text/html;charset=\r\n=3DUTF-8\"
522
- /><title>Three tips to get the most out of Gmail</title></head><b=\r\nody
523
- style=3D\"background-color:#e5e5e5; margin:20px 0;\"><br /><div style=3D\"=\r\nmargin:2%;\"><div
524
- style=3D\"direction:ltr; text-align:left; font-family:'Open=\r\n sans','Arial',sans-serif;
525
- color:#444; background-color:white; padding:1.5e=\r\nm; border-radius:1em;
526
- box-shadow:1px -5px 8px 2px #bbb; max-width:580px; ma=\r\nrgin:2% auto 0
527
- auto;\"><table style=3D\"background:white;width:100%\"><tr><td>=\r\n<div
528
- style=3D\"width:90px; height:54px; margin:10px auto;\"><img src=3D\"https=\r\n://services.google.com/fh/files/emails/google_logo_flat_90_color.png\"
529
- alt=\r\n=3D\"Google\" width=3D\"90\" height=3D\"34\"/></div><div style=3D\"width:90%;
530
- padd=\r\ning-bottom:10px; padding-left:15px\"><p><img alt=3D\"\" src=3D\"https://ssl.gst=\r\natic.com/accounts/services/mail/msa/gmail_icon_small.png\"
531
- style=3D\"display:=\r\nblock; float:left; margin-top:4px; margin-right:5px;\"/><span
532
- style=3D\"font-=\r\nfamily:'Open sans','Arial',sans-serif; font-weight:bold;
533
- font-size:small; l=\r\nine-height:1.4em\">Hi John</span></p><p><span style=3D\"font-family:'Open
534
- san=\r\ns','Arial',sans-serif; font-size:2.08em;\">Tips to get the most
535
- out of Gmail=\r\n</span><br/></p></div><p></p><div style=3D\"float:left;
536
- clear:both; padding:=\r\n0px 5px 10px 10px;\"><img src=3D\"https://services.google.com/fh/files/emails=\r\n/importcontacts.png\"
537
- alt=3D\"Contacts\" style=3D\"display:block;\"width=3D\"129\"=\r\nheight=3D\"129\"/></div><div
538
- style=3D\"float:left; vertical-align:middle; padd=\r\ning:10px; max-width:398px;
539
- float:left;\"><table style=3D\"vertical-align:midd=\r\nle;\"><tr><td style=3D\"font-family:'Open
540
- sans','Arial',sans-serif;\"><span st=\r\nyle=3D\"font-size:20px;\">Bring
541
- your contacts and mail into Gmail</span><br/>=\r\n<br/><span style=3D\"font-size:small;
542
- line-height:1.4em\">On your computer, y=\r\nou can copy your contacts and
543
- emails from your old email account to make th=\r\ne transition to Gmail
544
- even better. <a href=3D\"https://support.google.com/ma=\r\nil/answer/164640?hl=3Den&amp;ref_topic=3D1669014\"
545
- style=3D\"text-decoration:=\r\nnone; color:#15C\">Learn how</a>.</span></td></tr></table></div><div
546
- style=\r\n=3D\"float:left; clear:both; padding:0px 5px 10px 10px;\"><img
547
- src=3D\"https:/=\r\n/ssl.gstatic.com/mail/welcome/localized/en/welcome_search.png\"
548
- alt=3D\"Searc=\r\nh\" style=3D\"display:block;\"width=3D\"129\"height=3D\"129\"/></div><div
549
- style=3D=\r\n\"float:left; vertical-align:middle; padding:10px; max-width:398px;
550
- float:le=\r\nft;\"><table style=3D\"vertical-align:middle;\"><tr><td style=3D\"font-family:'=\r\nOpen
551
- sans','Arial',sans-serif;\"><span style=3D\"font-size:20px;\">Find what
552
- y=\r\nou need fast</span><br/><br/><span style=3D\"font-size:small; line-height:1.=\r\n4em\">With
553
- the power of Google Search right in your inbox, it's easy to sort=\r\n your
554
- email. Find what you're looking for with predictions based on email c=\r\nontent,
555
- past searches and contacts.</span></td></tr></table></div><div styl=\r\ne=3D\"float:left;
556
- clear:both; padding:0px 5px 10px 10px;\"><img src=3D\"https:=\r\n//ssl.gstatic.com/accounts/services/mail/msa/welcome_hangouts.png\"
557
- alt=3D\"S=\r\nearch\" style=3D\"display:block;\"width=3D\"129\"height=3D\"129\"/></div><div
558
- styl=\r\ne=3D\"float:left; vertical-align:middle; padding:10px; max-width:398px;
559
- floa=\r\nt:left;\"><table style=3D\"vertical-align:middle;\"><tr><td style=3D\"font-fami=\r\nly:'Open
560
- sans','Arial',sans-serif;\"><span style=3D\"font-size:20px;\">Much mo=\r\nre
561
- than email</span><br/><br/><span style=3D\"font-size:small; line-height:1=\r\n.4em\">You
562
- can send text messages and make video calls with <a href=3D\"https=\r\n://www.google.com/intl/en/hangouts/\"
563
- style=3D\"text-decoration:none; color:#=\r\n15C\">Hangouts</a> right from
564
- Gmail. To use this feature on mobile, download=\r\n the Hangouts app for
565
- <a href=3D\"https://play.google.com/store/apps/details=\r\n?id=3Dcom.google.android.talk&amp;hl=3Den\"
566
- style=3D\"text-decoration:none; c=\r\nolor:#15C\">Android</a> and <a href=3D\"https://itunes.apple.com/en/app/hango=\r\nuts/id643496868?mt=3D8\"
567
- style=3D\"text-decoration:none; color:#15C\">Apple</a=\r\n> devices.</span></td></tr></table></div><br/><br/>\r\n<div
568
- style=3D\"clear:both; padding-left:13px; height:6.8em;\"><table style=3D=\r\n\"width:100%;
569
- border-collapse:collapse; border:0\"><tr><td style=3D\"width:68p=\r\nx\"><img
570
- alt=3D'Gmail icon' width=3D\"49\" height=3D\"37\" src=3D\"https://ssl.gs=\r\ntatic.com/accounts/services/mail/msa/gmail_icon_large.png\"
571
- style=3D\"display=\r\n:block;\"/></td><td style=3D\"align:left; font-family:'Open
572
- sans','Arial',san=\r\ns-serif; vertical-align:bottom\"><span style=3D\"font-size:small\">Happy
573
- email=\r\ning,<br/></span><span style=3D\"font-size:x-large; line-height:1\">The
574
- Gmail =\r\nTeam</span></td></tr></table></div>\r\n</td></tr></table></div>\r\n<div
575
- style=3D\"direction:ltr;color:#777; font-size:0.8em; border-radius:1em;=\r\n
576
- padding:1em; margin:0 auto 4% auto; font-family:'Arial','Helvetica',sans-s=\r\nerif;
577
- text-align:center;\">=C2=A9 2015 Google Inc. 1600 Amphitheatre Parkway=\r\n,
578
- Mountain View, CA 94043<br/></div></div></body></html>\r\n\r\n--bcaec51dcff73ca5e9050ca9c59a--"
1
+ ---
2
+ LOGIN-9a890af1c86854f5170d99be6e10b8f1:
3
+ - - :return
4
+ - !ruby/struct:Net::IMAP::TaggedResponse
5
+ tag: RUBY0001
6
+ name: OK
7
+ data: &2 !ruby/struct:Net::IMAP::ResponseText
8
+ code:
9
+ text: ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated (Success)
10
+ raw_data: "RUBY0001 OK ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated
11
+ (Success)\r\n"
12
+ - CAPABILITY: &3
13
+ - &1
14
+ - IMAP4REV1
15
+ - UNSELECT
16
+ - IDLE
17
+ - NAMESPACE
18
+ - QUOTA
19
+ - ID
20
+ - XLIST
21
+ - CHILDREN
22
+ - X-GM-EXT-1
23
+ - UIDPLUS
24
+ - COMPRESS=DEFLATE
25
+ - ENABLE
26
+ - MOVE
27
+ - CONDSTORE
28
+ - ESEARCH
29
+ - UTF8=ACCEPT
30
+ - LIST-EXTENDED
31
+ - LIST-STATUS
32
+ - - !ruby/struct:Net::IMAP::UntaggedResponse
33
+ name: CAPABILITY
34
+ data: *1
35
+ raw_data: "* CAPABILITY IMAP4rev1 UNSELECT IDLE NAMESPACE QUOTA ID XLIST CHILDREN
36
+ X-GM-EXT-1 UIDPLUS COMPRESS=DEFLATE ENABLE MOVE CONDSTORE ESEARCH UTF8=ACCEPT
37
+ LIST-EXTENDED LIST-STATUS\r\n"
38
+ - !ruby/struct:Net::IMAP::TaggedResponse
39
+ tag: RUBY0001
40
+ name: OK
41
+ data: *2
42
+ raw_data: "RUBY0001 OK ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com authenticated
43
+ (Success)\r\n"
44
+ LIST-b30698c3407aff5520448484b159fc07:
45
+ - - :return
46
+ - !ruby/struct:Net::IMAP::TaggedResponse
47
+ tag: RUBY0002
48
+ name: OK
49
+ data: &20 !ruby/struct:Net::IMAP::ResponseText
50
+ code:
51
+ text: Success
52
+ raw_data: "RUBY0002 OK Success\r\n"
53
+ - CAPABILITY: *3
54
+ LIST:
55
+ - &4 !ruby/struct:Net::IMAP::MailboxList
56
+ attr:
57
+ - :Hasnochildren
58
+ delim: "/"
59
+ name: Awesome
60
+ - &5 !ruby/struct:Net::IMAP::MailboxList
61
+ attr:
62
+ - :Hasnochildren
63
+ delim: "/"
64
+ name: Great
65
+ - &6 !ruby/struct:Net::IMAP::MailboxList
66
+ attr:
67
+ - :Hasnochildren
68
+ delim: "/"
69
+ name: INBOX
70
+ - &7 !ruby/struct:Net::IMAP::MailboxList
71
+ attr:
72
+ - :Hasnochildren
73
+ delim: "/"
74
+ name: Ni&APE-os
75
+ - &8 !ruby/struct:Net::IMAP::MailboxList
76
+ attr:
77
+ - :Haschildren
78
+ - :Noselect
79
+ delim: "/"
80
+ name: "[Gmail]"
81
+ - &9 !ruby/struct:Net::IMAP::MailboxList
82
+ attr:
83
+ - :All
84
+ - :Hasnochildren
85
+ delim: "/"
86
+ name: "[Gmail]/All Mail"
87
+ - &10 !ruby/struct:Net::IMAP::MailboxList
88
+ attr:
89
+ - :Drafts
90
+ - :Hasnochildren
91
+ delim: "/"
92
+ name: "[Gmail]/Drafts"
93
+ - &11 !ruby/struct:Net::IMAP::MailboxList
94
+ attr:
95
+ - :Hasnochildren
96
+ - :Important
97
+ delim: "/"
98
+ name: "[Gmail]/Important"
99
+ - &12 !ruby/struct:Net::IMAP::MailboxList
100
+ attr:
101
+ - :Hasnochildren
102
+ - :Sent
103
+ delim: "/"
104
+ name: "[Gmail]/Sent Mail"
105
+ - &13 !ruby/struct:Net::IMAP::MailboxList
106
+ attr:
107
+ - :Hasnochildren
108
+ - :Junk
109
+ delim: "/"
110
+ name: "[Gmail]/Spam"
111
+ - &14 !ruby/struct:Net::IMAP::MailboxList
112
+ attr:
113
+ - :Flagged
114
+ - :Hasnochildren
115
+ delim: "/"
116
+ name: "[Gmail]/Starred"
117
+ - &15 !ruby/struct:Net::IMAP::MailboxList
118
+ attr:
119
+ - :Hasnochildren
120
+ - :Trash
121
+ delim: "/"
122
+ name: "[Gmail]/Trash"
123
+ - &16 !ruby/struct:Net::IMAP::MailboxList
124
+ attr:
125
+ - :Hasnochildren
126
+ delim: "/"
127
+ name: "\\Junk"
128
+ - &17 !ruby/struct:Net::IMAP::MailboxList
129
+ attr:
130
+ - :Hasnochildren
131
+ delim: "/"
132
+ name: one's and two's
133
+ - &18 !ruby/struct:Net::IMAP::MailboxList
134
+ attr:
135
+ - :Hasnochildren
136
+ delim: "/"
137
+ name: some new label
138
+ - &19 !ruby/struct:Net::IMAP::MailboxList
139
+ attr:
140
+ - :Hasnochildren
141
+ delim: "/"
142
+ name: some other label
143
+ - - !ruby/struct:Net::IMAP::UntaggedResponse
144
+ name: LIST
145
+ data: *4
146
+ raw_data: "* LIST (\\HasNoChildren) \"/\" \"Awesome\"\r\n"
147
+ - !ruby/struct:Net::IMAP::UntaggedResponse
148
+ name: LIST
149
+ data: *5
150
+ raw_data: "* LIST (\\HasNoChildren) \"/\" \"Great\"\r\n"
151
+ - !ruby/struct:Net::IMAP::UntaggedResponse
152
+ name: LIST
153
+ data: *6
154
+ raw_data: "* LIST (\\HasNoChildren) \"/\" \"INBOX\"\r\n"
155
+ - !ruby/struct:Net::IMAP::UntaggedResponse
156
+ name: LIST
157
+ data: *7
158
+ raw_data: "* LIST (\\HasNoChildren) \"/\" \"Ni&APE-os\"\r\n"
159
+ - !ruby/struct:Net::IMAP::UntaggedResponse
160
+ name: LIST
161
+ data: *8
162
+ raw_data: "* LIST (\\HasChildren \\Noselect) \"/\" \"[Gmail]\"\r\n"
163
+ - !ruby/struct:Net::IMAP::UntaggedResponse
164
+ name: LIST
165
+ data: *9
166
+ raw_data: "* LIST (\\All \\HasNoChildren) \"/\" \"[Gmail]/All Mail\"\r\n"
167
+ - !ruby/struct:Net::IMAP::UntaggedResponse
168
+ name: LIST
169
+ data: *10
170
+ raw_data: "* LIST (\\Drafts \\HasNoChildren) \"/\" \"[Gmail]/Drafts\"\r\n"
171
+ - !ruby/struct:Net::IMAP::UntaggedResponse
172
+ name: LIST
173
+ data: *11
174
+ raw_data: "* LIST (\\HasNoChildren \\Important) \"/\" \"[Gmail]/Important\"\r\n"
175
+ - !ruby/struct:Net::IMAP::UntaggedResponse
176
+ name: LIST
177
+ data: *12
178
+ raw_data: "* LIST (\\HasNoChildren \\Sent) \"/\" \"[Gmail]/Sent Mail\"\r\n"
179
+ - !ruby/struct:Net::IMAP::UntaggedResponse
180
+ name: LIST
181
+ data: *13
182
+ raw_data: "* LIST (\\HasNoChildren \\Junk) \"/\" \"[Gmail]/Spam\"\r\n"
183
+ - !ruby/struct:Net::IMAP::UntaggedResponse
184
+ name: LIST
185
+ data: *14
186
+ raw_data: "* LIST (\\Flagged \\HasNoChildren) \"/\" \"[Gmail]/Starred\"\r\n"
187
+ - !ruby/struct:Net::IMAP::UntaggedResponse
188
+ name: LIST
189
+ data: *15
190
+ raw_data: "* LIST (\\HasNoChildren \\Trash) \"/\" \"[Gmail]/Trash\"\r\n"
191
+ - !ruby/struct:Net::IMAP::UntaggedResponse
192
+ name: LIST
193
+ data: *16
194
+ raw_data: "* LIST (\\HasNoChildren) \"/\" \"\\\\Junk\"\r\n"
195
+ - !ruby/struct:Net::IMAP::UntaggedResponse
196
+ name: LIST
197
+ data: *17
198
+ raw_data: "* LIST (\\HasNoChildren) \"/\" \"one's and two's\"\r\n"
199
+ - !ruby/struct:Net::IMAP::UntaggedResponse
200
+ name: LIST
201
+ data: *18
202
+ raw_data: "* LIST (\\HasNoChildren) \"/\" \"some new label\"\r\n"
203
+ - !ruby/struct:Net::IMAP::UntaggedResponse
204
+ name: LIST
205
+ data: *19
206
+ raw_data: "* LIST (\\HasNoChildren) \"/\" \"some other label\"\r\n"
207
+ - !ruby/struct:Net::IMAP::TaggedResponse
208
+ tag: RUBY0002
209
+ name: OK
210
+ data: *20
211
+ raw_data: "RUBY0002 OK Success\r\n"
212
+ SELECT-868fce8856c91e50bebd43b4dbd8e071:
213
+ - - :return
214
+ - !ruby/struct:Net::IMAP::TaggedResponse
215
+ tag: RUBY0003
216
+ name: OK
217
+ data: &27 !ruby/struct:Net::IMAP::ResponseText
218
+ code: !ruby/struct:Net::IMAP::ResponseCode
219
+ name: READ-WRITE
220
+ data:
221
+ text: " [Gmail]/All Mail selected. (Success)"
222
+ raw_data: "RUBY0003 OK [READ-WRITE] [Gmail]/All Mail selected. (Success)\r\n"
223
+ - FLAGS: &35
224
+ - &22
225
+ - :Answered
226
+ - :Flagged
227
+ - :Draft
228
+ - :Deleted
229
+ - :Seen
230
+ - "$NotPhishing"
231
+ - "$Phishing"
232
+ OK: &36
233
+ - &23 !ruby/struct:Net::IMAP::ResponseText
234
+ code: !ruby/struct:Net::IMAP::ResponseCode
235
+ name: PERMANENTFLAGS
236
+ data: &21
237
+ - :Answered
238
+ - :Flagged
239
+ - :Draft
240
+ - :Deleted
241
+ - :Seen
242
+ - "$NotPhishing"
243
+ - "$Phishing"
244
+ - :*
245
+ text: " Flags permitted."
246
+ - &24 !ruby/struct:Net::IMAP::ResponseText
247
+ code: !ruby/struct:Net::IMAP::ResponseCode
248
+ name: UIDVALIDITY
249
+ data: 11
250
+ text: " UIDs valid."
251
+ - &25 !ruby/struct:Net::IMAP::ResponseText
252
+ code: !ruby/struct:Net::IMAP::ResponseCode
253
+ name: UIDNEXT
254
+ data: 398
255
+ text: " Predicted next UID."
256
+ - &26 !ruby/struct:Net::IMAP::ResponseText
257
+ code: !ruby/struct:Net::IMAP::ResponseCode
258
+ name: HIGHESTMODSEQ
259
+ data: '24049'
260
+ text: ''
261
+ PERMANENTFLAGS: &37
262
+ - *21
263
+ UIDVALIDITY: &38
264
+ - 11
265
+ EXISTS: &39
266
+ - 385
267
+ RECENT: &40
268
+ - 0
269
+ UIDNEXT: &41
270
+ - 398
271
+ HIGHESTMODSEQ: &42
272
+ - '24049'
273
+ - - !ruby/struct:Net::IMAP::UntaggedResponse
274
+ name: FLAGS
275
+ data: *22
276
+ raw_data: "* FLAGS (\\Answered \\Flagged \\Draft \\Deleted \\Seen $NotPhishing
277
+ $Phishing)\r\n"
278
+ - !ruby/struct:Net::IMAP::UntaggedResponse
279
+ name: OK
280
+ data: *23
281
+ raw_data: "* OK [PERMANENTFLAGS (\\Answered \\Flagged \\Draft \\Deleted \\Seen
282
+ $NotPhishing $Phishing \\*)] Flags permitted.\r\n"
283
+ - !ruby/struct:Net::IMAP::UntaggedResponse
284
+ name: OK
285
+ data: *24
286
+ raw_data: "* OK [UIDVALIDITY 11] UIDs valid.\r\n"
287
+ - !ruby/struct:Net::IMAP::UntaggedResponse
288
+ name: EXISTS
289
+ data: 385
290
+ raw_data: "* 385 EXISTS\r\n"
291
+ - !ruby/struct:Net::IMAP::UntaggedResponse
292
+ name: RECENT
293
+ data: 0
294
+ raw_data: "* 0 RECENT\r\n"
295
+ - !ruby/struct:Net::IMAP::UntaggedResponse
296
+ name: OK
297
+ data: *25
298
+ raw_data: "* OK [UIDNEXT 398] Predicted next UID.\r\n"
299
+ - !ruby/struct:Net::IMAP::UntaggedResponse
300
+ name: OK
301
+ data: *26
302
+ raw_data: "* OK [HIGHESTMODSEQ 24049]\r\n"
303
+ - !ruby/struct:Net::IMAP::TaggedResponse
304
+ tag: RUBY0003
305
+ name: OK
306
+ data: *27
307
+ raw_data: "RUBY0003 OK [READ-WRITE] [Gmail]/All Mail selected. (Success)\r\n"
308
+ - - :return
309
+ - !ruby/struct:Net::IMAP::TaggedResponse
310
+ tag: RUBY0005
311
+ name: OK
312
+ data: &34 !ruby/struct:Net::IMAP::ResponseText
313
+ code: !ruby/struct:Net::IMAP::ResponseCode
314
+ name: READ-WRITE
315
+ data:
316
+ text: " [Gmail]/All Mail selected. (Success)"
317
+ raw_data: "RUBY0005 OK [READ-WRITE] [Gmail]/All Mail selected. (Success)\r\n"
318
+ - FLAGS: &45
319
+ - &29
320
+ - :Answered
321
+ - :Flagged
322
+ - :Draft
323
+ - :Deleted
324
+ - :Seen
325
+ - "$NotPhishing"
326
+ - "$Phishing"
327
+ OK: &46
328
+ - &30 !ruby/struct:Net::IMAP::ResponseText
329
+ code: !ruby/struct:Net::IMAP::ResponseCode
330
+ name: PERMANENTFLAGS
331
+ data: &28
332
+ - :Answered
333
+ - :Flagged
334
+ - :Draft
335
+ - :Deleted
336
+ - :Seen
337
+ - "$NotPhishing"
338
+ - "$Phishing"
339
+ - :*
340
+ text: " Flags permitted."
341
+ - &31 !ruby/struct:Net::IMAP::ResponseText
342
+ code: !ruby/struct:Net::IMAP::ResponseCode
343
+ name: UIDVALIDITY
344
+ data: 11
345
+ text: " UIDs valid."
346
+ - &32 !ruby/struct:Net::IMAP::ResponseText
347
+ code: !ruby/struct:Net::IMAP::ResponseCode
348
+ name: UIDNEXT
349
+ data: 398
350
+ text: " Predicted next UID."
351
+ - &33 !ruby/struct:Net::IMAP::ResponseText
352
+ code: !ruby/struct:Net::IMAP::ResponseCode
353
+ name: HIGHESTMODSEQ
354
+ data: '24049'
355
+ text: ''
356
+ PERMANENTFLAGS: &47
357
+ - *28
358
+ UIDVALIDITY: &48
359
+ - 11
360
+ EXISTS: &49
361
+ - 385
362
+ RECENT: &50
363
+ - 0
364
+ UIDNEXT: &51
365
+ - 398
366
+ HIGHESTMODSEQ: &52
367
+ - '24049'
368
+ - - !ruby/struct:Net::IMAP::UntaggedResponse
369
+ name: FLAGS
370
+ data: *29
371
+ raw_data: "* FLAGS (\\Answered \\Flagged \\Draft \\Deleted \\Seen $NotPhishing
372
+ $Phishing)\r\n"
373
+ - !ruby/struct:Net::IMAP::UntaggedResponse
374
+ name: OK
375
+ data: *30
376
+ raw_data: "* OK [PERMANENTFLAGS (\\Answered \\Flagged \\Draft \\Deleted \\Seen
377
+ $NotPhishing $Phishing \\*)] Flags permitted.\r\n"
378
+ - !ruby/struct:Net::IMAP::UntaggedResponse
379
+ name: OK
380
+ data: *31
381
+ raw_data: "* OK [UIDVALIDITY 11] UIDs valid.\r\n"
382
+ - !ruby/struct:Net::IMAP::UntaggedResponse
383
+ name: EXISTS
384
+ data: 385
385
+ raw_data: "* 385 EXISTS\r\n"
386
+ - !ruby/struct:Net::IMAP::UntaggedResponse
387
+ name: RECENT
388
+ data: 0
389
+ raw_data: "* 0 RECENT\r\n"
390
+ - !ruby/struct:Net::IMAP::UntaggedResponse
391
+ name: OK
392
+ data: *32
393
+ raw_data: "* OK [UIDNEXT 398] Predicted next UID.\r\n"
394
+ - !ruby/struct:Net::IMAP::UntaggedResponse
395
+ name: OK
396
+ data: *33
397
+ raw_data: "* OK [HIGHESTMODSEQ 24049]\r\n"
398
+ - !ruby/struct:Net::IMAP::TaggedResponse
399
+ tag: RUBY0005
400
+ name: OK
401
+ data: *34
402
+ raw_data: "RUBY0005 OK [READ-WRITE] [Gmail]/All Mail selected. (Success)\r\n"
403
+ UID SEARCH-b19658413e2b63d2bac9c290a67c2cb3:
404
+ - - :return
405
+ - !ruby/struct:Net::IMAP::TaggedResponse
406
+ tag: RUBY0004
407
+ name: OK
408
+ data: &44 !ruby/struct:Net::IMAP::ResponseText
409
+ code:
410
+ text: SEARCH completed (Success)
411
+ raw_data: "RUBY0004 OK SEARCH completed (Success)\r\n"
412
+ - FLAGS: *35
413
+ OK: *36
414
+ PERMANENTFLAGS: *37
415
+ UIDVALIDITY: *38
416
+ EXISTS: *39
417
+ RECENT: *40
418
+ UIDNEXT: *41
419
+ HIGHESTMODSEQ: *42
420
+ SEARCH:
421
+ - &43
422
+ - 1
423
+ - 2
424
+ - 3
425
+ - 4
426
+ - 5
427
+ - 6
428
+ - 7
429
+ - 8
430
+ - 9
431
+ - 10
432
+ - 11
433
+ - 12
434
+ - 13
435
+ - 14
436
+ - 15
437
+ - 16
438
+ - 17
439
+ - 18
440
+ - 19
441
+ - 20
442
+ - 21
443
+ - 22
444
+ - 23
445
+ - 24
446
+ - 25
447
+ - 26
448
+ - 27
449
+ - 28
450
+ - 29
451
+ - 30
452
+ - 31
453
+ - 32
454
+ - 33
455
+ - 34
456
+ - 35
457
+ - 36
458
+ - 37
459
+ - 38
460
+ - 39
461
+ - 40
462
+ - 41
463
+ - 42
464
+ - 43
465
+ - 44
466
+ - 45
467
+ - 46
468
+ - 47
469
+ - 48
470
+ - 49
471
+ - 50
472
+ - 51
473
+ - 52
474
+ - 53
475
+ - 54
476
+ - 55
477
+ - 56
478
+ - 57
479
+ - 58
480
+ - 59
481
+ - 60
482
+ - 61
483
+ - 62
484
+ - 63
485
+ - 64
486
+ - 65
487
+ - 66
488
+ - 67
489
+ - 68
490
+ - 69
491
+ - 70
492
+ - 71
493
+ - 72
494
+ - 73
495
+ - 74
496
+ - 75
497
+ - 76
498
+ - 77
499
+ - 78
500
+ - 79
501
+ - 80
502
+ - 81
503
+ - 82
504
+ - 83
505
+ - 84
506
+ - 85
507
+ - 86
508
+ - 87
509
+ - 88
510
+ - 89
511
+ - 90
512
+ - 91
513
+ - 92
514
+ - 93
515
+ - 94
516
+ - 95
517
+ - 96
518
+ - 97
519
+ - 98
520
+ - 99
521
+ - 100
522
+ - 101
523
+ - 102
524
+ - 103
525
+ - 104
526
+ - 105
527
+ - 106
528
+ - 107
529
+ - 108
530
+ - 109
531
+ - 110
532
+ - 111
533
+ - 112
534
+ - 113
535
+ - 114
536
+ - 115
537
+ - 116
538
+ - 117
539
+ - 118
540
+ - 119
541
+ - 120
542
+ - 121
543
+ - 122
544
+ - 123
545
+ - 124
546
+ - 125
547
+ - 126
548
+ - 127
549
+ - 128
550
+ - 129
551
+ - 130
552
+ - 131
553
+ - 132
554
+ - 133
555
+ - 134
556
+ - 135
557
+ - 136
558
+ - 137
559
+ - 138
560
+ - 139
561
+ - 140
562
+ - 141
563
+ - 142
564
+ - 143
565
+ - 144
566
+ - 145
567
+ - 150
568
+ - 151
569
+ - 155
570
+ - 156
571
+ - 157
572
+ - 158
573
+ - 159
574
+ - 160
575
+ - 161
576
+ - 162
577
+ - 163
578
+ - 164
579
+ - 165
580
+ - 166
581
+ - 167
582
+ - 168
583
+ - 169
584
+ - 170
585
+ - 171
586
+ - 172
587
+ - 173
588
+ - 174
589
+ - 175
590
+ - 176
591
+ - 177
592
+ - 178
593
+ - 179
594
+ - 180
595
+ - 181
596
+ - 182
597
+ - 183
598
+ - 184
599
+ - 185
600
+ - 186
601
+ - 189
602
+ - 190
603
+ - 191
604
+ - 192
605
+ - 193
606
+ - 194
607
+ - 195
608
+ - 196
609
+ - 197
610
+ - 198
611
+ - 199
612
+ - 200
613
+ - 201
614
+ - 202
615
+ - 203
616
+ - 204
617
+ - 205
618
+ - 206
619
+ - 207
620
+ - 208
621
+ - 209
622
+ - 210
623
+ - 211
624
+ - 212
625
+ - 213
626
+ - 214
627
+ - 215
628
+ - 216
629
+ - 217
630
+ - 218
631
+ - 219
632
+ - 220
633
+ - 221
634
+ - 222
635
+ - 223
636
+ - 224
637
+ - 225
638
+ - 226
639
+ - 227
640
+ - 228
641
+ - 229
642
+ - 230
643
+ - 231
644
+ - 232
645
+ - 233
646
+ - 234
647
+ - 235
648
+ - 236
649
+ - 237
650
+ - 238
651
+ - 239
652
+ - 240
653
+ - 241
654
+ - 242
655
+ - 243
656
+ - 244
657
+ - 245
658
+ - 247
659
+ - 248
660
+ - 249
661
+ - 251
662
+ - 252
663
+ - 253
664
+ - 254
665
+ - 255
666
+ - 256
667
+ - 257
668
+ - 258
669
+ - 259
670
+ - 260
671
+ - 261
672
+ - 262
673
+ - 263
674
+ - 264
675
+ - 265
676
+ - 266
677
+ - 267
678
+ - 268
679
+ - 269
680
+ - 270
681
+ - 271
682
+ - 272
683
+ - 273
684
+ - 274
685
+ - 275
686
+ - 276
687
+ - 277
688
+ - 278
689
+ - 279
690
+ - 280
691
+ - 281
692
+ - 282
693
+ - 283
694
+ - 284
695
+ - 285
696
+ - 286
697
+ - 287
698
+ - 288
699
+ - 289
700
+ - 290
701
+ - 291
702
+ - 292
703
+ - 293
704
+ - 294
705
+ - 295
706
+ - 296
707
+ - 297
708
+ - 298
709
+ - 299
710
+ - 300
711
+ - 301
712
+ - 302
713
+ - 303
714
+ - 304
715
+ - 305
716
+ - 306
717
+ - 307
718
+ - 308
719
+ - 309
720
+ - 310
721
+ - 311
722
+ - 312
723
+ - 313
724
+ - 314
725
+ - 315
726
+ - 316
727
+ - 317
728
+ - 318
729
+ - 319
730
+ - 320
731
+ - 321
732
+ - 322
733
+ - 323
734
+ - 324
735
+ - 325
736
+ - 326
737
+ - 327
738
+ - 328
739
+ - 329
740
+ - 330
741
+ - 331
742
+ - 332
743
+ - 333
744
+ - 334
745
+ - 335
746
+ - 336
747
+ - 337
748
+ - 338
749
+ - 339
750
+ - 340
751
+ - 341
752
+ - 342
753
+ - 343
754
+ - 344
755
+ - 345
756
+ - 346
757
+ - 347
758
+ - 348
759
+ - 349
760
+ - 350
761
+ - 351
762
+ - 352
763
+ - 353
764
+ - 354
765
+ - 355
766
+ - 356
767
+ - 357
768
+ - 358
769
+ - 359
770
+ - 360
771
+ - 361
772
+ - 362
773
+ - 363
774
+ - 364
775
+ - 365
776
+ - 366
777
+ - 367
778
+ - 368
779
+ - 369
780
+ - 370
781
+ - 371
782
+ - 372
783
+ - 373
784
+ - 374
785
+ - 375
786
+ - 376
787
+ - 377
788
+ - 378
789
+ - 379
790
+ - 380
791
+ - 381
792
+ - 382
793
+ - 383
794
+ - 384
795
+ - 385
796
+ - 386
797
+ - 387
798
+ - 388
799
+ - 389
800
+ - 391
801
+ - 392
802
+ - 393
803
+ - 394
804
+ - 395
805
+ - 396
806
+ - 397
807
+ - - !ruby/struct:Net::IMAP::UntaggedResponse
808
+ name: SEARCH
809
+ data: *43
810
+ raw_data: "* SEARCH 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
811
+ 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
812
+ 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
813
+ 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97
814
+ 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116
815
+ 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135
816
+ 136 137 138 139 140 141 142 143 144 145 150 151 155 156 157 158 159 160 161
817
+ 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180
818
+ 181 182 183 184 185 186 189 190 191 192 193 194 195 196 197 198 199 200 201
819
+ 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220
820
+ 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239
821
+ 240 241 242 243 244 245 247 248 249 251 252 253 254 255 256 257 258 259 260
822
+ 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279
823
+ 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298
824
+ 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317
825
+ 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336
826
+ 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355
827
+ 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374
828
+ 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 391 392 393 394
829
+ 395 396 397\r\n"
830
+ - !ruby/struct:Net::IMAP::TaggedResponse
831
+ tag: RUBY0004
832
+ name: OK
833
+ data: *44
834
+ raw_data: "RUBY0004 OK SEARCH completed (Success)\r\n"
835
+ UID FETCH-70e92ae4507a5481cf98aac122edceb8:
836
+ - - :return
837
+ - !ruby/struct:Net::IMAP::TaggedResponse
838
+ tag: RUBY0006
839
+ name: OK
840
+ data: &54 !ruby/struct:Net::IMAP::ResponseText
841
+ code:
842
+ text: Success
843
+ raw_data: "RUBY0006 OK Success\r\n"
844
+ - FLAGS: *45
845
+ OK: *46
846
+ PERMANENTFLAGS: *47
847
+ UIDVALIDITY: *48
848
+ EXISTS: *49
849
+ RECENT: *50
850
+ UIDNEXT: *51
851
+ HIGHESTMODSEQ: *52
852
+ FETCH:
853
+ - &53 !ruby/struct:Net::IMAP::FetchData
854
+ seqno: 1
855
+ attr:
856
+ X-GM-THRID: 1490339162618061913
857
+ X-GM-MSGID: 1490339162618061913
858
+ X-GM-LABELS:
859
+ - :Inbox
860
+ UID: 1
861
+ FLAGS:
862
+ - :Seen
863
+ ENVELOPE: !ruby/struct:Net::IMAP::Envelope
864
+ date: Wed, 14 Jan 2015 21:03:01 -0800
865
+ subject: Three tips to get the most out of Gmail
866
+ from:
867
+ - !ruby/struct:Net::IMAP::Address
868
+ name: Gmail Team
869
+ route:
870
+ mailbox: mail-noreply
871
+ host: google.com
872
+ sender:
873
+ - !ruby/struct:Net::IMAP::Address
874
+ name: Gmail Team
875
+ route:
876
+ mailbox: mail-noreply
877
+ host: google.com
878
+ reply_to:
879
+ - !ruby/struct:Net::IMAP::Address
880
+ name: Gmail Team
881
+ route:
882
+ mailbox: mail-noreply
883
+ host: google.com
884
+ to:
885
+ - !ruby/struct:Net::IMAP::Address
886
+ name: John Doe
887
+ route:
888
+ mailbox: ki0zvkyi1yzgy7xu4f4dh46nqrcecm
889
+ host: gmail.com
890
+ cc:
891
+ bcc:
892
+ in_reply_to:
893
+ message_id: "<CACNRAYKakHOCaxin=3D-9QAC=GRQgDae66vLpwqPQC6rDAJK2w@mail.gmail.com>"
894
+ BODY[]: "MIME-Version: 1.0\r\nx-no-auto-attachment: 1\r\nReceived: by 10.70.87.10;
895
+ Wed, 14 Jan 2015 21:03:01 -0800 (PST)\r\nDate: Wed, 14 Jan 2015 21:03:01
896
+ -0800\r\nMessage-ID: <CACNRAYKakHOCaxin=3D-9QAC=GRQgDae66vLpwqPQC6rDAJK2w@mail.gmail.com>\r\nSubject:
897
+ Three tips to get the most out of Gmail\r\nFrom: Gmail Team <mail-noreply@google.com>\r\nTo:
898
+ John Doe <ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com>\r\nContent-Type: multipart/alternative;
899
+ boundary=bcaec51dcff73ca5e9050ca9c59a\r\n\r\n--bcaec51dcff73ca5e9050ca9c59a\r\nContent-Type:
900
+ text/plain; charset=UTF-8\r\nContent-Transfer-Encoding: quoted-printable\r\n\r\n
901
+ Three tips to get the most out of Gmail\r\n[image: Google]\r\n\r\nHi John\r\n\r\nTips
902
+ to get the most out of Gmail\r\n\r\n[image: Contacts]\r\nBring your contacts
903
+ and mail into Gmail\r\n\r\nOn your computer, you can copy your contacts
904
+ and emails from your old email\r\naccount to make the transition to Gmail
905
+ even better. Learn how\r\n<https://support.google.com/mail/answer/164640?hl=3Den&ref_topic=3D1669014>=\r\n.\r\n[image:
906
+ Search]\r\nFind what you need fast\r\n\r\nWith the power of Google Search
907
+ right in your inbox, it's easy to sort your\r\nemail. Find what you're looking
908
+ for with predictions based on email\r\ncontent, past searches and contacts.\r\n[image:
909
+ Search]\r\nMuch more than email\r\n\r\nYou can send text messages and make
910
+ video calls with Hangouts\r\n<https://www.google.com/intl/en/hangouts/>
911
+ right from Gmail. To use this\r\nfeature on mobile, download the Hangouts
912
+ app for Android\r\n<https://play.google.com/store/apps/details?id=3Dcom.google.android.talk&hl=\r\n=3Den>\r\nand
913
+ Apple <https://itunes.apple.com/en/app/hangouts/id643496868?mt=3D8>\r\ndevices.\r\n\r\n\r\n[image:
914
+ Gmail icon]Happy emailing,\r\nThe Gmail Team\r\n =C2=A9 2015 Google Inc.
915
+ 1600 Amphitheatre Parkway, Mountain View, CA 94043\r\n\r\n--bcaec51dcff73ca5e9050ca9c59a\r\nContent-Type:
916
+ text/html; charset=UTF-8\r\nContent-Transfer-Encoding: quoted-printable\r\n\r\n<!DOCTYPE
917
+ html>\r\n<html><head><meta http-equiv=3D\"content-type\" content=3D\"text/html;charset=\r\n=3DUTF-8\"
918
+ /><title>Three tips to get the most out of Gmail</title></head><b=\r\nody
919
+ style=3D\"background-color:#e5e5e5; margin:20px 0;\"><br /><div style=3D\"=\r\nmargin:2%;\"><div
920
+ style=3D\"direction:ltr; text-align:left; font-family:'Open=\r\n sans','Arial',sans-serif;
921
+ color:#444; background-color:white; padding:1.5e=\r\nm; border-radius:1em;
922
+ box-shadow:1px -5px 8px 2px #bbb; max-width:580px; ma=\r\nrgin:2% auto 0
923
+ auto;\"><table style=3D\"background:white;width:100%\"><tr><td>=\r\n<div
924
+ style=3D\"width:90px; height:54px; margin:10px auto;\"><img src=3D\"https=\r\n://services.google.com/fh/files/emails/google_logo_flat_90_color.png\"
925
+ alt=\r\n=3D\"Google\" width=3D\"90\" height=3D\"34\"/></div><div style=3D\"width:90%;
926
+ padd=\r\ning-bottom:10px; padding-left:15px\"><p><img alt=3D\"\" src=3D\"https://ssl.gst=\r\natic.com/accounts/services/mail/msa/gmail_icon_small.png\"
927
+ style=3D\"display:=\r\nblock; float:left; margin-top:4px; margin-right:5px;\"/><span
928
+ style=3D\"font-=\r\nfamily:'Open sans','Arial',sans-serif; font-weight:bold;
929
+ font-size:small; l=\r\nine-height:1.4em\">Hi John</span></p><p><span style=3D\"font-family:'Open
930
+ san=\r\ns','Arial',sans-serif; font-size:2.08em;\">Tips to get the most
931
+ out of Gmail=\r\n</span><br/></p></div><p></p><div style=3D\"float:left;
932
+ clear:both; padding:=\r\n0px 5px 10px 10px;\"><img src=3D\"https://services.google.com/fh/files/emails=\r\n/importcontacts.png\"
933
+ alt=3D\"Contacts\" style=3D\"display:block;\"width=3D\"129\"=\r\nheight=3D\"129\"/></div><div
934
+ style=3D\"float:left; vertical-align:middle; padd=\r\ning:10px; max-width:398px;
935
+ float:left;\"><table style=3D\"vertical-align:midd=\r\nle;\"><tr><td style=3D\"font-family:'Open
936
+ sans','Arial',sans-serif;\"><span st=\r\nyle=3D\"font-size:20px;\">Bring
937
+ your contacts and mail into Gmail</span><br/>=\r\n<br/><span style=3D\"font-size:small;
938
+ line-height:1.4em\">On your computer, y=\r\nou can copy your contacts and
939
+ emails from your old email account to make th=\r\ne transition to Gmail
940
+ even better. <a href=3D\"https://support.google.com/ma=\r\nil/answer/164640?hl=3Den&amp;ref_topic=3D1669014\"
941
+ style=3D\"text-decoration:=\r\nnone; color:#15C\">Learn how</a>.</span></td></tr></table></div><div
942
+ style=\r\n=3D\"float:left; clear:both; padding:0px 5px 10px 10px;\"><img
943
+ src=3D\"https:/=\r\n/ssl.gstatic.com/mail/welcome/localized/en/welcome_search.png\"
944
+ alt=3D\"Searc=\r\nh\" style=3D\"display:block;\"width=3D\"129\"height=3D\"129\"/></div><div
945
+ style=3D=\r\n\"float:left; vertical-align:middle; padding:10px; max-width:398px;
946
+ float:le=\r\nft;\"><table style=3D\"vertical-align:middle;\"><tr><td style=3D\"font-family:'=\r\nOpen
947
+ sans','Arial',sans-serif;\"><span style=3D\"font-size:20px;\">Find what
948
+ y=\r\nou need fast</span><br/><br/><span style=3D\"font-size:small; line-height:1.=\r\n4em\">With
949
+ the power of Google Search right in your inbox, it's easy to sort=\r\n your
950
+ email. Find what you're looking for with predictions based on email c=\r\nontent,
951
+ past searches and contacts.</span></td></tr></table></div><div styl=\r\ne=3D\"float:left;
952
+ clear:both; padding:0px 5px 10px 10px;\"><img src=3D\"https:=\r\n//ssl.gstatic.com/accounts/services/mail/msa/welcome_hangouts.png\"
953
+ alt=3D\"S=\r\nearch\" style=3D\"display:block;\"width=3D\"129\"height=3D\"129\"/></div><div
954
+ styl=\r\ne=3D\"float:left; vertical-align:middle; padding:10px; max-width:398px;
955
+ floa=\r\nt:left;\"><table style=3D\"vertical-align:middle;\"><tr><td style=3D\"font-fami=\r\nly:'Open
956
+ sans','Arial',sans-serif;\"><span style=3D\"font-size:20px;\">Much mo=\r\nre
957
+ than email</span><br/><br/><span style=3D\"font-size:small; line-height:1=\r\n.4em\">You
958
+ can send text messages and make video calls with <a href=3D\"https=\r\n://www.google.com/intl/en/hangouts/\"
959
+ style=3D\"text-decoration:none; color:#=\r\n15C\">Hangouts</a> right from
960
+ Gmail. To use this feature on mobile, download=\r\n the Hangouts app for
961
+ <a href=3D\"https://play.google.com/store/apps/details=\r\n?id=3Dcom.google.android.talk&amp;hl=3Den\"
962
+ style=3D\"text-decoration:none; c=\r\nolor:#15C\">Android</a> and <a href=3D\"https://itunes.apple.com/en/app/hango=\r\nuts/id643496868?mt=3D8\"
963
+ style=3D\"text-decoration:none; color:#15C\">Apple</a=\r\n> devices.</span></td></tr></table></div><br/><br/>\r\n<div
964
+ style=3D\"clear:both; padding-left:13px; height:6.8em;\"><table style=3D=\r\n\"width:100%;
965
+ border-collapse:collapse; border:0\"><tr><td style=3D\"width:68p=\r\nx\"><img
966
+ alt=3D'Gmail icon' width=3D\"49\" height=3D\"37\" src=3D\"https://ssl.gs=\r\ntatic.com/accounts/services/mail/msa/gmail_icon_large.png\"
967
+ style=3D\"display=\r\n:block;\"/></td><td style=3D\"align:left; font-family:'Open
968
+ sans','Arial',san=\r\ns-serif; vertical-align:bottom\"><span style=3D\"font-size:small\">Happy
969
+ email=\r\ning,<br/></span><span style=3D\"font-size:x-large; line-height:1\">The
970
+ Gmail =\r\nTeam</span></td></tr></table></div>\r\n</td></tr></table></div>\r\n<div
971
+ style=3D\"direction:ltr;color:#777; font-size:0.8em; border-radius:1em;=\r\n
972
+ padding:1em; margin:0 auto 4% auto; font-family:'Arial','Helvetica',sans-s=\r\nerif;
973
+ text-align:center;\">=C2=A9 2015 Google Inc. 1600 Amphitheatre Parkway=\r\n,
974
+ Mountain View, CA 94043<br/></div></div></body></html>\r\n\r\n--bcaec51dcff73ca5e9050ca9c59a--"
975
+ - - !ruby/struct:Net::IMAP::UntaggedResponse
976
+ name: FETCH
977
+ data: *53
978
+ raw_data: "* 1 FETCH (X-GM-THRID 1490339162618061913 X-GM-MSGID 1490339162618061913
979
+ X-GM-LABELS (\"\\\\Inbox\") UID 1 FLAGS (\\Seen) ENVELOPE (\"Wed, 14 Jan 2015
980
+ 21:03:01 -0800\" \"Three tips to get the most out of Gmail\" ((\"Gmail Team\"
981
+ NIL \"mail-noreply\" \"google.com\")) ((\"Gmail Team\" NIL \"mail-noreply\"
982
+ \"google.com\")) ((\"Gmail Team\" NIL \"mail-noreply\" \"google.com\")) ((\"John
983
+ Doe\" NIL \"ki0zvkyi1yzgy7xu4f4dh46nqrcecm\" \"gmail.com\")) NIL NIL NIL \"<CACNRAYKakHOCaxin=3D-9QAC=GRQgDae66vLpwqPQC6rDAJK2w@mail.gmail.com>\")
984
+ BODY[] {6915}\r\nMIME-Version: 1.0\r\nx-no-auto-attachment: 1\r\nReceived:
985
+ by 10.70.87.10; Wed, 14 Jan 2015 21:03:01 -0800 (PST)\r\nDate: Wed, 14 Jan
986
+ 2015 21:03:01 -0800\r\nMessage-ID: <CACNRAYKakHOCaxin=3D-9QAC=GRQgDae66vLpwqPQC6rDAJK2w@mail.gmail.com>\r\nSubject:
987
+ Three tips to get the most out of Gmail\r\nFrom: Gmail Team <mail-noreply@google.com>\r\nTo:
988
+ John Doe <ki0zvkyi1yzgy7xu4f4dh46nqrcecm@gmail.com>\r\nContent-Type: multipart/alternative;
989
+ boundary=bcaec51dcff73ca5e9050ca9c59a\r\n\r\n--bcaec51dcff73ca5e9050ca9c59a\r\nContent-Type:
990
+ text/plain; charset=UTF-8\r\nContent-Transfer-Encoding: quoted-printable\r\n\r\n
991
+ Three tips to get the most out of Gmail\r\n[image: Google]\r\n\r\nHi John\r\n\r\nTips
992
+ to get the most out of Gmail\r\n\r\n[image: Contacts]\r\nBring your contacts
993
+ and mail into Gmail\r\n\r\nOn your computer, you can copy your contacts and
994
+ emails from your old email\r\naccount to make the transition to Gmail even
995
+ better. Learn how\r\n<https://support.google.com/mail/answer/164640?hl=3Den&ref_topic=3D1669014>=\r\n.\r\n[image:
996
+ Search]\r\nFind what you need fast\r\n\r\nWith the power of Google Search
997
+ right in your inbox, it's easy to sort your\r\nemail. Find what you're looking
998
+ for with predictions based on email\r\ncontent, past searches and contacts.\r\n[image:
999
+ Search]\r\nMuch more than email\r\n\r\nYou can send text messages and make
1000
+ video calls with Hangouts\r\n<https://www.google.com/intl/en/hangouts/> right
1001
+ from Gmail. To use this\r\nfeature on mobile, download the Hangouts app for
1002
+ Android\r\n<https://play.google.com/store/apps/details?id=3Dcom.google.android.talk&hl=\r\n=3Den>\r\nand
1003
+ Apple <https://itunes.apple.com/en/app/hangouts/id643496868?mt=3D8>\r\ndevices.\r\n\r\n\r\n[image:
1004
+ Gmail icon]Happy emailing,\r\nThe Gmail Team\r\n =C2=A9 2015 Google Inc. 1600
1005
+ Amphitheatre Parkway, Mountain View, CA 94043\r\n\r\n--bcaec51dcff73ca5e9050ca9c59a\r\nContent-Type:
1006
+ text/html; charset=UTF-8\r\nContent-Transfer-Encoding: quoted-printable\r\n\r\n<!DOCTYPE
1007
+ html>\r\n<html><head><meta http-equiv=3D\"content-type\" content=3D\"text/html;charset=\r\n=3DUTF-8\"
1008
+ /><title>Three tips to get the most out of Gmail</title></head><b=\r\nody
1009
+ style=3D\"background-color:#e5e5e5; margin:20px 0;\"><br /><div style=3D\"=\r\nmargin:2%;\"><div
1010
+ style=3D\"direction:ltr; text-align:left; font-family:'Open=\r\n sans','Arial',sans-serif;
1011
+ color:#444; background-color:white; padding:1.5e=\r\nm; border-radius:1em;
1012
+ box-shadow:1px -5px 8px 2px #bbb; max-width:580px; ma=\r\nrgin:2% auto 0 auto;\"><table
1013
+ style=3D\"background:white;width:100%\"><tr><td>=\r\n<div style=3D\"width:90px;
1014
+ height:54px; margin:10px auto;\"><img src=3D\"https=\r\n://services.google.com/fh/files/emails/google_logo_flat_90_color.png\"
1015
+ alt=\r\n=3D\"Google\" width=3D\"90\" height=3D\"34\"/></div><div style=3D\"width:90%;
1016
+ padd=\r\ning-bottom:10px; padding-left:15px\"><p><img alt=3D\"\" src=3D\"https://ssl.gst=\r\natic.com/accounts/services/mail/msa/gmail_icon_small.png\"
1017
+ style=3D\"display:=\r\nblock; float:left; margin-top:4px; margin-right:5px;\"/><span
1018
+ style=3D\"font-=\r\nfamily:'Open sans','Arial',sans-serif; font-weight:bold;
1019
+ font-size:small; l=\r\nine-height:1.4em\">Hi John</span></p><p><span style=3D\"font-family:'Open
1020
+ san=\r\ns','Arial',sans-serif; font-size:2.08em;\">Tips to get the most out
1021
+ of Gmail=\r\n</span><br/></p></div><p></p><div style=3D\"float:left; clear:both;
1022
+ padding:=\r\n0px 5px 10px 10px;\"><img src=3D\"https://services.google.com/fh/files/emails=\r\n/importcontacts.png\"
1023
+ alt=3D\"Contacts\" style=3D\"display:block;\"width=3D\"129\"=\r\nheight=3D\"129\"/></div><div
1024
+ style=3D\"float:left; vertical-align:middle; padd=\r\ning:10px; max-width:398px;
1025
+ float:left;\"><table style=3D\"vertical-align:midd=\r\nle;\"><tr><td style=3D\"font-family:'Open
1026
+ sans','Arial',sans-serif;\"><span st=\r\nyle=3D\"font-size:20px;\">Bring your
1027
+ contacts and mail into Gmail</span><br/>=\r\n<br/><span style=3D\"font-size:small;
1028
+ line-height:1.4em\">On your computer, y=\r\nou can copy your contacts and
1029
+ emails from your old email account to make th=\r\ne transition to Gmail even
1030
+ better. <a href=3D\"https://support.google.com/ma=\r\nil/answer/164640?hl=3Den&amp;ref_topic=3D1669014\"
1031
+ style=3D\"text-decoration:=\r\nnone; color:#15C\">Learn how</a>.</span></td></tr></table></div><div
1032
+ style=\r\n=3D\"float:left; clear:both; padding:0px 5px 10px 10px;\"><img src=3D\"https:/=\r\n/ssl.gstatic.com/mail/welcome/localized/en/welcome_search.png\"
1033
+ alt=3D\"Searc=\r\nh\" style=3D\"display:block;\"width=3D\"129\"height=3D\"129\"/></div><div
1034
+ style=3D=\r\n\"float:left; vertical-align:middle; padding:10px; max-width:398px;
1035
+ float:le=\r\nft;\"><table style=3D\"vertical-align:middle;\"><tr><td style=3D\"font-family:'=\r\nOpen
1036
+ sans','Arial',sans-serif;\"><span style=3D\"font-size:20px;\">Find what y=\r\nou
1037
+ need fast</span><br/><br/><span style=3D\"font-size:small; line-height:1.=\r\n4em\">With
1038
+ the power of Google Search right in your inbox, it's easy to sort=\r\n your
1039
+ email. Find what you're looking for with predictions based on email c=\r\nontent,
1040
+ past searches and contacts.</span></td></tr></table></div><div styl=\r\ne=3D\"float:left;
1041
+ clear:both; padding:0px 5px 10px 10px;\"><img src=3D\"https:=\r\n//ssl.gstatic.com/accounts/services/mail/msa/welcome_hangouts.png\"
1042
+ alt=3D\"S=\r\nearch\" style=3D\"display:block;\"width=3D\"129\"height=3D\"129\"/></div><div
1043
+ styl=\r\ne=3D\"float:left; vertical-align:middle; padding:10px; max-width:398px;
1044
+ floa=\r\nt:left;\"><table style=3D\"vertical-align:middle;\"><tr><td style=3D\"font-fami=\r\nly:'Open
1045
+ sans','Arial',sans-serif;\"><span style=3D\"font-size:20px;\">Much mo=\r\nre
1046
+ than email</span><br/><br/><span style=3D\"font-size:small; line-height:1=\r\n.4em\">You
1047
+ can send text messages and make video calls with <a href=3D\"https=\r\n://www.google.com/intl/en/hangouts/\"
1048
+ style=3D\"text-decoration:none; color:#=\r\n15C\">Hangouts</a> right from
1049
+ Gmail. To use this feature on mobile, download=\r\n the Hangouts app for <a
1050
+ href=3D\"https://play.google.com/store/apps/details=\r\n?id=3Dcom.google.android.talk&amp;hl=3Den\"
1051
+ style=3D\"text-decoration:none; c=\r\nolor:#15C\">Android</a> and <a href=3D\"https://itunes.apple.com/en/app/hango=\r\nuts/id643496868?mt=3D8\"
1052
+ style=3D\"text-decoration:none; color:#15C\">Apple</a=\r\n> devices.</span></td></tr></table></div><br/><br/>\r\n<div
1053
+ style=3D\"clear:both; padding-left:13px; height:6.8em;\"><table style=3D=\r\n\"width:100%;
1054
+ border-collapse:collapse; border:0\"><tr><td style=3D\"width:68p=\r\nx\"><img
1055
+ alt=3D'Gmail icon' width=3D\"49\" height=3D\"37\" src=3D\"https://ssl.gs=\r\ntatic.com/accounts/services/mail/msa/gmail_icon_large.png\"
1056
+ style=3D\"display=\r\n:block;\"/></td><td style=3D\"align:left; font-family:'Open
1057
+ sans','Arial',san=\r\ns-serif; vertical-align:bottom\"><span style=3D\"font-size:small\">Happy
1058
+ email=\r\ning,<br/></span><span style=3D\"font-size:x-large; line-height:1\">The
1059
+ Gmail =\r\nTeam</span></td></tr></table></div>\r\n</td></tr></table></div>\r\n<div
1060
+ style=3D\"direction:ltr;color:#777; font-size:0.8em; border-radius:1em;=\r\n
1061
+ padding:1em; margin:0 auto 4% auto; font-family:'Arial','Helvetica',sans-s=\r\nerif;
1062
+ text-align:center;\">=C2=A9 2015 Google Inc. 1600 Amphitheatre Parkway=\r\n,
1063
+ Mountain View, CA 94043<br/></div></div></body></html>\r\n\r\n--bcaec51dcff73ca5e9050ca9c59a--)\r\n"
1064
+ - !ruby/struct:Net::IMAP::TaggedResponse
1065
+ tag: RUBY0006
1066
+ name: OK
1067
+ data: *54
1068
+ raw_data: "RUBY0006 OK Success\r\n"