Sha256: adc490106d03c8044ddab667360341370764b797fe57dbac7a518b63804295b1

Contents?: true

Size: 803 Bytes

Versions: 2

Compression:

Stored size: 803 Bytes

Contents

# frozen_string_literal: true

class GAEvents
	 # Class to define analytical events
	 # expected attributes: tid, cid and t
	 class Event
 		 attr_accessor :params

 		 # Initialize Events by passing a hash.
 		 # Keys could be any GA allowed parameter.
 		 # Please refer Measurement Protocol Parameter Reference for available options:
 		 # https://developers.google.com/analytics/devguides/collection/protocol/v1/parameters

 		 # As per Measurement Protocol, parameters: v, tid, cid and t should always be present.
 		 # This gem automatically injects v. Ensure you always pass tid, cid and t while
 		 # initializing events.
 		 def initialize(hash = {})
  			 @params = hash.select { |_k, v| v }
  			 @params['v'] = 1
  		end

 		 def payload
  			 URI.encode_www_form(@params)
  		end
 	end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
gaevents-1.04 lib/gaevents/event.rb
gaevents-1.03 lib/gaevents/event.rb