disappearing images: implement

Signed-off-by: Sumner Evans <sumner.evans@automattic.com>
This commit is contained in:
Sumner Evans
2024-06-19 13:11:35 -06:00
parent 7963e52405
commit 2df6f73098
3 changed files with 8 additions and 4 deletions
-1
View File
@@ -48,7 +48,6 @@ func ParseDirectMediaInfo(mediaID networkid.MediaID) (info DirectMediaInfo, err
err = fmt.Errorf("invalid media ID") err = fmt.Errorf("invalid media ID")
return return
} }
fmt.Printf("%v\n", mediaID)
info.PeerType, err = PeerTypeFromByte(mediaID[1]) info.PeerType, err = PeerTypeFromByte(mediaID[1])
if err != nil { if err != nil {
return return
+1 -1
View File
@@ -53,7 +53,7 @@ func DownloadPhoto(ctx context.Context, client downloader.Client, media *tg.Mess
ThumbSize: largest.GetType(), ThumbSize: largest.GetType(),
} }
// TODO convert to streaming // TODO convert to streaming?
var buf bytes.Buffer var buf bytes.Buffer
storageFileTypeClass, err := downloader.NewDownloader().Download(client, &file).Stream(ctx, &buf) storageFileTypeClass, err := downloader.NewDownloader().Download(client, &file).Stream(ctx, &buf)
if err != nil { if err != nil {
+7 -2
View File
@@ -3,11 +3,13 @@ package msgconv
import ( import (
"context" "context"
"fmt" "fmt"
"time"
"github.com/gotd/td/tg" "github.com/gotd/td/tg"
"github.com/rs/zerolog" "github.com/rs/zerolog"
"go.mau.fi/util/exmime" "go.mau.fi/util/exmime"
"maunium.net/go/mautrix/bridgev2" "maunium.net/go/mautrix/bridgev2"
"maunium.net/go/mautrix/bridgev2/database"
"maunium.net/go/mautrix/bridgev2/networkid" "maunium.net/go/mautrix/bridgev2/networkid"
"maunium.net/go/mautrix/event" "maunium.net/go/mautrix/event"
"maunium.net/go/mautrix/id" "maunium.net/go/mautrix/id"
@@ -61,9 +63,12 @@ func (mc *MessageConverter) ToMatrix(ctx context.Context, portal *bridgev2.Porta
if err != nil { if err != nil {
return nil, err return nil, err
} }
if _, ok := media.GetTTLSeconds(); ok { if ttl, ok := media.GetTTLSeconds(); ok {
// TODO set the ttl on the converted message
filename = "disappearing_image" + exmime.ExtensionFromMimetype(mimeType) filename = "disappearing_image" + exmime.ExtensionFromMimetype(mimeType)
cm.Disappear = database.DisappearingSetting{
Type: database.DisappearingTypeAfterSend,
Timer: time.Duration(ttl) * time.Second,
}
} else { } else {
filename = "image" + exmime.ExtensionFromMimetype(mimeType) filename = "image" + exmime.ExtensionFromMimetype(mimeType)
} }