Compare commits
	
		
			11 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|   | 6bef998bb3 | ||
|   | 919a0309ad | ||
|   | 95bcca7335 | ||
|   | c78bd24c61 | ||
|   | d2cfd235ef | ||
|   | f8bf7f8d76 | ||
|   | 8432330cb2 | ||
|   | 02577a2b5c | ||
|   | 73501739d5 | ||
|   | ba674af5d4 | ||
|   | 3c85d937c6 | 
| @@ -76,9 +76,10 @@ func (b *Bdiscord) Connect() error { | ||||
| 	if err != nil { | ||||
| 		return err | ||||
| 	} | ||||
| 	serverName := strings.Replace(b.GetString("Server"), "ID:", "", -1) | ||||
| 	b.Nick = userinfo.Username | ||||
| 	for _, guild := range guilds { | ||||
| 		if guild.Name == b.GetString("Server") { | ||||
| 		if guild.Name == serverName || guild.ID == serverName { | ||||
| 			b.Channels, err = b.c.GuildChannels(guild.ID) | ||||
| 			b.guildID = guild.ID | ||||
| 			if err != nil { | ||||
|   | ||||
| @@ -172,7 +172,6 @@ func (b *Birc) JoinChannel(channel config.ChannelInfo) error { | ||||
| 	} else { | ||||
| 		b.i.Cmd.Join(channel.Name) | ||||
| 	} | ||||
| 	b.authDone = false | ||||
| 	return nil | ||||
| } | ||||
|  | ||||
|   | ||||
| @@ -202,6 +202,13 @@ func (b *Bslack) handleStatusEvent(ev *slack.MessageEvent, rmsg *config.Message) | ||||
| 		rmsg.Event = config.EventJoinLeave | ||||
| 	case sChannelTopic, sChannelPurpose: | ||||
| 		rmsg.Event = config.EventTopicChange | ||||
| 	case sMessageChanged: | ||||
| 		rmsg.Text = ev.SubMessage.Text | ||||
| 		// handle deleted thread starting messages | ||||
| 		if ev.SubMessage.Text == "This message was deleted." { | ||||
| 			rmsg.Event = config.EventMsgDelete | ||||
| 			return true | ||||
| 		} | ||||
| 	case sMessageDeleted: | ||||
| 		rmsg.Text = config.EventMsgDelete | ||||
| 		rmsg.Event = config.EventMsgDelete | ||||
|   | ||||
| @@ -48,6 +48,7 @@ const ( | ||||
| 	sChannelLeave    = "channel_leave" | ||||
| 	sChannelJoined   = "channel_joined" | ||||
| 	sMemberJoined    = "member_joined_channel" | ||||
| 	sMessageChanged  = "message_changed" | ||||
| 	sMessageDeleted  = "message_deleted" | ||||
| 	sSlackAttachment = "slack_attachment" | ||||
| 	sPinnedItem      = "pinned_item" | ||||
| @@ -76,14 +77,9 @@ func New(cfg *bridge.Config) bridge.Bridger { | ||||
| 	// Print a deprecation warning for legacy non-bot tokens (#527). | ||||
| 	token := cfg.GetString(tokenConfig) | ||||
| 	if token != "" && !strings.HasPrefix(token, "xoxb") { | ||||
| 		cfg.Log.Error("Non-bot token detected. It is STRONGLY recommended to use a proper bot-token instead.") | ||||
| 		cfg.Log.Error("Legacy tokens may be deprecated by Slack at short notice. See the Matterbridge GitHub wiki for a migration guide.") | ||||
| 		cfg.Log.Error("See https://github.com/42wim/matterbridge/wiki/Slack-bot-setup") | ||||
| 		cfg.Log.Error("") | ||||
| 		cfg.Log.Error("To continue using a legacy token please move your configuration to a \"slack-legacy\" bridge instead.") | ||||
| 		cfg.Log.Error("See https://github.com/42wim/matterbridge/wiki/Section-Slack-(basic)#legacy-configuration)") | ||||
| 		cfg.Log.Error("Delaying start of bridge by 30 seconds. Future Matterbridge release will fail here unless you use a \"slack-legacy\" bridge.") | ||||
| 		time.Sleep(30 * time.Second) | ||||
| 		cfg.Log.Warn("Non-bot token detected. It is STRONGLY recommended to use a proper bot-token instead.") | ||||
| 		cfg.Log.Warn("Legacy tokens may be deprecated by Slack at short notice. See the Matterbridge GitHub wiki for a migration guide.") | ||||
| 		cfg.Log.Warn("See https://github.com/42wim/matterbridge/wiki/Slack-bot-setup") | ||||
| 		return NewLegacy(cfg) | ||||
| 	} | ||||
| 	return newBridge(cfg) | ||||
| @@ -356,6 +352,10 @@ func (b *Bslack) editMessage(msg *config.Message, channelInfo *slack.Channel) (b | ||||
| } | ||||
|  | ||||
| func (b *Bslack) postMessage(msg *config.Message, messageParameters *slack.PostMessageParameters, channelInfo *slack.Channel) (string, error) { | ||||
| 	// don't post empty messages | ||||
| 	if msg.Text == "" { | ||||
| 		return "", nil | ||||
| 	} | ||||
| 	for { | ||||
| 		_, id, err := b.rtm.PostMessage(channelInfo.ID, msg.Text, *messageParameters) | ||||
| 		if err == nil { | ||||
| @@ -385,11 +385,16 @@ func (b *Bslack) uploadFile(msg *config.Message, channelID string) { | ||||
| 		ts := time.Now() | ||||
| 		b.Log.Debugf("Adding file %s to cache at %s with timestamp", fi.Name, ts.String()) | ||||
| 		b.cache.Add("filename"+fi.Name, ts) | ||||
| 		initialComment := fmt.Sprintf("File from %s", msg.Username) | ||||
| 		if fi.Comment != "" { | ||||
| 			initialComment += fmt.Sprintf("with comment: %s", fi.Comment) | ||||
| 		} | ||||
| 		res, err := b.sc.UploadFile(slack.FileUploadParameters{ | ||||
| 			Reader:         bytes.NewReader(*fi.Data), | ||||
| 			Filename:       fi.Name, | ||||
| 			Channels:       []string{channelID}, | ||||
| 			InitialComment: fi.Comment, | ||||
| 			Reader:          bytes.NewReader(*fi.Data), | ||||
| 			Filename:        fi.Name, | ||||
| 			Channels:        []string{channelID}, | ||||
| 			InitialComment:  initialComment, | ||||
| 			ThreadTimestamp: msg.ParentID, | ||||
| 		}) | ||||
| 		if err != nil { | ||||
| 			b.Log.Errorf("uploadfile %#v", err) | ||||
|   | ||||
							
								
								
									
										17
									
								
								changelog.md
									
									
									
									
									
								
							
							
						
						
									
										17
									
								
								changelog.md
									
									
									
									
									
								
							| @@ -1,3 +1,20 @@ | ||||
| # v1.12.2 | ||||
|  | ||||
| ## Bugfix | ||||
| * irc: Fix multiple channel join regression. Closes #639 | ||||
| * slack: Make slack-legacy change less restrictive (#626) | ||||
|  | ||||
| # v1.12.1 | ||||
|  | ||||
| ## Bugfix | ||||
| * discord: fix regression on server ID connection #619 #617 | ||||
| * discord: Limit discord username via webhook to 32 chars | ||||
| * slack: Make sure threaded files stay in thread (slack). Fixes #590 | ||||
| * slack: Do not post empty messages (slack). Fixes #574 | ||||
| * slack: Handle deleted/edited thread starting messages (slack). Fixes #600 (#605) | ||||
| * irc: Rework connection logic (irc) | ||||
| * irc: Fix Nickserv logic (irc) #602 | ||||
|  | ||||
| # v1.12.0 | ||||
|  | ||||
| ## Breaking changes | ||||
|   | ||||
| @@ -14,7 +14,7 @@ import ( | ||||
| ) | ||||
|  | ||||
| var ( | ||||
| 	version = "1.12.1-dev" | ||||
| 	version = "1.12.2" | ||||
| 	githash string | ||||
| ) | ||||
|  | ||||
|   | ||||
| @@ -1389,7 +1389,7 @@ enable=true | ||||
|  | ||||
|         #OPTIONAL - webhookurl only works for discord (it needs a different URL for each cahnnel) | ||||
|         [gateway.inout.options] | ||||
|         webhookurl=""https://discordapp.com/api/webhooks/123456789123456789/C9WPqExYWONPDZabcdef-def1434FGFjstasJX9pYht73y" | ||||
|         webhookurl="https://discordapp.com/api/webhooks/123456789123456789/C9WPqExYWONPDZabcdef-def1434FGFjstasJX9pYht73y" | ||||
|  | ||||
|     #API example | ||||
|     #[[gateway.inout]] | ||||
|   | ||||
		Reference in New Issue
	
	Block a user