|
|
|
@ -10,6 +10,7 @@ import (
|
|
|
|
|
|
|
|
|
|
"github.com/42wim/matterbridge/bridge/config"
|
|
|
|
|
"github.com/42wim/matterbridge/bridge/helper"
|
|
|
|
|
"github.com/davecgh/go-spew/spew"
|
|
|
|
|
tgbotapi "github.com/go-telegram-bot-api/telegram-bot-api/v5"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
@ -123,6 +124,25 @@ func (b *Btelegram) handleUsername(rmsg *config.Message, message *tgbotapi.Messa
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if message.SenderChat != nil { //nolint:nestif
|
|
|
|
|
rmsg.UserID = strconv.FormatInt(message.SenderChat.ID, 10)
|
|
|
|
|
if b.GetBool("UseFirstName") {
|
|
|
|
|
rmsg.Username = message.SenderChat.FirstName
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if rmsg.Username == "" || rmsg.Username == "Channel_Bot" {
|
|
|
|
|
rmsg.Username = message.SenderChat.UserName
|
|
|
|
|
|
|
|
|
|
if rmsg.Username == "" || rmsg.Username == "Channel_Bot" {
|
|
|
|
|
rmsg.Username = message.SenderChat.FirstName
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
// only download avatars if we have a place to upload them (configured mediaserver)
|
|
|
|
|
if b.General.MediaServerUpload != "" || (b.General.MediaServerDownload != "" && b.General.MediaDownloadPath != "") {
|
|
|
|
|
b.handleDownloadAvatar(message.SenderChat.ID, rmsg.Channel)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// if we really didn't find a username, set it to unknown
|
|
|
|
|
if rmsg.Username == "" {
|
|
|
|
|
rmsg.Username = unknownUser
|
|
|
|
@ -139,6 +159,10 @@ func (b *Btelegram) handleRecv(updates <-chan tgbotapi.Update) {
|
|
|
|
|
continue
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if b.GetInt("debuglevel") == 1 {
|
|
|
|
|
spew.Dump(update.Message)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var message *tgbotapi.Message
|
|
|
|
|
|
|
|
|
|
rmsg := config.Message{Account: b.Account, Extra: make(map[string][]interface{})}
|
|
|
|
|