-
Init
Analytics(trackingID, { userAgent, debug, version })
import Analytics from 'google-analytics-electron'
const analytics = new Analytics('UA-XXXXXXXX-X')
-
Pageview
Analytics#pageview(hostname, url, title)
return analytics.pageview('http://example.com', '/home', 'Example')
.then((response) => {
return response
})
.catch((err) => {
return err
})
If you want to keep the session you need to specify the clientID
.
-
Event
Analytics#event(evCategory, evAction, { evLabel, evValue })
const analytics = new Analytics('UA-XXXXXXXX-X', { clientID: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx' })
return analytics.event('Video', 'play', { evLabel: 'holiday', evValue: 300})
.then((response) => {
return response
})
.catch((err) => {
return err
})
-
Screenview
Analytics#screen(screenName)
const analytics = new Analytics('UA-XXXXXXXX-X', {
appName: 'test',
appVersion: '1.0.0',
appID: 'com.app.test',
appInstallerID:'com.app.installer'
})
return analytics.screen('Test')
.then((response) => {
return response
})
.catch((err) => {
return err
})
-
Transaction
Analytics#transaction(trnID, { trnAffil, trnRev, trnShip, trnTax, currCode } = {})
return analytics.transaction(123)
.then((response) => {
return response
})
.catch((err) => {
return err
})
-
Social
Analytics#social(socialAction, socialNetwork, socialTarget)
return analytics.social('like', 'facebook', 'home')
.then((response) => {
return response
})
.catch((err) => {
return err
})
-
Exception
Analytics#exception(exDesc, exFatal)
return analytics.exception('IOException', 1)
.then((response) => {
return response
})
.catch((err) => {
return err
})
-
Refund
Analytics#refund(transactionID, evCategory = 'Ecommerce', evAction = 'Refund', nonInteraction = 1)
return analytics.refund('T123')
.then((response) => {
return response
})
.catch((err) => {
return err
})
-
Item
Analytics#item(trnID, itemName, { itemPrice, itemQty, itemSku, itemVariation, currCode } = {})
return analytics.item('123', 'Test item')
.then((response) => {
return response
})
.catch((err) => {
return err
})
-
User Timing Tracking
Analytics#timingTrk(timingCtg, timingVar, timingTime, { timingLbl, dns, pageDownTime, redirTime, tcpConnTime, serverResTime } = {})
return analytics.timingTrk('Category', 'jsonLoader', 123)
.then((response) => {
return response
})
.catch((err) => {
return err
})
-
Send (for everything else for now)
Analytics#send(hitType, params)
return analytics.send('social', { sa: 'social', sn: 'facebook', st: 'home' })
.then((response) => {
return response
})
.catch((err) => {
return err
})