summaryrefslogtreecommitdiffstats
path: root/bridge/telegram
diff options
context:
space:
mode:
Diffstat (limited to 'bridge/telegram')
-rw-r--r--bridge/telegram/handlers.go18
-rw-r--r--bridge/telegram/telegram.go8
2 files changed, 7 insertions, 19 deletions
diff --git a/bridge/telegram/handlers.go b/bridge/telegram/handlers.go
index a93c71bb..84881f7f 100644
--- a/bridge/telegram/handlers.go
+++ b/bridge/telegram/handlers.go
@@ -220,20 +220,10 @@ func (b *Btelegram) handleDownloadAvatar(userid int, channel string) {
}
func (b *Btelegram) maybeConvertTgs(name *string, data *[]byte) {
- var format string
- switch b.GetString("MediaConvertTgs") {
- case FormatWebp:
- b.Log.Debugf("Tgs to WebP conversion enabled, converting %v", name)
- format = FormatWebp
- case FormatPng:
- // The WebP to PNG converter can't handle animated webp files yet,
- // and I'm not going to write a path for x/image/webp.
- // The error message would be:
- // conversion failed: webp: non-Alpha VP8X is not implemented
- // So instead, we tell lottie to directly go to PNG.
- b.Log.Debugf("Tgs to PNG conversion enabled, converting %v", name)
- format = FormatPng
- default:
+ format := b.GetString("MediaConvertTgs")
+ if helper.SupportsFormat(format) {
+ b.Log.Debugf("Format supported by %s, converting %v", helper.LottieBackend(), name)
+ } else {
// Otherwise, no conversion was requested. Trying to run the usual webp
// converter would fail, because '.tgs.webp' is actually a gzipped JSON
// file, and has nothing to do with WebP.
diff --git a/bridge/telegram/telegram.go b/bridge/telegram/telegram.go
index 0f08a45b..199a76ab 100644
--- a/bridge/telegram/telegram.go
+++ b/bridge/telegram/telegram.go
@@ -17,8 +17,6 @@ const (
HTMLFormat = "HTML"
HTMLNick = "htmlnick"
MarkdownV2 = "MarkdownV2"
- FormatPng = "png"
- FormatWebp = "webp"
)
type Btelegram struct {
@@ -32,10 +30,10 @@ func New(cfg *bridge.Config) bridge.Bridger {
if tgsConvertFormat != "" {
err := helper.CanConvertTgsToX()
if err != nil {
- log.Fatalf("Telegram bridge configured to convert .tgs files to '%s', but lottie does not appear to work:\n%#v", tgsConvertFormat, err)
+ log.Fatalf("Telegram bridge configured to convert .tgs files to '%s', but %s does not appear to work:\n%#v", tgsConvertFormat, helper.LottieBackend(), err)
}
- if tgsConvertFormat != FormatPng && tgsConvertFormat != FormatWebp {
- log.Fatalf("Telegram bridge configured to convert .tgs files to '%s', but only '%s' and '%s' are supported.", FormatPng, FormatWebp, tgsConvertFormat)
+ if !helper.SupportsFormat(tgsConvertFormat) {
+ log.Fatalf("Telegram bridge configured to convert .tgs files to '%s', but %s doesn't support it.", tgsConvertFormat, helper.LottieBackend())
}
}
return &Btelegram{Config: cfg, avatarMap: make(map[string]string)}