Gabba
Simple class to send custom server-side events to Google Analytics
Heavily influenced by the serversidegoogleanalytics project.
Examples
Track page views
Gabba::Gabba.new("UT-1234", "mydomain.com").page_view("something", "track/me")
Track custom events
Gabba::Gabba.new("UT-1234", "mydomain.com").event("Videos", "Play", "ID", "123", true)
Works with existing client-side Google Analytics cookies
gabba = Gabba::Gabba.new("UT-1234", "mydomain.com")
# grab the __utma and (optionally) __utmz unique identifiers
gabba.identify_user(cookies[:__utma], cookies[:__utmz])
# trigger actions as normal
gabba.page_view("something", "track/me")
Setting custom vars
# Index: 1 through 50
index = 1
# Scope: VISITOR, SESSION or PAGE
scope = Gabba::Gabba::VISITOR
# Set var
gabba.set_custom_var(index, 'Name', 'Value', scope)
# Track the event (all vars will be included)
gabba.event(...)
# Track the page view (all vars will be included)
gabba.page_view(...)
Removing custom vars
# Index: 1 through 50
index = 1
# Delete var with this index
gabba.delete_custom_var index
Track ecommerce transactions
g = Gabba::Gabba.new("UT-6666", "myawesomeshop.net")
g.transaction("123456789", "1000.00", 'Acme Clothing', '1.29', '5.00', 'Los Angeles', 'California', 'USA')
License
Gabba is released under the MIT License.