connector/tomatrix: log when hashing unsupported media type
Signed-off-by: Sumner Evans <sumner.evans@automattic.com>
This commit is contained in:
@@ -208,7 +208,7 @@ func (t *TelegramClient) HandleMatrixMessage(ctx context.Context, msg *bridgev2.
|
||||
case *tg.UpdateNewMessage:
|
||||
msg := update.Message.(*tg.Message)
|
||||
hasher.Write([]byte(msg.Message))
|
||||
hasher.Write(mediaHashID(msg.Media))
|
||||
hasher.Write(mediaHashID(ctx, msg.Media))
|
||||
}
|
||||
}
|
||||
if tgMessageID == 0 {
|
||||
@@ -293,7 +293,7 @@ func (t *TelegramClient) HandleMatrixEdit(ctx context.Context, msg *bridgev2.Mat
|
||||
case *tg.UpdateNewMessage:
|
||||
msg := update.Message.(*tg.Message)
|
||||
hasher.Write([]byte(msg.Message))
|
||||
hasher.Write(mediaHashID(msg.Media))
|
||||
hasher.Write(mediaHashID(ctx, msg.Media))
|
||||
}
|
||||
}
|
||||
default:
|
||||
|
||||
@@ -33,12 +33,14 @@ type ttlable interface {
|
||||
GetTTLSeconds() (value int, ok bool)
|
||||
}
|
||||
|
||||
func mediaHashID(media tg.MessageMediaClass) []byte {
|
||||
switch media := media.(type) {
|
||||
func mediaHashID(ctx context.Context, m tg.MessageMediaClass) []byte {
|
||||
switch media := m.(type) {
|
||||
case *tg.MessageMediaPhoto:
|
||||
return binary.BigEndian.AppendUint64(nil, uint64(media.Photo.GetID()))
|
||||
case *tg.MessageMediaDocument:
|
||||
return binary.BigEndian.AppendUint64(nil, uint64(media.Document.GetID()))
|
||||
default:
|
||||
zerolog.Ctx(ctx).Error().Type("media_type", m).Msg("Attempted to get hash for unsupported media type ID")
|
||||
}
|
||||
return nil
|
||||
}
|
||||
@@ -67,7 +69,7 @@ func (c *TelegramClient) mediaToMatrix(ctx context.Context, portal *bridgev2.Por
|
||||
}, nil, nil, nil
|
||||
case tg.MessageMediaPhotoTypeID, tg.MessageMediaDocumentTypeID:
|
||||
converted, disappearingSetting, err := c.convertMediaRequiringUpload(ctx, portal, intent, msg.ID, media)
|
||||
return converted, disappearingSetting, mediaHashID(media), err
|
||||
return converted, disappearingSetting, mediaHashID(ctx, media), err
|
||||
case tg.MessageMediaContactTypeID:
|
||||
return c.convertContact(media), nil, nil, nil
|
||||
case tg.MessageMediaGeoTypeID, tg.MessageMediaGeoLiveTypeID, tg.MessageMediaVenueTypeID:
|
||||
|
||||
Reference in New Issue
Block a user