class GAEvents
collection of events
Constants
- BULK_URI
- COLLECT_URI
Attributes
api_key[RW]
Public Class Methods
send_event(event)
click to toggle source
# File lib/gaevents.rb, line 13 def send_event(event) resource = RestClient::Resource.new COLLECT_URI resource.post(track_body([event]), content_type: 'text/plain') end
track(events)
click to toggle source
takes Array of Event
as parameter
# File lib/gaevents.rb, line 19 def track(events) # as per GA: A maximum of 20 hits can be specified per request # https://developers.google.com/analytics/devguides/collection/protocol/v1/devguide#batch res = [] events.each_slice(20) do |events_slice| resource = RestClient::Resource.new BULK_URI res << resource.post(track_body(events_slice.compact), content_type: 'text/plain') end res end
track_body(*events)
click to toggle source
# File lib/gaevents.rb, line 30 def track_body(*events) events.flatten.map(&:payload).join("\n") end