bygdata/pkg/devtodev/event/session.go

61 lines
1.7 KiB
Go

package event
func DeviceInfo(timestamp int64, fields map[string]interface{}) (map[string]interface{}, error) {
event := map[string]interface{}{
"code": "di",
"timestamp": timestamp,
}
if err := addFields(event, fields, "code", "timestamp"); err != nil {
return nil, err
}
return event, nil
}
func SessionStart(timestamp int64, level int, fields map[string]interface{}) (map[string]interface{}, error) {
event := map[string]interface{}{
"code": "ss",
"timestamp": timestamp,
"level": level,
}
if err := addFields(event, fields, "code", "timestamp", "level"); err != nil {
return nil, err
}
return event, nil
}
func UserEngagement(timestamp int64, level int, length int, fields map[string]interface{}) (map[string]interface{}, error) {
event := map[string]interface{}{
"code": "ue",
"timestamp": timestamp,
"level": level,
"length": length,
}
if err := addFields(event, fields, "code", "timestamp", "level", "length"); err != nil {
return nil, err
}
return event, nil
}
func TrackingStatus(timestamp int64, trackingAllowed bool, fields map[string]interface{}) (map[string]interface{}, error) {
event := map[string]interface{}{
"code": "ts",
"timestamp": timestamp,
"trackingAllowed": trackingAllowed,
}
if err := addFields(event, fields, "code", "timestamp", "trackingAllowed"); err != nil {
return nil, err
}
return event, nil
}
func Alive(timestamp int64, fields map[string]interface{}) (map[string]interface{}, error) {
event := map[string]interface{}{
"code": "al",
"timestamp": timestamp,
}
if err := addFields(event, fields, "code", "timestamp"); err != nil {
return nil, err
}
return event, nil
}