class AnalyticsEventsSender::Appsflyer

Constants

BASE_URL

Public Instance Methods

call() click to toggle source
# File lib/analytics_events_sender/appsflyer.rb, line 11
def call
  return false unless @user.appsflyer_id

  api_key = AnalyticsEventsSender.configuration.appsflyer.dig(:api_key)
  response = HTTParty.post(BASE_URL, body: event_params, headers: { authentication: api_key })

  return false unless response.success?
end
ininialize(user, params = {}) click to toggle source
# File lib/analytics_events_sender/appsflyer.rb, line 5
def ininialize(user, params = {})
  @user = user
  @params = params
  @event_name = params.dig(:notification_type)
end

Private Instance Methods

complete_url() click to toggle source
# File lib/analytics_events_sender/appsflyer.rb, line 22
def complete_url
  app_id = AnalyticsEventsSender.configuration.appsflyer.dig(:app_id)
  "#{base_ur}/#{app_id}"
end
event_params() click to toggle source
# File lib/analytics_events_sender/appsflyer.rb, line 34
def event_params
  {
    event_name: @event_name,
    event_value: "#{@params.transform_values { |v| v.to_s }}",
    event_time: @event_time
  }.transform_keys { |key| key.to_s.split('_').map(&:capitalize).join }
   .transform_values { |v| v.to_s }
end
prepated_params() click to toggle source
# File lib/analytics_events_sender/appsflyer.rb, line 27
def prepated_params
  customer_params = {
    appsflyer_id: @user.appsflyer_id, customer_user_id: @user.id, af_events_api: true
  }
  customer_params.merge(event_params).to_json
end