Documentation ¶
Index ¶
- Constants
- type Annotation
- type App
- type Browser
- type Collector
- type Device
- type Envelope
- func BuildCloudeventEnvelopesFromRequest(c *gin.Context, conf *config.Config, m *meta.CollectorMeta) []Envelope
- func BuildGenericEnvelopesFromRequest(c *gin.Context, conf *config.Config, m *meta.CollectorMeta) []Envelope
- func BuildPixelEnvelopesFromRequest(c *gin.Context, conf *config.Config, m *meta.CollectorMeta) []Envelope
- func BuildSnowplowEnvelopesFromRequest(c *gin.Context, conf *config.Config, m *meta.CollectorMeta) []Envelope
- func BuildWebhookEnvelopesFromRequest(c *gin.Context, conf *config.Config, m *meta.CollectorMeta) []Envelope
- type EventMeta
- type Group
- type JsonbEnvelope
- type Location
- type Network
- type Os
- type PageAttrs
- type PayloadValidationError
- type Pipeline
- type Relay
- type Screen
- type Session
- type Source
- type StringEnvelope
- type Team
- type User
- type Validation
- type ValidationError
- type Web
Constants ¶
View Source
const ( VENDOR string = "vendor" NAMESPACE string = "namespace" VERSION string = "version" FORMAT string = "format" PATH string = "path" INPUT_PROTOCOL string = "inputProtocol" )
View Source
const HTTP_HEADERS_CONTEXT string = "io.silverton/buz/internal/contexts/httpHeaders/v1.0.json"
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Browser ¶
type Browser struct { Lang *string `json:"language,omitempty"` Cookies *bool `json:"cookies,omitempty"` ColorDepth *int64 `json:"colorDepth,omitempty"` Charset *string `json:"charset,omitempty"` ViewportSize *string `json:"viewportSize,omitempty"` ViewportWidth *int `json:"viewportWidth,omitempty"` ViewportHeight *int `json:"viewportHeight,omitempty"` DocumentSize *string `json:"documentSize,omitempty"` DocumentWidth *int `json:"documentWidth,omitempty"` DocumentHeight *int `json:"documentHeight,omitempty"` }
type Collector ¶
type Device ¶
type Device struct { Ip string `json:"ip"` Useragent string `json:"useragent"` Id string `json:"id"` // Server-side cookie, header, or query params Idfa *string `json:"idfa,omitempty"` // [iOS] Idfv *string `json:"idfv,omitempty"` // [iOS] AdId *string `json:"adId,omitempty"` // [Android] Google play services advertising id AndroidId *string `json:"androidId,omitempty"` // [Android] Android id AdTrackingEnabled *bool `json:"adTrackingEnabled,omitempty"` Manufacturer *string `json:"manufacturer,omitempty"` Model *string `json:"model,omitempty"` Name *string `json:"name,omitempty"` Type *string `json:"type,omitempty"` Token *string `json:"token,omitempty"` Os `json:"os,omitempty"` Browser `json:"browser,omitempty"` Screen `json:"screen,omitempty"` Network `json:"network,omitempty"` App `json:"app,omitempty"` Location `json:"location,omitempty"` Traits *map[string]interface{} `json:"traits,omitempty"` }
type Envelope ¶
type Envelope struct { db.BasePKeylessModel EventMeta `json:"eventMeta" gorm:"type:json"` Pipeline `json:"pipeline" gorm:"type:json"` Device `json:"device" gorm:"type:json"` User `json:"user" gorm:"type:json"` Session `json:"session" gorm:"type:json"` Web `json:"web" gorm:"type:json"` Annotation `json:"annotation" gorm:"type:json"` Validation `json:"validation" gorm:"type:json"` Contexts event.Contexts `json:"contexts" gorm:"type:json"` Payload event.Payload `json:"payload" gorm:"type:json"` }
func BuildPixelEnvelopesFromRequest ¶
func BuildPixelEnvelopesFromRequest(c *gin.Context, conf *config.Config, m *meta.CollectorMeta) []Envelope
NOTE - one envelope per request
type EventMeta ¶
type EventMeta struct { Protocol string `json:"protocol,omitempty"` Uuid uuid.UUID `json:"uuid,omitempty"` Vendor string `json:"vendor,omitempty"` Namespace string `json:"namespace,omitempty"` Version string `json:"version,omitempty"` Format string `json:"format,omitempty"` Schema string `json:"schema,omitempty"` }
type JsonbEnvelope ¶
type JsonbEnvelope struct { db.BasePKeylessModel EventMeta `json:"eventMeta" gorm:"type:jsonb"` Pipeline `json:"pipeline" gorm:"type:jsonb"` Device `json:"device" gorm:"type:jsonb"` User `json:"user" gorm:"type:jsonb"` Session `json:"session" gorm:"type:jsonb"` Web `json:"web" gorm:"type:jsonb"` Annotation `json:"annotation" gorm:"type:jsonb"` Validation `json:"validation" gorm:"type:jsonb"` Contexts event.Contexts `json:"contexts" gorm:"type:jsonb"` Payload event.Payload `json:"payload" gorm:"type:jsonb"` }
type PageAttrs ¶
type PageAttrs struct { Url string `json:"url,omitempty"` Title *string `json:"title,omitempty"` Scheme string `json:"scheme,omitempty"` Host string `json:"host,omitempty"` Port string `json:"port,omitempty"` Path string `json:"path,omitempty"` Query *map[string]interface{} `json:"query,omitempty"` Fragment *string `json:"fragment,omitempty"` Medium *string `json:"medium,omitempty"` Source *string `json:"source,omitempty"` Term *string `json:"term,omitempty"` Content *string `json:"content,omitempty"` Campaign *string `json:"campaign,omitempty"` }
type PayloadValidationError ¶
type Pipeline ¶
type Relay ¶
type Session ¶
type Source ¶
type StringEnvelope ¶
type StringEnvelope struct { db.BasePKeylessModel EventMeta `json:"eventMeta" gorm:"type:string"` Pipeline `json:"pipeline" gorm:"type:string"` Device `json:"device" gorm:"type:string"` User `json:"user" gorm:"type:string"` Session `json:"session" gorm:"type:string"` Web `json:"web" gorm:"type:string"` Annotation `json:"annotation" gorm:"type:string"` Validation `json:"validation" gorm:"type:string"` Contexts event.Contexts `json:"contexts" gorm:"type:string"` Payload event.Payload `json:"payload" gorm:"type:string"` }
type User ¶
type Validation ¶
type Validation struct { IsValid *bool `json:"isValid,omitempty"` Error *ValidationError `json:"error,omitempty"` }
func (Validation) Scan ¶
func (e Validation) Scan(input interface{}) error
type ValidationError ¶
type ValidationError struct { ErrorType *string `json:"errorType,omitempty"` ErrorResolution *string `json:"errorResolution,omitempty"` Errors []PayloadValidationError `json:"payloadValidationErrors,omitempty"` }
func (*ValidationError) Scan ¶
func (e *ValidationError) Scan(input interface{}) error
Click to show internal directories.
Click to hide internal directories.