Basic message converter and login

Signed-off-by: Sumner Evans <sumner.evans@automattic.com>
This commit is contained in:
Sumner Evans
2024-05-14 10:03:15 -06:00
parent 043cb7f854
commit 0d502a8c55
6 changed files with 437 additions and 4 deletions
+25
View File
@@ -0,0 +1,25 @@
package msgconv
import (
"context"
"github.com/gotd/td/telegram"
"github.com/rs/zerolog"
"maunium.net/go/mautrix/event"
"maunium.net/go/mautrix/id"
)
type PortalMethods interface {
DownloadMedia(ctx context.Context, uri id.ContentURIString, file *event.EncryptedFileInfo) ([]byte, error)
UploadMedia(ctx context.Context, roomID id.RoomID, data []byte, fileName, mimeType string) (url id.ContentURIString, file *event.EncryptedFileInfo, err error)
}
type MessageConverter struct {
PortalMethods
Client *telegram.Client
}
func (*MessageConverter) getLogger(ctx context.Context) zerolog.Logger {
return zerolog.Ctx(ctx).With().Str("component", "message_converter").Logger()
}