gatypes

package
v0.0.7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 12, 2021 License: MIT Imports: 5 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Apps

type Apps struct {
	ApplicationName        string `url:"an,omitempty" json:"application_name,omitempty"`
	ApplicationID          string `url:"aid,omitempty" json:"application_id,omitempty"`
	ApplicationVersion     string `url:"av,omitempty" json:"application_version,omitempty"`
	ApplicationInstallerID string `url:"aiid,omitempty" json:"application_installer_id,omitempty"`
}

Apps encapsulates information about the application sending the event

type Boolean

type Boolean bool

Boolean defines a Google Analytics boolean type.

func (*Boolean) DecodeValues added in v0.0.7

func (b *Boolean) DecodeValues(key string, v *url.Values) error

DecodeValues will pull boolean data out of an existing values structure.

func (Boolean) EncodeValues

func (b Boolean) EncodeValues(key string, v *url.Values) error

EncodeValues sets a 1 or 0 depending on the value of the boolean.

type ContentInformation

type ContentInformation struct {
	DocumentLocationURL string     `url:"dl,omitempty" json:"document_location,omitempty"`
	DocumentHostName    string     `url:"dh,omitempty" json:"document_host_name,omitempty"`
	DocumentPath        string     `url:"dp,omitempty" json:"document_path,omitempty"`
	DocumentTitle       string     `url:"dt,omitempty" json:"document_title,omitempty"`
	ScreenName          string     `url:"cd,omitempty" json:"screen_name,omitempty"`
	ContentGroup        StringList `url:"cg,omitempty" json:"content_group,omitempty"`
	LinkID              string     `url:"linkid,omitempty" json:"link_id,omitempty"`
}

ContentInformation encapsulates information about the page

type Event

type Event struct {
	EventCategory string `url:"ec,omitempty" json:"event_category,omitempty"`
	EventAction   string `url:"ea,omitempty" json:"event_action,omitempty"`
	EventLabel    string `url:"el,omitempty" json:"event_label,omitempty"`
	EventValue    int64  `url:"ev,omitempty" json:"event_value,omitempty"`
}

Event encapsulates information about a generic event

type Exception

type Exception struct {
	ExceptionDescription string  `url:"exd,omitempty" json:"exception_description,omitempty"`
	IsExceptionFatal     Boolean `url:"exf,omitempty" json:"is_exception_fatal,omitempty"`
}

Exception encapsulates information about an exception event

type Float64List added in v0.0.6

type Float64List []float64

Float64List is used to represent repeated, float values in a query string.

func (*Float64List) DecodeValues added in v0.0.7

func (l *Float64List) DecodeValues(key string, v *url.Values) error

DecodeValues will pull array data out of an existing values structure.

func (Float64List) EncodeValues added in v0.0.6

func (l Float64List) EncodeValues(key string, v *url.Values) error

EncodeValues converts the list of values to a {key}/{index+1} => value map.

type Item

type Item struct {
	TransactionID string  `url:"ti,omitempty" json:"transaction_id,omitempty"`
	ItemName      string  `url:"in,omitempty" json:"item_name,omitempty"`
	ItemPrice     float64 `url:"ip,omitempty" json:"item_price,omitempty"`
	ItemQuantity  int64   `url:"iq,omitempty" json:"item_quantity,omitempty"`
	ItemCode      string  `url:"ic,omitempty" json:"item_code,omitempty"`
	ItemCategory  string  `url:"iv,omitempty" json:"item_category,omitempty"`
}

Item encapsulates information about an item event.

type PageView

PageView encapsulates metrics for a pageview event

type Payload

type Payload struct {
	// General
	Version    string `url:"v" json:"version,omitempty"`
	TrackingID string `url:"tid" json:"tracking_id,omitempty"`

	AnonymizeIP                       Boolean `url:"aip,omitempty" json:"anonymize_ip,omitempty"`
	DisableAdvertisingPersonalization Boolean `url:"npa,omitempty" json:"disable_ad_personalization,omitempty"`
	DataSource                        string  `url:"ds,omitempty" json:"data_source,omitempty"`
	QueueTime                         int64   `url:"qt,omitempty" json:"queue_time,omitempty"`
	CacheBuster                       string  `url:"z,omitempty" json:"cache_buster,omitempty"`

	HitType           string  `url:"t" json:"hit_type,omitempty"`
	NonInteractionHit Boolean `url:"ni,omitempty" json:"non_interaction_hit,omitempty"`

	// apply to all
	Users
	SessionControl
	Apps
	CustomDimensions StringList  `url:"cd,omitempty" json:"custom_dimensions,omitempty"`
	CustomMetrics    Float64List `url:"cm,omitempty" json:"custom_metrics,omitempty"`

	// one of
	Event
	Exception
	Item
	Social
	Timing
	Transaction
	PageView
	ScreenView
}

Payload represent a ping payload you can send to Google Analytics.

type ScreenView

ScreenView encapsulates metrics for a screenview event

type SessionControl

