discourse/app/jobs/regular/confirm_sns_subscription.rb
2019-03-19 11:40:19 +01:00

21 lines
464 B
Ruby

module Jobs
class ConfirmSnsSubscription < Jobs::Base
sidekiq_options retry: false
def execute(args)
return unless raw = args[:raw].presence
return unless json = args[:json].presence
return unless subscribe_url = json["SubscribeURL"].presence
require "aws-sdk-sns"
return unless Aws::SNS::MessageVerifier.new.authentic?(raw)
# confirm subscription by visiting the URL
open(subscribe_url)
end
end
end