0
0
Fork 0

Upgrade to PubSubHubbub 0.4 (removing verify_token)

This commit is contained in:
Eugen Rochko 2016-09-20 02:43:20 +02:00
parent a86f21cf90
commit 608a2bfffc
9 changed files with 19 additions and 19 deletions

View file

@ -3,7 +3,7 @@ class Api::SubscriptionsController < ApiController
respond_to :txt
def show
if @account.subscription(api_subscription_url(@account.id)).valid?(params['hub.topic'], params['hub.verify_token'])
if @account.subscription(api_subscription_url(@account.id)).valid?(params['hub.topic'])
@account.update(subscription_expires_at: Time.now + (params['hub.lease_seconds'].to_i).seconds)
render plain: HTMLEntities.new.encode(params['hub.challenge']), status: 200
else

View file

@ -66,7 +66,7 @@ class Account < ApplicationRecord
end
def subscribed?
!(self.secret.blank? || self.verify_token.blank?)
!self.subscription_expires_at.nil?
end
def favourited?(status)
@ -82,7 +82,7 @@ class Account < ApplicationRecord
end
def subscription(webhook_url)
OStatus2::Subscription.new(self.remote_url, secret: self.secret, token: self.verify_token, webhook: webhook_url, hub: self.hub_url)
OStatus2::Subscription.new(self.remote_url, secret: self.secret, lease_seconds: 86400 * 30, webhook: webhook_url, hub: self.hub_url)
end
def ping!(atom_url, hubs)

View file

@ -1,15 +1,12 @@
class SubscribeService < BaseService
def call(account)
account.secret = SecureRandom.hex
account.verify_token = SecureRandom.hex
account.secret = SecureRandom.hex
subscription = account.subscription(api_subscription_url(account.id))
response = subscription.subscribe
unless response.successful?
account.secret = ''
account.verify_token = ''
account.secret = ''
Rails.logger.debug "PuSH subscription request for #{account.acct} failed: #{response.message}"
end