type SessionControl struct {
	SessionControl    string `url:"sc,omitempty" json:"session_control,omitempty"`
	OverrideIP        string `url:"uip,omitempty" json:"override_ip,omitempty"`
	OverrideUserAgent string `url:"ua,omitempty" json:"override_user_agent,omitempty"`
	OverrideGeography string `url:"geoid,omitempty" json:"override_geography,omitempty"`
}

SessionControl gives uses the ability to control session data

type Social

type Social struct {
	SocialNetwork      string `url:"sn,omitempty" json:"social_network,omitempty"`
	SocialAction       string `url:"sa,omitempty" json:"social_action,omitempty"`
	SocialActionTarget string `url:"st,omitempty" json:"social_action_target,omitempty"`
}

Social encapsulates fields on a social event

type StringList added in v0.0.6

type StringList []string

StringList is used to represent repeated, string values in a query string.

func (*StringList) DecodeValues added in v0.0.7

func (l *StringList) DecodeValues(key string, v *url.Values) error

DecodeValues will pull array data out of an existing values structure.

func (StringList) EncodeValues added in v0.0.6

func (l StringList) EncodeValues(key string, v *url.Values) error

EncodeValues converts the list of values to a key => value map.

type SystemInformation

type SystemInformation struct {
	ScreenResolution string `url:"sr,omitempty" json:"screen_resolution,omitempty"`
	ViewPortSize     string `url:"vp,omitempty" json:"view_port_size,omitempty"`
	DocumentEncoding string `url:"de,omitempty" json:"document_encoding,omitempty"`
	ScreenColors     string `url:"sd,omitempty" json:"screen_colors,omitempty"`
	UserLanguage     string `url:"ul,omitempty" json:"user_language,omitempty"`
	JavaEnabled      bool   `url:"je,omitempty" json:"java_enabled,omitempty"`
	FlashVersion     string `url:"fl,omitempty" json:"flash_version,omitempty"`
}

SystemInformation encapsulates information about the system

type Timing

type Timing struct {
	UserTimingCategory     string `url:"utc,omitempty" json:"user_timing_category,omitempty"`
	UserTimingVariableName string `url:"utv,omitempty" json:"user_timing_variable_name,omitempty"`
	UserTimingTime         int64  `url:"utt,omitempty" json:"user_timing_time,omitempty"`
	UserTimingLabel        string `url:"utl,omitempty" json:"user_timing_label,omitempty"`
	PageLoadTime           int64  `url:"plt,omitempty" json:"page_load_time,omitempty"`
	DNSTime                int64  `url:"dns,omitempty" json:"dns_time,omitempty"`
	PageDownloadTime       int64  `url:"pdt,omitempty" json:"page_download_time,omitempty"`
	RedirectResponseTime   int64  `url:"rrt,omitempty" json:"redirect_response_time,omitempty"`
	TCPConnectTime         int64  `url:"tcp,omitempty" json:"tcp_connect_time,omitempty"`
	ServerResponseTime     int64  `url:"srt,omitempty" json:"server_response_time,omitempty"`
	DOMInteractiveTime     int64  `url:"dit,omitempty" json:"dom_interactive_time,omitempty"`
	ContentLoadTime        int64  `url:"clt,omitempty" json:"content_load_time,omitempty"`
}

Timing encapsulates data available on a timing event

type TrafficSources

type TrafficSources struct {
	DocumentReferrer   string `url:"dr,omitempty" json:"document_referrer,omitempty"`
	CampaignName       string `url:"cn,omitempty" json:"campaign_name,omitempty"`
	CampaignSource     string `url:"cs,omitempty" json:"campaign_source,omitempty"`
	CampaignMedium     string `url:"cm,omitempty" json:"campaign_medium,omitempty"`
	CampaignKeyword    string `url:"ck,omitempty" json:"campaign_keyword,omitempty"`
	CampaignContent    string `url:"cc,omitempty" json:"campaign_content,omitempty"`
	CampaignID         string `url:"ci,omitempty" json:"campaign_id,omitempty"`
	GoogleAdsID        string `url:"gclid,omitempty" json:"google_ads_id,omitempty"`
	GoogleDisplayAdsID string `url:"dclid,omitempty" json:"google_display_ads_id,omitempty"`
}

TrafficSources encapsulates information about the system

type Transaction

type Transaction struct {
	TransactionID          string  `url:"ti,omitempty" json:"transaction_id,omitempty"`
	TransactionAffiliation string  `url:"ta,omitempty" json:"transaction_affiliation,omitempty"`
	TransactionRevenue     float64 `url:"tr,omitempty" json:"transaction_revenue,omitempty"`
	TransactionShipping    float64 `url:"ts,omitempty" json:"transaction_shipping,omitempty"`
	TransactionTax         float64 `url:"tt,omitempty" json:"transaction_tax,omitempty"`
}

Transaction encapsulates fields on a transaction event

type Users

type Users struct {
	ClientID string `url:"cid,omitempty" json:"client_id,omitempty"`
	UserID   string `url:"uid,omitempty" json:"user_id,omitempty"`
}

Users encapsulates information about the user performing an action

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL