Add regexp to clean ugly Slack URLs

This commit is contained in:
Chris Sexton 2016-05-17 22:16:00 -04:00
parent b048890b05
commit f665b166ad
1 changed files with 6 additions and 0 deletions

View File

@ -11,6 +11,7 @@ import (
"log"
"net/http"
"net/url"
"regexp"
"strconv"
"strings"
"sync/atomic"
@ -158,11 +159,16 @@ func (s *Slack) Serve() {
}
}
var urlDetector = regexp.MustCompile(`<(.+)://([^|^>]+).*>`)
// Convert a slackMessage to a msg.Message
func (s *Slack) buildMessage(m slackMessage) msg.Message {
log.Printf("DEBUG: msg: %#v", m)
text := html.UnescapeString(m.Text)
// remove <> from URLs, URLs may also be <url|description>
text = urlDetector.ReplaceAllString(text, "${1}://${2}")
isCmd, text := bot.IsCmd(s.config, text)
isAction := strings.HasPrefix(text, "/me ")