mns_subscriber 0.4.7 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 6078aee91bc1f7f20e1215a01bfee36705059da2
4
- data.tar.gz: b8dd4d9d9b6d1d455e88fa2e41dda858eb0d71c4
2
+ SHA256:
3
+ metadata.gz: 55df9bad963044ed01313c1c749b43e8ae3d746a9107dbb3bb9c9ff938837f91
4
+ data.tar.gz: 706bda2bdeba756c74e945f0b73f810de3c7cadef841f48692e80ca17a53dc8a
5
5
  SHA512:
6
- metadata.gz: 605ecfd65c34a8f993c82f6accdfe5bb694ea1ac92f5ec8311d0e842f15d720418a4065e1c83ceabd869c824a953d144212e7f6a9780d86289384cbf148b20f4
7
- data.tar.gz: f18903b938fd8b80bc46f5fed47aca7aecff6d3cbbd86214784a3bb5ffa70d2578ffa27b3a9d991bd16fdbb4f1b8642bcb9da92ad7c5afc3eb49a164217e9c3c
6
+ metadata.gz: 7ddd48242e49bc872922772f622c4f3f33e32718a8b4e09b880506a9f1b8be3c074428620757e8fa32b2af6db32123846b896019050b80fa412e6e448f784bc5
7
+ data.tar.gz: 79b6e558a22ba819116dffac11a1c873a8d5982730f2f0f2159cde9cecd109e673e4c300d4386c4f435f07104215007f5bbc1c405bdaa8713e37b7dda550647f
checksums.yaml.gz.sig CHANGED
Binary file
data.tar.gz.sig CHANGED
Binary file
@@ -12,7 +12,10 @@ require 'recordx_sqlite'
12
12
  class MNSSubscriber < SPSSub
13
13
 
14
14
  def initialize(host: 'sps', port: 59000, dir: '.', options: {},
15
- timeline: nil)
15
+ timeline: nil, log: nil)
16
+
17
+ @log = log
18
+ log.info 'mns_subscriber/initialize: active' if log
16
19
 
17
20
  # note: a valid url_base must be provided
18
21
 
@@ -24,7 +27,7 @@ class MNSSubscriber < SPSSub
24
27
  target_xslt: '/xsl/page.xsl'
25
28
  }.merge(options)
26
29
 
27
- super(host: host, port: port)
30
+ super(host: host, port: port, log: log)
28
31
  @filepath, @timeline = dir, timeline
29
32
 
30
33
  @index = nil
@@ -38,6 +41,8 @@ class MNSSubscriber < SPSSub
38
41
  private
39
42
 
40
43
  def ontopic(topic, msg)
44
+
45
+ @log.info 'mns_subscriber/ontopic: topic: ' + topic.inspect if @topic
41
46
 
42
47
  a = topic.split('/')
43
48
  puts "%s: %s %s" % [topic, Time.now.to_s, msg.inspect]
@@ -57,6 +62,10 @@ class MNSSubscriber < SPSSub
57
62
 
58
63
  update_attributes(:title, subtopic=a[-2], title=msg)
59
64
 
65
+ when :image
66
+
67
+ update_attributes(:image, subtopic=a[-2], title=msg)
68
+
60
69
  when :delete
61
70
 
62
71
  delete_notice(subtopic=a[-2], msg)
@@ -72,26 +81,45 @@ class MNSSubscriber < SPSSub
72
81
 
73
82
  def add_notice(topic, raw_msg, raw_id=Time.now)
74
83
 
84
+ @log.info 'mns_subscriber/add_notice: active' if @log
75
85
  topic_dir = File.join(@filepath, topic)
76
86
  notices = DailyNotices.new topic_dir, @options.merge(identifier: topic,
77
- title: topic.capitalize + ' daily notices')
87
+ title: topic.capitalize + ' daily notices', log: @log)
78
88
 
79
89
  id = (raw_id || Time.now).to_i
80
90
 
81
91
  # strip out any JSON from the end of the message
