queue: include send time in messages
This commit is contained in:
@@ -125,11 +125,21 @@ func webhook(q *kgo.Client, secret []byte, errs chan<- error) http.HandlerFunc {
|
||||
slog.String("broadcaster", ev.Event.Broadcaster),
|
||||
slog.String("id", ev.Event.ID),
|
||||
)
|
||||
// Use the external clock for timestamps.
|
||||
tm, err := time.Parse(time.RFC3339Nano, r.Header.Get("Twitch-Eventsub-Message-Timestamp"))
|
||||
if err != nil {
|
||||
log.LogAttrs(ctx, slog.LevelWarn, "bad timestamp",
|
||||
slog.String("timestamp", r.Header.Get("Twitch-Eventsub-Message-Timestamp")),
|
||||
slog.Any("err", err),
|
||||
)
|
||||
tm = time.Now()
|
||||
}
|
||||
msg := queue.Message{
|
||||
ID: ev.Event.ID,
|
||||
Channel: ev.Event.Broadcaster,
|
||||
Sender: queue.Sender(secret, ev.Event.Broadcaster, ev.Event.Chatter),
|
||||
Text: ev.Event.Message.Text,
|
||||
ID: ev.Event.ID,
|
||||
Channel: ev.Event.Broadcaster,
|
||||
Sender: queue.Sender(secret, ev.Event.Broadcaster, ev.Event.Chatter),
|
||||
Timestamp: tm.UnixNano(),
|
||||
Text: ev.Event.Message.Text,
|
||||
}
|
||||
// TODO(branden): the context in the http request cancels once this
|
||||
// handler returns, which means the producer doesn't relay it.
|
||||
|
Reference in New Issue
Block a user