Upgrade to PubSubHubbub 0.4 (removing verify_token)
This commit is contained in:
		@@ -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
 | 
			
		||||
 
 | 
			
		||||
@@ -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)
 | 
			
		||||
 
 | 
			
		||||
@@ -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
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user