add vehicle tracking, ESS samples
This commit is contained in:
parent
4a528fe85a
commit
0fa1de3b4e
10 changed files with 824 additions and 7 deletions
|
@ -10,10 +10,7 @@ import (
|
|||
)
|
||||
|
||||
type IEventHandler interface {
|
||||
HandleEvent(ctx context.Context, event types.ESSEvent)
|
||||
HandleDeath(ctx context.Context, event types.ESSEvent)
|
||||
HandleExperience(ctx context.Context, event types.ESSEvent)
|
||||
HandleAnalytics(ctx context.Context, event types.ESSEvent)
|
||||
HandleEvent(context.Context, types.ESSEvent)
|
||||
}
|
||||
|
||||
type EventHandler struct {
|
||||
|
@ -23,7 +20,8 @@ type EventHandler struct {
|
|||
func NewEventHandler(db *sql.DB) EventHandler {
|
||||
return EventHandler{
|
||||
Ingest: &ingest.Ingest{
|
||||
PlayerStore: store.NewPlayerStore(db),
|
||||
PlayerStore: store.NewPlayerStore(db),
|
||||
VehicleStore: store.NewVehicleStore(db),
|
||||
},
|
||||
}
|
||||
}
|
||||
|
@ -48,6 +46,7 @@ func (eh *EventHandler) HandleDeath(ctx context.Context, event types.ESSEvent) {
|
|||
// log.Println("got pop event")
|
||||
pe := types.PopEventFromESSEvent(event, false)
|
||||
eh.Ingest.TrackPop(ctx, pe)
|
||||
|
||||
}
|
||||
|
||||
if event.AttackerCharacterID != "" && event.AttackerCharacterID != "0" && event.AttackerTeamID != 0 {
|
||||
|
|
|
@ -23,7 +23,7 @@ func (i *Ingest) TrackPop(ctx context.Context, event types.PopEvent) {
|
|||
|
||||
err := i.fixupPlayer(ctx, player)
|
||||
if err != nil {
|
||||
log.Println("ingest: player fixup failed, dropping event", err)
|
||||
// log.Println("ingest: player fixup failed, dropping event", err)
|
||||
return
|
||||
}
|
||||
|
||||
|
@ -31,6 +31,16 @@ func (i *Ingest) TrackPop(ctx context.Context, event types.PopEvent) {
|
|||
if err != nil {
|
||||
log.Println("TrackPop Insert failed", err)
|
||||
}
|
||||
|
||||
if event.VehicleName == "unknown" {
|
||||
return
|
||||
}
|
||||
|
||||
vehicle := event.ToVehicle()
|
||||
err = i.VehicleStore.Insert(ctx, vehicle)
|
||||
if err != nil {
|
||||
log.Println("TrackVehicle Insert failed", err)
|
||||
}
|
||||
}
|
||||
|
||||
func (i *Ingest) fixupPlayer(ctx context.Context, player *types.Player) error {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue