a6c609f43d
Ability to configure Whatsapp Cloud API Inboxes fixes: #4712
20 lines
630 B
Ruby
20 lines
630 B
Ruby
# services from Meta (Prev: Facebook) needs a token verification step for webhook subscriptions,
|
|
# This concern handles the token verification step.
|
|
|
|
module MetaTokenVerifyConcern
|
|
def verify
|
|
service = is_a?(Webhooks::WhatsappController) ? 'whatsapp' : 'instagram'
|
|
if valid_token?(params['hub.verify_token'])
|
|
Rails.logger.info("#{service.capitalize} webhook verified")
|
|
render json: params['hub.challenge']
|
|
else
|
|
render status: :unauthorized, json: { error: 'Error; wrong verify token' }
|
|
end
|
|
end
|
|
|
|
private
|
|
|
|
def valid_token?(_token)
|
|
raise 'Overwrite this method your controller'
|
|
end
|
|
end
|