Low-latency AT Protocol interaction indexer.
atproto firehose microcosm
Something went wrong. Try again.
12345678910111213141516171819202122232425262728293031323334package firehose
import ( "context" "fmt"
"github.com/bluesky-social/indigo/api/atproto" "github.com/bluesky-social/indigo/atproto/syntax")
func (c *Consumer) HandleSync(ctx context.Context, event *atproto.SyncSubscribeRepos_Sync) error { if err := c.Store.SaveCursor(ctx, event.Seq); err != nil { c.Logger.Error("could not save cursor", "err", err) }
did, err := syntax.ParseDID(event.Did) if err != nil { return fmt.Errorf("parse sync DID: %w", err) }
go func() { if err := c.Store.DeleteAllLinks(ctx, did.String()); err != nil { c.Logger.Error("could not clear synced repo links", "did", did, "err", err) return }
if err := c.Backfill.Repo(ctx, did.String(), c.WantedCollections); err != nil { c.Logger.Error("could not backfill synced repo", "did", did, "err", err) } }()
return nil}