feat: Add ReplyToMessage context for Telegram
This commit is contained in:
parent
4e1ca1e9c8
commit
e6deebdc2c
1 changed files with 26 additions and 2 deletions
|
|
@ -431,6 +431,25 @@ func (c *TelegramChannel) handleMessage(ctx context.Context, message *telego.Mes
|
|||
}
|
||||
return localPath // fallback: use raw path
|
||||
}
|
||||
if message.ReplyToMessage != nil {
|
||||
replyText := message.ReplyToMessage.Text
|
||||
if replyText == "" {
|
||||
replyText = message.ReplyToMessage.Caption
|
||||
}
|
||||
if message.ReplyToMessage.Document != nil {
|
||||
if replyText != "" {
|
||||
replyText += "\n"
|
||||
}
|
||||
fileName := message.ReplyToMessage.Document.FileName
|
||||
if fileName == "" {
|
||||
fileName = "document"
|
||||
}
|
||||
replyText += fmt.Sprintf("[attached file: %s]", fileName)
|
||||
}
|
||||
if replyText != "" {
|
||||
content += fmt.Sprintf("> Replying to: %s\n\n", utils.Truncate(replyText, 200))
|
||||
}
|
||||
}
|
||||
|
||||
if message.Text != "" {
|
||||
content += message.Text
|
||||
|
|
@ -481,14 +500,19 @@ func (c *TelegramChannel) handleMessage(ctx context.Context, message *telego.Mes
|
|||
if message.Document != nil {
|
||||
docPath := c.downloadFile(ctx, message.Document.FileID, "")
|
||||
if docPath != "" {
|
||||
mediaPaths = append(mediaPaths, storeMedia(docPath, "document"))
|
||||
fileName := message.Document.FileName
|
||||
if fileName == "" {
|
||||
fileName = "document"
|
||||
}
|
||||
mediaPaths = append(mediaPaths, storeMedia(docPath, fileName))
|
||||
if content != "" {
|
||||
content += "\n"
|
||||
}
|
||||
content += "[file]"
|
||||
content += fmt.Sprintf("[attached file: %s]", fileName)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if content == "" {
|
||||
content = "[empty message]"
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue