Fix merge conflict
This commit is contained in:
@@ -100,139 +100,6 @@ func (b *Btelegram) Send(msg config.Message) (string, error) {
|
|||||||
return b.sendMessage(chatid, msg.Username, msg.Text)
|
return b.sendMessage(chatid, msg.Username, msg.Text)
|
||||||
}
|
}
|
||||||
|
|
||||||
<<<<<<< HEAD
|
|
||||||
func (b *Btelegram) handleRecv(updates <-chan tgbotapi.Update) {
|
|
||||||
for update := range updates {
|
|
||||||
b.Log.Debugf("== Receiving event: %#v", update.Message)
|
|
||||||
|
|
||||||
if update.Message == nil && update.ChannelPost == nil && update.EditedMessage == nil && update.EditedChannelPost == nil {
|
|
||||||
b.Log.Error("Getting nil messages, this shouldn't happen.")
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
var message *tgbotapi.Message
|
|
||||||
|
|
||||||
rmsg := config.Message{Account: b.Account, Extra: make(map[string][]interface{})}
|
|
||||||
|
|
||||||
// handle channels
|
|
||||||
if update.ChannelPost != nil {
|
|
||||||
message = update.ChannelPost
|
|
||||||
rmsg.Text = message.Text
|
|
||||||
}
|
|
||||||
|
|
||||||
// edited channel message
|
|
||||||
if update.EditedChannelPost != nil && !b.GetBool("EditDisable") {
|
|
||||||
message = update.EditedChannelPost
|
|
||||||
rmsg.Text = rmsg.Text + message.Text + b.GetString("EditSuffix")
|
|
||||||
}
|
|
||||||
|
|
||||||
// handle groups
|
|
||||||
if update.Message != nil {
|
|
||||||
message = update.Message
|
|
||||||
rmsg.Text = message.Text
|
|
||||||
}
|
|
||||||
|
|
||||||
// edited group message
|
|
||||||
if update.EditedMessage != nil && !b.GetBool("EditDisable") {
|
|
||||||
message = update.EditedMessage
|
|
||||||
rmsg.Text = rmsg.Text + message.Text + b.GetString("EditSuffix")
|
|
||||||
}
|
|
||||||
|
|
||||||
// set the ID's from the channel or group message
|
|
||||||
rmsg.ID = strconv.Itoa(message.MessageID)
|
|
||||||
rmsg.Channel = strconv.FormatInt(message.Chat.ID, 10)
|
|
||||||
|
|
||||||
// handle username
|
|
||||||
if message.From != nil {
|
|
||||||
rmsg.UserID = strconv.Itoa(message.From.ID)
|
|
||||||
if b.GetBool("UseFirstName") {
|
|
||||||
rmsg.Username = message.From.FirstName
|
|
||||||
}
|
|
||||||
if rmsg.Username == "" {
|
|
||||||
rmsg.Username = message.From.UserName
|
|
||||||
if rmsg.Username == "" {
|
|
||||||
rmsg.Username = message.From.FirstName
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// only download avatars if we have a place to upload them (configured mediaserver)
|
|
||||||
if b.General.MediaServerUpload != "" {
|
|
||||||
b.handleDownloadAvatar(message.From.ID, rmsg.Channel)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// if we really didn't find a username, set it to unknown
|
|
||||||
if rmsg.Username == "" {
|
|
||||||
rmsg.Username = "unknown"
|
|
||||||
}
|
|
||||||
|
|
||||||
// handle any downloads
|
|
||||||
err := b.handleDownload(message, &rmsg)
|
|
||||||
if err != nil {
|
|
||||||
b.Log.Errorf("download failed: %s", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
// handle forwarded messages
|
|
||||||
if message.ForwardFrom != nil {
|
|
||||||
usernameForward := ""
|
|
||||||
if b.GetBool("UseFirstName") {
|
|
||||||
usernameForward = message.ForwardFrom.FirstName
|
|
||||||
}
|
|
||||||
if usernameForward == "" {
|
|
||||||
usernameForward = message.ForwardFrom.UserName
|
|
||||||
if usernameForward == "" {
|
|
||||||
usernameForward = message.ForwardFrom.FirstName
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if usernameForward == "" {
|
|
||||||
usernameForward = "unknown"
|
|
||||||
}
|
|
||||||
rmsg.Text = "Forwarded from " + usernameForward + ": " + rmsg.Text
|
|
||||||
}
|
|
||||||
|
|
||||||
// quote the previous message
|
|
||||||
if message.ReplyToMessage != nil {
|
|
||||||
usernameReply := ""
|
|
||||||
if message.ReplyToMessage.From != nil {
|
|
||||||
if b.GetBool("UseFirstName") {
|
|
||||||
usernameReply = message.ReplyToMessage.From.FirstName
|
|
||||||
}
|
|
||||||
if usernameReply == "" {
|
|
||||||
usernameReply = message.ReplyToMessage.From.UserName
|
|
||||||
if usernameReply == "" {
|
|
||||||
usernameReply = message.ReplyToMessage.From.FirstName
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if usernameReply == "" {
|
|
||||||
usernameReply = "unknown"
|
|
||||||
}
|
|
||||||
if !b.GetBool("QuoteDisable") {
|
|
||||||
if message.ReplyToMessage.Text != "" {
|
|
||||||
rmsg.Text = b.handleQuote(rmsg.Text, usernameReply, message.ReplyToMessage.Text)
|
|
||||||
} else if message.ReplyToMessage.Caption != "" {
|
|
||||||
rmsg.Text = b.handleQuote(rmsg.Text, usernameReply, message.ReplyToMessage.Caption)
|
|
||||||
} else {
|
|
||||||
rmsg.Text = b.handleQuote(rmsg.Text, usernameReply, "matterbridge: Unsupported message content")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if rmsg.Text != "" || len(rmsg.Extra) > 0 {
|
|
||||||
rmsg.Text = helper.RemoveEmptyNewLines(rmsg.Text)
|
|
||||||
// channels don't have (always?) user information. see #410
|
|
||||||
if message.From != nil {
|
|
||||||
rmsg.Avatar = helper.GetAvatar(b.avatarMap, strconv.Itoa(message.From.ID), b.General)
|
|
||||||
}
|
|
||||||
|
|
||||||
b.Log.Debugf("<= Sending message from %s on %s to gateway", rmsg.Username, b.Account)
|
|
||||||
b.Log.Debugf("<= Message is %#v", rmsg)
|
|
||||||
b.Remote <- rmsg
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
=======
|
|
||||||
>>>>>>> upstream/master
|
|
||||||
func (b *Btelegram) getFileDirectURL(id string) string {
|
func (b *Btelegram) getFileDirectURL(id string) string {
|
||||||
res, err := b.c.GetFileDirectURL(id)
|
res, err := b.c.GetFileDirectURL(id)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -273,4 +140,4 @@ func (b *Btelegram) cacheAvatar(msg *config.Message) (string, error) {
|
|||||||
b.avatarMap[msg.UserID] = fi.SHA
|
b.avatarMap[msg.UserID] = fi.SHA
|
||||||
}
|
}
|
||||||
return "", nil
|
return "", nil
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user