classic_omah 0.1.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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 4f6cba23afa87e81b13125c2abcbb76014a89c4f
4
+ data.tar.gz: 81c6a70ec299eecd750b1e6f9a1f2d783ea99456
5
+ SHA512:
6
+ metadata.gz: 1b1e2656126225c538f01031448bbfbd8c5da6ab0464224a9e7734273bf717a8545d626657181aed3a0834adc375505d60b5a3305bb459fb6a1da5227f81effa
7
+ data.tar.gz: f85eac32959a209151c96fbc7d2fa670e4e16a52d7d7be74799a08272b200088540742ad5dd13806426e77427fde3d87e1df2317a11ddb7b2c1c26404160370e
checksums.yaml.gz.sig ADDED
Binary file
@@ -0,0 +1,73 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # file: classic_omah.rb
4
+
5
+ require 'mail'
6
+ require 'omah'
7
+ require 'sps-pub'
8
+
9
+ class ClassicOmah
10
+
11
+ def initialize(user: 'user', filepath: '.', mail: {}, sps: {})
12
+
13
+ @user = user
14
+ @mail = { address: '',
15
+ port: 110,
16
+ user_name: '',
17
+ password: '',
18
+ enable_ssl: false }.merge mail
19
+
20
+ field = %i(address user_name password).detect {|x| @mail[x].empty?}
21
+ return "ClassicOmah: missing %s" % field if field
22
+
23
+ @sps = SPSPub.new(address: sps[:address], port: sps[:port]) if sps
24
+
25
+ Dir.chdir filepath
26
+
27
+ end
28
+
29
+ def fetch_email()
30
+
31
+ Mail.defaults { retriever_method :pop3, @mail }
32
+
33
+ email = Mail.all
34
+ return 'no new messages' unless email.any?
35
+
36
+ messages = email.map.with_index.inject([]) do |r, x|
37
+
38
+ msg, i = x
39
+
40
+ begin
41
+ r << {
42
+ id: msg.message_id,
43
+ from: msg.from.is_a?(Array) ? msg.from.join(', ') : msg.from,
44
+ to: msg.to.is_a?(Array) ? msg.to.join(', ') : msg.to,
45
+ subject: msg.subject,
46
+ date: msg.date.to_s,
47
+ body_text: (msg.text_part ? msg.text_part.body.decoded : msg.body),
48
+ body_html: (msg.html_part ? msg.html_part.body.decoded : msg.body),
49
+ attachments: msg.attachments.map {|x| [x.filename, x.body.decoded] }
50
+ }
51
+ rescue
52
+ puts 'warning: ' + ($!).inspect
53
+ end
54
+ r
55
+
56
+ end
57
+
58
+ o = Omah.new user: @user
59
+
60
+ # messages are stored to the file dynarexdaily.xml
61
+ o.store messages
62
+
63
+ if @sps then
64
+
65
+ m = 'message'
66
+ m += 's' if messages.length > 1
67
+ @sps.notice "email/new/%s: received %s new %s" \
68
+ % [@mail[:user_name], messages.length, m]
69
+ end
70
+
71
+ Mail.delete_all
72
+ end
73
+ end
data.tar.gz.sig ADDED
@@ -0,0 +1 @@
1
+ =،-Fs���j��!��'��H%��F�3��re�Sn��M���!(#w�!@�������4��&�� �+�� &If��?9���<è>w}�8-�����‚(�;ho: ��k��32��ce)��꛺ڿAs�������e���j��J����w�m4y��O��C���?�u<đ���g�����eD���*�)L��`���hF|A��M�9��3�Z3����J��g5�3)��[�Ʒo��V
metadata ADDED
@@ -0,0 +1,127 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: classic_omah
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - James Robertson
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain:
11
+ - |
12
+ -----BEGIN CERTIFICATE-----
13
+ MIIDljCCAn6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBIMRIwEAYDVQQDDAlnZW1t
14
+ YXN0ZXIxHjAcBgoJkiaJk/IsZAEZFg5qYW1lc3JvYmVydHNvbjESMBAGCgmSJomT
15
+ 8ixkARkWAmV1MB4XDTE1MDUyMzEzNDI1NVoXDTE2MDUyMjEzNDI1NVowSDESMBAG
16
+ A1UEAwwJZ2VtbWFzdGVyMR4wHAYKCZImiZPyLGQBGRYOamFtZXNyb2JlcnRzb24x
17
+ EjAQBgoJkiaJk/IsZAEZFgJldTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
18
+ ggEBAKlUJnQ7WNhfGa633Mqro3vaKC3/vHgfBN62jISqVRxQYX7srrdDTJsXzVZB
19
+ gNMQQLr0QsclxaeCGlQcPplRW3Wlt+dmmu/qEmj8tr+/fTxES6ABR/iIKJDHFD3G
20
+ VNhi1q5eh3bdYbvb3HRzzwwBXenysR5p+4jbJeR4pWDakeOdMzNj1Imu2yoYw6W2
21
+ 6JbNJ0qVQeL6gvOwLg3uK72w8XgkouSm3oGEn/xz8ZZljDvtAWFvgxKpjBGCpjm3
22
+ XL1sV7yHglW11qqCZV9wEbmtCjwYS1fzSaGLqwt2wJj/g5em4iSAcW+9IGiNEhLy
23
+ lXxQtYqv/1Gg6zUOmGXcK0nFEM8CAwEAAaOBijCBhzAJBgNVHRMEAjAAMAsGA1Ud
24
+ DwQEAwIEsDAdBgNVHQ4EFgQUIADQz5rLc83wFV9fg+QhwToXUC0wJgYDVR0RBB8w
25
+ HYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1h
26
+ c3RlckBqYW1lc3JvYmVydHNvbi5ldTANBgkqhkiG9w0BAQUFAAOCAQEAFgHWZLoM
27
+ 0Hr5tbD9QT3vnt9NImQjpI1zgdUaH3x2cEOHOV7+9T9HAenmIUmLhuVIZ4ArJ03N
28
+ fLHm/4a+abwIEScy7GLDk5DC8YquKx/i7gNlDWYHqnQXbPSax7M5v5YMmkpkEjiQ
29
+ 0K8FnmPz3hk5fSCpSJ1PRZsN1zczpwKo0wuigHI0+jwMHUsHEaDQArt7YNWaa9V6
30
+ JrihenHfIB2DVOC52VeTmc3T1I56NWInPLytg7kSm3Dhawei0EwFfLgHQsEQKZL9
31
+ ec/o5SQ4bMXwc9ifCfznclsHqFNg5+AV+ouKowZ+9UzxZmMdRDrfIxEgij7oXLH9
32
+ E8HCtMzl8FkVLw==
33
+ -----END CERTIFICATE-----
34
+ date: 2015-05-23 00:00:00.000000000 Z
35
+ dependencies:
36
+ - !ruby/object:Gem::Dependency
37
+ name: omah
38
+ requirement: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - "~>"
41
+ - !ruby/object:Gem::Version
42
+ version: '0.4'
43
+ - - ">="
44
+ - !ruby/object:Gem::Version
45
+ version: 0.4.0
46
+ type: :runtime
47
+ prerelease: false
48
+ version_requirements: !ruby/object:Gem::Requirement
49
+ requirements:
50
+ - - "~>"
51
+ - !ruby/object:Gem::Version
52
+ version: '0.4'
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ version: 0.4.0
56
+ - !ruby/object:Gem::Dependency
57
+ name: mail
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - "~>"
61
+ - !ruby/object:Gem::Version
62
+ version: '2.6'
63
+ - - ">="
64
+ - !ruby/object:Gem::Version
65
+ version: 2.6.3
66
+ type: :runtime
67
+ prerelease: false
68
+ version_requirements: !ruby/object:Gem::Requirement
69
+ requirements:
70
+ - - "~>"
71
+ - !ruby/object:Gem::Version
72
+ version: '2.6'
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: 2.6.3
76
+ - !ruby/object:Gem::Dependency
77
+ name: sps-pub
78
+ requirement: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '0.4'
83
+ - - ">="
84
+ - !ruby/object:Gem::Version
85
+ version: 0.4.0
86
+ type: :runtime
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ requirements:
90
+ - - "~>"
91
+ - !ruby/object:Gem::Version
92
+ version: '0.4'
93
+ - - ">="
94
+ - !ruby/object:Gem::Version
95
+ version: 0.4.0
96
+ description:
97
+ email: james@r0bertson.co.uk
98
+ executables: []
99
+ extensions: []
100
+ extra_rdoc_files: []
101
+ files:
102
+ - lib/classic_omah.rb
103
+ homepage: https://github.com/jrobertson/classic_omah
104
+ licenses:
105
+ - MIT
106
+ metadata: {}
107
+ post_install_message:
108
+ rdoc_options: []
109
+ require_paths:
110
+ - lib
111
+ required_ruby_version: !ruby/object:Gem::Requirement
112
+ requirements:
113
+ - - ">="
114
+ - !ruby/object:Gem::Version
115
+ version: '0'
116
+ required_rubygems_version: !ruby/object:Gem::Requirement
117
+ requirements:
118
+ - - ">="
119
+ - !ruby/object:Gem::Version
120
+ version: '0'
121
+ requirements: []
122
+ rubyforge_project:
123
+ rubygems_version: 2.4.6
124
+ signing_key:
125
+ specification_version: 4
126
+ summary: classic_omah
127
+ test_files: []
metadata.gz.sig ADDED
Binary file