82
92
  msg, raw_json = raw_msg.split(/(?=\{.*)/)
83
93
 
94
+ mtlite = MTLite.new(msg)
95
+
96
+ desc = if mtlite.to_html(para: false) =~ /<\w+/ then
97
+ mtlite.to_html(para: true, ignore_domainlabel:true)
98
+ else
99
+ mtlite.to_s
100
+ end
101
+
102
+ title = mtlite.to_s.lines.first.chomp
103
+ title = title[0..136] + ' ...' if title.length > 140
104
+
84
105
  h = {
85
- description: MTLite.new(msg).to_html,
106
+ title: title,
107
+ description: desc,
86
108
  topic: topic
87
109
  }
110
+
88
111
  return_status = notices.add(item: h, id: id.to_s)
89
112
 
90
113
  return if return_status == :duplicate
91
114
 
92
115
  rxnotices = RecordxSqlite.new(File.join(topic_dir, 'notices.db'),
93
116
  table: {notices: {id: 0, message: ''}})
94
- rxnotices.create id: id.to_s, message: msg
117
+
118
+ begin
119
+ rxnotices.create id: id.to_s, message: msg
120
+ rescue
121
+ puts 'warning: rxnotices.create -> ' + ($!).inspect
122
+ end
95
123
 
96
124
  if raw_json then
97
125
 
@@ -154,4 +182,4 @@ class MNSSubscriber < SPSSub
154
182
 
155
183
  end
156
184
 
157
- end
185
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mns_subscriber
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.7
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -10,49 +10,53 @@ bindir: bin
10
10
  cert_chain:
11
11
  - |
12
12
  -----BEGIN CERTIFICATE-----
13
- MIIDljCCAn6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBIMRIwEAYDVQQDDAlnZW1t
14
- YXN0ZXIxHjAcBgoJkiaJk/IsZAEZFg5qYW1lc3JvYmVydHNvbjESMBAGCgmSJomT
15
- 8ixkARkWAmV1MB4XDTE2MTExMjEzMjQxNFoXDTE3MTExMjEzMjQxNFowSDESMBAG
16
- A1UEAwwJZ2VtbWFzdGVyMR4wHAYKCZImiZPyLGQBGRYOamFtZXNyb2JlcnRzb24x
17
- EjAQBgoJkiaJk/IsZAEZFgJldTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
18
- ggEBAMqFKnOPj+Kvhml9lNrIzC2gky+FnaKMe2WdsJV4vjPJmdzDEXLQSiUgCVPK
19
- S+0dqi6Z3oM70oxcC8v6VAD/dqM4HTriOK4Nv1JPw9T+BgYqHGouK3lZreNw4wVV
20
- estB6K5HbD37Gxk6uPWxcmkODCZDLPDBEllLa8NH88uz4shWl24/i+9wxLwNnipb
21
- tn2vLTKsfFKdqLWqmayBXhTEhfc70bBhmX5ZzchZi+Vsv7s69QHRWrmxT62D5O6Q
22
- +qOWwFuZ/6Z7yFpjJmIfygkj/x+V8X8fQUGjDOqDT/uYFy9XvI+p5JkT07GsP5PX
23
- E+7hp0eUkeclVrTyAKG7TkfkrYUCAwEAAaOBijCBhzAJBgNVHRMEAjAAMAsGA1Ud
24
- DwQEAwIEsDAdBgNVHQ4EFgQUxf5o+IcWWZwAdWo1fmsk6kSdNz4wJgYDVR0RBB8w
25
- HYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1h
26
- c3RlckBqYW1lc3JvYmVydHNvbi5ldTANBgkqhkiG9w0BAQUFAAOCAQEAkpQ4ktXo
27
- B8riOdNUzvVlDquhwrFZwl8eWe/A5jTcXY9mYCPnzt7rp7gaMLENU54nK2e45U0Q
28
- tw6jmHbp+1gfXuul+tVro6wZ/M1WBiotQfgzEPAtMENm/Jqs5BqUsa/BQwzRBBjM
29
- EychMLNZt6rP/b1sOZ3RODk3OsZ0whwMBzNNR/h20qnAd0q5Y6I++xHFoW2mwjJ7
30
- NLA6oOgvCF/KXGNlj7vHzhzzWsFGlEIawFhzvbQ9C4eJoAwFSrrzH+RvD1sMpq2Y
31
- wBAv1HG6hlSk9BepsW4e+NbsgNYQdx0NkPtppfh502tww8DydLyWZNnEte5tAbjg
32
- mBoofo/5xUxN5A==
13
+ MIIEXjCCAsagAwIBAgIBATANBgkqhkiG9w0BAQsFADAsMSowKAYDVQQDDCFnZW1t
14
+ YXN0ZXIvREM9amFtZXNyb2JlcnRzb24vREM9ZXUwHhcNMjEwMjI0MTMzNzMzWhcN
15
+ MjIwMjI0MTMzNzMzWjAsMSowKAYDVQQDDCFnZW1tYXN0ZXIvREM9amFtZXNyb2Jl
16
+ cnRzb24vREM9ZXUwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQCrXfm/
17
+ AwR/iY/kgH1QAHFOBfSTgEBjHDUxgQl7Z3+43Tc8UMifQIWh4opLpzwcazVtrOB7
18
+ O2hXRNG9M1Dy1bRSOBSsiKSlDtfcqXfLmGKQGczMK+i2x8TTty4Vc3NPOjQlHaCt
19
+ 3KRPi/JiQ7OT+atmEEkfiDOWY5IpNHGiz93Q2L0+xUvp1fKtVedxeB/+kxuaP+C5
20
+ 3YbxJ2jVRldAe0QA9zM9YITTLe/xoiHS0LpPmtIk+4wNOK/vPh2u+p/BX9PbWiGO
21
+ 3KWzMuyCvtqDNXHdjEJ5KazWkL2By2k64eRVUuPHne8R4LYm3Ik3VfO/H759fdP3
22
+ Ap/L5pUprYRiq1NFBW5Ex3orjuCX/P887tahVho+RN8iUtkhMlQdk0uSRO8KP5Vz
23
+ kU09eIZ7o7JjftQliJ5+8O/hmtvCxXw1eystEVKJW32COaqFgLsM206ncMq4flTZ
24
+ 5mU2/Cwz7SxWQQe0cIzTH+o1pejIS83IRRMgHEtgyki0yUKDcoZVhvNujrMCAwEA
25
+ AaOBijCBhzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQU0a7RWUQ4
26
+ bjy71dOj2inlBZ1u+NIwJgYDVR0RBB8wHYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0
27
+ c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1hc3RlckBqYW1lc3JvYmVydHNvbi5ldTAN
28
+ BgkqhkiG9w0BAQsFAAOCAYEANZXVYK9Ut5FWc27EOT5ajSB/DVW6GXUMWGXNVLll
29
+ x6o5OX9r4xHlINGsTEI4q01kCBQsJCjQKNFOrUss+TsEFgXremusnniPwypvoCZh
30
+ JAmmUktsIKuKmgkJ6h1hhuJf6g90++v4iVvBHt53nhN8NaGYe4Oc2OwXTfxHam0X
31
+ JfCSR+Aw2QfaQvZKi8inGHgLmM61ABpIGTZ8lwzR6fizANDF6EQ7vNixJMSZExzP
32
+ s1BgeI/oTI1Y7UNeUtwWA8NkQ1bczUBH4FDUab4QRIbBYhXz+Hs8ddtugTzcmRwf
33
+ W0wI6iCh95fKaCbmSS5MY3dYMexH07A1XFGyHWOogCEWWYZ4ho+a44Fm0Uotp5ky
34
+ TjsXYJbdzlsAVQKfCSIfCi3T/k4bp/2wc342j/WYjkKLN4aZID+E9P/VX1Nc0m/s
35
+ yOAycOYzp7fxmPl3/HV5D0YOJwuy1XslA50GQJwq12A5vMyUGUCHuxH/zKZcM/zr
36
+ 0QZaKiVqq5ZeGvni0eQSavhQ
33
37
  -----END CERTIFICATE-----
34
- date: 2017-07-03 00:00:00.000000000 Z
38
+ date: 2021-02-24 00:00:00.000000000 Z
35
39
  dependencies:
36
40
  - !ruby/object:Gem::Dependency
37
41
  name: mtlite
38
42
  requirement: !ruby/object:Gem::Requirement
39
43
  requirements:
40
- - - "~>"
41
- - !ruby/object:Gem::Version
42
- version: '0.3'
43
44
  - - ">="
44
45
  - !ruby/object:Gem::Version
45
- version: 0.3.4
46
+ version: 0.4.0
47
+ - - "~>"
48
+ - !ruby/object:Gem::Version
49
+ version: '0.4'
46
50
  type: :runtime
47
51
  prerelease: false
48
52
  version_requirements: !ruby/object:Gem::Requirement
49
53
  requirements:
50
- - - "~>"
51
- - !ruby/object:Gem::Version
52
- version: '0.3'
53
54
  - - ">="
54
55
  - !ruby/object:Gem::Version
55
- version: 0.3.4
56
+ version: 0.4.0
57
+ - - "~>"
58
+ - !ruby/object:Gem::Version
59
+ version: '0.4'
56
60
  - !ruby/object:Gem::Dependency
57
61
  name: sps-sub
58
62
  requirement: !ruby/object:Gem::Requirement
@@ -62,7 +66,7 @@ dependencies:
62
66
  version: '0.3'
63
67
  - - ">="
64
68
  - !ruby/object:Gem::Version
65
- version: 0.3.5
69
+ version: 0.3.7
66
70
  type: :runtime
67
71
  prerelease: false
68
72
  version_requirements: !ruby/object:Gem::Requirement
@@ -72,47 +76,47 @@ dependencies:
72
76
  version: '0.3'
73
77
  - - ">="
74
78
  - !ruby/object:Gem::Version
75
- version: 0.3.5
79
+ version: 0.3.7
76
80
  - !ruby/object:Gem::Dependency
77
81
  name: daily_notices
78
82
  requirement: !ruby/object:Gem::Requirement
79
83
  requirements:
80
- - - "~>"
81
- - !ruby/object:Gem::Version
82
- version: '0.6'
83
84
  - - ">="
84
85
  - !ruby/object:Gem::Version
85
- version: 0.6.1
86
+ version: 0.7.0
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '0.7'
86
90
  type: :runtime
87
91
  prerelease: false
88
92
  version_requirements: !ruby/object:Gem::Requirement
89
93
  requirements:
90
- - - "~>"
91
- - !ruby/object:Gem::Version
92
- version: '0.6'
93
94
  - - ">="
94
95
  - !ruby/object:Gem::Version
95
- version: 0.6.1
96
+ version: 0.7.0
97
+ - - "~>"
98
+ - !ruby/object:Gem::Version
99
+ version: '0.7'
96
100
  - !ruby/object:Gem::Dependency
97
101
  name: recordx_sqlite
98
102
  requirement: !ruby/object:Gem::Requirement
99
103
  requirements:
100
- - - "~>"
101
- - !ruby/object:Gem::Version
102
- version: '0.2'
103
104
  - - ">="
104
105
  - !ruby/object:Gem::Version
105
- version: 0.2.6
106
+ version: 0.3.0
107
+ - - "~>"
108
+ - !ruby/object:Gem::Version
109
+ version: '0.3'
106
110
  type: :runtime
107
111
  prerelease: false
108
112
  version_requirements: !ruby/object:Gem::Requirement
109
113
  requirements:
110
- - - "~>"
111
- - !ruby/object:Gem::Version
112
- version: '0.2'
113
114
  - - ">="
114
115
  - !ruby/object:Gem::Version
115
- version: 0.2.6
116
+ version: 0.3.0
117
+ - - "~>"
118
+ - !ruby/object:Gem::Version
119
+ version: '0.3'
116
120
  description:
117
121
  email: james@jamesrobertson.eu
118
122
  executables: []
@@ -140,7 +144,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
140
144
  version: '0'
141
145
  requirements: []
142
146
  rubyforge_project:
143
- rubygems_version: 2.6.8
147
+ rubygems_version: 2.7.10
144
148
  signing_key:
145
149
  specification_version: 4
146
150
  summary: Creates microblog posts from different identities by subscribing to the SPS
metadata.gz.sig CHANGED
Binary file