fix: generate file name from hash if empty in FileFromMedia function

This commit is contained in:
krau
2025-01-04 20:56:24 +08:00
parent 2b0bfac171
commit 3b42ba86b3

View File

@@ -2,6 +2,7 @@ package bot
import (
"context"
"crypto/md5"
"fmt"
"github.com/celestix/gotgproto"
@@ -84,10 +85,14 @@ func FileFromMedia(media tg.MessageMediaClass) (*types.File, error) {
var fileName string
for _, attribute := range document.Attributes {
if name, ok := attribute.(*tg.DocumentAttributeFilename); ok {
fileName = name.FileName
fileName = name.GetFileName()
break
}
}
if fileName == "" {
fileName = fmt.Sprintf("%x", md5.Sum(document.GetFileReference()))
logger.L.Warnf("File name is empty, using hash: %s", fileName)
}
return &types.File{
Location: document.AsInputDocumentFileLocation(),
FileSize: document.Size,