mirror of
https://github.com/element-hq/dendrite.git
synced 2025-09-13 21:02:25 +03:00
Refactor notifications (#2688)
This PR changes the handling of notifications - removes the `StreamEvent` and `ReadUpdate` stream - listens on the `OutputRoomEvent` stream in the UserAPI to inform the SyncAPI about unread notifications - listens on the `OutputReceiptEvent` stream in the UserAPI to set receipts/update notifications - sets the `read_markers` directly from within the internal UserAPI Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
This commit is contained in:
parent
f18bce93cc
commit
249b32c4f3
32 changed files with 368 additions and 598 deletions
|
@ -81,16 +81,17 @@ func NewInternalAPI(
|
|||
KeyAPI: keyAPI,
|
||||
RSAPI: rsAPI,
|
||||
DisableTLSValidation: cfg.PushGatewayDisableTLSValidation,
|
||||
PgClient: pgClient,
|
||||
}
|
||||
|
||||
readConsumer := consumers.NewOutputReadUpdateConsumer(
|
||||
base.ProcessContext, cfg, js, db, pgClient, userAPI, syncProducer,
|
||||
receiptConsumer := consumers.NewOutputReceiptEventConsumer(
|
||||
base.ProcessContext, cfg, js, db, syncProducer, pgClient,
|
||||
)
|
||||
if err := readConsumer.Start(); err != nil {
|
||||
logrus.WithError(err).Panic("failed to start user API read update consumer")
|
||||
if err := receiptConsumer.Start(); err != nil {
|
||||
logrus.WithError(err).Panic("failed to start user API receipt consumer")
|
||||
}
|
||||
|
||||
eventConsumer := consumers.NewOutputStreamEventConsumer(
|
||||
eventConsumer := consumers.NewOutputRoomEventConsumer(
|
||||
base.ProcessContext, cfg, js, db, pgClient, rsAPI, syncProducer,
|
||||
)
|
||||
if err := eventConsumer.Start(); err != nil {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue