mirror of
https://github.com/matrix-org/dendrite.git
synced 2025-12-21 05:43:09 -06:00
Review comments, update sytest whitelist
This commit is contained in:
parent
01f2f80154
commit
d39b0a9088
|
|
@ -16,8 +16,6 @@ import (
|
||||||
"context"
|
"context"
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"fmt"
|
"fmt"
|
||||||
"math/rand"
|
|
||||||
"time"
|
|
||||||
|
|
||||||
"github.com/Shopify/sarama"
|
"github.com/Shopify/sarama"
|
||||||
"github.com/matrix-org/dendrite/eduserver/api"
|
"github.com/matrix-org/dendrite/eduserver/api"
|
||||||
|
|
@ -26,6 +24,7 @@ import (
|
||||||
"github.com/matrix-org/dendrite/internal"
|
"github.com/matrix-org/dendrite/internal"
|
||||||
"github.com/matrix-org/dendrite/internal/config"
|
"github.com/matrix-org/dendrite/internal/config"
|
||||||
"github.com/matrix-org/gomatrixserverlib"
|
"github.com/matrix-org/gomatrixserverlib"
|
||||||
|
"github.com/matrix-org/util"
|
||||||
log "github.com/sirupsen/logrus"
|
log "github.com/sirupsen/logrus"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
@ -91,7 +90,7 @@ func (t *OutputEDUConsumer) onSendToDeviceEvent(msg *sarama.ConsumerMessage) err
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// only send typing events which originated from us
|
// only send send-to-device events which originated from us
|
||||||
_, originServerName, err := gomatrixserverlib.SplitID('@', ote.Sender)
|
_, originServerName, err := gomatrixserverlib.SplitID('@', ote.Sender)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.WithError(err).WithField("user_id", ote.Sender).Error("Failed to extract domain from send-to-device sender")
|
log.WithError(err).WithField("user_id", ote.Sender).Error("Failed to extract domain from send-to-device sender")
|
||||||
|
|
@ -108,14 +107,6 @@ func (t *OutputEDUConsumer) onSendToDeviceEvent(msg *sarama.ConsumerMessage) err
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// Generate a random message ID for idempotency
|
|
||||||
chars := "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
|
|
||||||
random := rand.New(rand.NewSource(time.Now().UnixNano()))
|
|
||||||
messageID := make([]byte, 32)
|
|
||||||
for i := range messageID {
|
|
||||||
messageID[i] = chars[random.Intn(len(chars))]
|
|
||||||
}
|
|
||||||
|
|
||||||
// Pack the EDU and marshal it
|
// Pack the EDU and marshal it
|
||||||
edu := &gomatrixserverlib.EDU{
|
edu := &gomatrixserverlib.EDU{
|
||||||
Type: gomatrixserverlib.MDirectToDevice,
|
Type: gomatrixserverlib.MDirectToDevice,
|
||||||
|
|
@ -124,7 +115,7 @@ func (t *OutputEDUConsumer) onSendToDeviceEvent(msg *sarama.ConsumerMessage) err
|
||||||
tdm := gomatrixserverlib.ToDeviceMessage{
|
tdm := gomatrixserverlib.ToDeviceMessage{
|
||||||
Sender: ote.Sender,
|
Sender: ote.Sender,
|
||||||
Type: ote.Type,
|
Type: ote.Type,
|
||||||
MessageID: string(messageID),
|
MessageID: util.RandomString(32),
|
||||||
Messages: map[string]map[string]json.RawMessage{
|
Messages: map[string]map[string]json.RawMessage{
|
||||||
ote.UserID: {
|
ote.UserID: {
|
||||||
ote.DeviceID: ote.Content,
|
ote.DeviceID: ote.Content,
|
||||||
|
|
|
||||||
|
|
@ -316,12 +316,12 @@ Can recv a device message using /sync
|
||||||
Can recv device messages until they are acknowledged
|
Can recv device messages until they are acknowledged
|
||||||
Device messages with the same txn_id are deduplicated
|
Device messages with the same txn_id are deduplicated
|
||||||
Device messages wake up /sync
|
Device messages wake up /sync
|
||||||
# TODO: separate PR for: Can recv device messages over federation
|
Can recv device messages over federation
|
||||||
# TODO: separate PR for: Device messages over federation wake up /sync
|
Device messages over federation wake up /sync
|
||||||
Can send messages with a wildcard device id
|
Can send messages with a wildcard device id
|
||||||
Can send messages with a wildcard device id to two devices
|
Can send messages with a wildcard device id to two devices
|
||||||
Wildcard device messages wake up /sync
|
Wildcard device messages wake up /sync
|
||||||
# TODO: separate PR for: Wildcard device messages over federation wake up /sync
|
Wildcard device messages over federation wake up /sync
|
||||||
Can send a to-device message to two users which both receive it using /sync
|
Can send a to-device message to two users which both receive it using /sync
|
||||||
User can create and send/receive messages in a room with version 6
|
User can create and send/receive messages in a room with version 6
|
||||||
local user can join room with version 6
|
local user can join room with version 6
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue