Separate PuSH subscriptions from following, add mastodon:push:refresh task,
respect hub.lease_seconds (fix #46)
This commit is contained in:
parent
1245ee42fb
commit
059ebbf48d
10 changed files with 77 additions and 43 deletions
20
app/services/subscribe_service.rb
Normal file
20
app/services/subscribe_service.rb
Normal file
|
@ -0,0 +1,20 @@
|
|||
class SubscribeService < BaseService
|
||||
def call(account)
|
||||
account.secret = SecureRandom.hex
|
||||
account.verify_token = SecureRandom.hex
|
||||
|
||||
subscription = account.subscription(api_subscription_url(account.id))
|
||||
response = subscription.subscribe
|
||||
|
||||
unless response.successful?
|
||||
account.secret = ''
|
||||
account.verify_token = ''
|
||||
|
||||
Rails.logger.debug "PuSH subscription request for #{account.acct} failed: #{response.message}"
|
||||
end
|
||||
|
||||
account.save!
|
||||
rescue HTTP::Error, OpenSSL::SSL::SSLError
|
||||
Rails.logger.debug "PuSH subscription request for #{account.acct} could not be made due to HTTP or SSL error"
|
||||
end
|
||||
end
|
Loading…
Add table
Add a link
Reference in a new issue