Add support for edited messages (discord)

This commit is contained in:
Wim 2017-04-15 19:00:15 +02:00
parent 02612c0061
commit d1dd6c3440
2 changed files with 21 additions and 0 deletions

View File

@ -52,6 +52,7 @@ func (b *bdiscord) Connect() error {
flog.Info("Connection succeeded")
b.c.AddHandler(b.messageCreate)
b.c.AddHandler(b.memberUpdate)
b.c.AddHandler(b.messageUpdate)
err = b.c.Open()
if err != nil {
flog.Debugf("%#v", err)
@ -104,6 +105,18 @@ func (b *bdiscord) Send(msg config.Message) error {
return nil
}
func (b *bdiscord) messageUpdate(s *discordgo.Session, m *discordgo.MessageUpdate) {
if b.Config.EditDisable {
return
}
// only when message is actually edited
if m.Message.EditedTimestamp != "" {
flog.Debugf("Sending edit message")
m.Content = m.Content + b.Config.EditSuffix
b.messageCreate(s, (*discordgo.MessageCreate)(m))
}
}
func (b *bdiscord) messageCreate(s *discordgo.Session, m *discordgo.MessageCreate) {
// not relay our own messages
if m.Author.Username == b.Nick {

View File

@ -391,6 +391,14 @@ Token="Yourtokenhere"
#REQUIRED
Server="yourservername"
#Disable sending of edits to other bridges
#OPTIONAL (default false)
EditDisable=false
#Message to be appended to every edited message
#OPTIONAL (default empty)
EditSuffix=" (edited)"
#Nicks you want to ignore.
#Messages from those users will not be sent to other bridges.
#OPTIONAL