diff --git a/backend/pkg/messages/get_timestamp.go b/backend/pkg/messages/get_timestamp.go new file mode 100644 index 000000000..c8e42f756 --- /dev/null +++ b/backend/pkg/messages/get_timestamp.go @@ -0,0 +1,65 @@ +// Auto-generated, do not edit +package messages + + +func GetTimestamp(message Message) uint64 { + switch msg := message.(type) { + + case *IOSBatchMeta: + return msg.Timestamp + + case *IOSSessionStart: + return msg.Timestamp + + case *IOSSessionEnd: + return msg.Timestamp + + case *IOSMetadata: + return msg.Timestamp + + case *IOSCustomEvent: + return msg.Timestamp + + case *IOSUserID: + return msg.Timestamp + + case *IOSUserAnonymousID: + return msg.Timestamp + + case *IOSScreenChanges: + return msg.Timestamp + + case *IOSCrash: + return msg.Timestamp + + case *IOSScreenEnter: + return msg.Timestamp + + case *IOSScreenLeave: + return msg.Timestamp + + case *IOSClickEvent: + return msg.Timestamp + + case *IOSInputEvent: + return msg.Timestamp + + case *IOSPerformanceEvent: + return msg.Timestamp + + case *IOSLog: + return msg.Timestamp + + case *IOSInternalError: + return msg.Timestamp + + case *IOSNetworkCall: + return msg.Timestamp + + case *IOSIssueEvent: + return msg.Timestamp + + } + return uint64(message.Meta().Timestamp) +} + diff --git a/backend/services/ender/builder/builder.go b/backend/services/ender/builder/builder.go index f72737894..f17116501 100644 --- a/backend/services/ender/builder/builder.go +++ b/backend/services/ender/builder/builder.go @@ -108,11 +108,11 @@ func (b *builder) buildInputEvent() { } func (b *builder) handleMessage(message Message, messageID uint64) { - timestamp := uint64(message.Meta().Timestamp) - if b.timestamp <= timestamp { // unnecessary. TODO: test and remove + timestamp := GetTimestamp(message) + if b.timestamp <= timestamp { // unnecessary? TODO: test and remove b.timestamp = timestamp } - // Before the first timestamp. + // Might happen before the first timestamp. switch msg := message.(type) { case *SessionStart, *Metadata,