Remove label from URLs (slack). Closes #205

If slack detects a text contains an url it changes it to <http://url|url>.
Strip the |url so that http://url remains.
This commit is contained in:
Wim 2017-06-26 22:16:19 +02:00
parent c17512b7ab
commit c268e90f49
1 changed files with 9 additions and 0 deletions

View File

@ -185,6 +185,7 @@ func (b *Bslack) handleSlack() {
} }
texts := strings.Split(message.Text, "\n") texts := strings.Split(message.Text, "\n")
for _, text := range texts { for _, text := range texts {
text = b.replaceURL(text)
flog.Debugf("Sending message from %s on %s to gateway", message.Username, b.Account) flog.Debugf("Sending message from %s on %s to gateway", message.Username, b.Account)
b.Remote <- config.Message{Text: text, Username: message.Username, Channel: message.Channel, Account: b.Account, Avatar: b.getAvatar(message.Username), UserID: message.UserID} b.Remote <- config.Message{Text: text, Username: message.Username, Channel: message.Channel, Account: b.Account, Avatar: b.getAvatar(message.Username), UserID: message.UserID}
} }
@ -279,3 +280,11 @@ func (b *Bslack) replaceMention(text string) string {
} }
return text return text
} }
func (b *Bslack) replaceURL(text string) string {
results := regexp.MustCompile(`<(.*?)\|.*?>`).FindAllStringSubmatch(text, -1)
for _, r := range results {
text = strings.Replace(text, r[0], r[1], -1)
}
return text
}