better error handling for broken redirects
This commit is contained in:
parent
ffae758587
commit
3cdb5418ff
30
command.go
30
command.go
|
@ -204,19 +204,28 @@ func generateReply(message *discordgo.MessageCreate, command *Command) string {
|
||||||
* Hence, small wrappers around the redirect function.
|
* Hence, small wrappers around the redirect function.
|
||||||
*/
|
*/
|
||||||
func modComplain(s *discordgo.Session, m *discordgo.MessageCreate) {
|
func modComplain(s *discordgo.Session, m *discordgo.MessageCreate) {
|
||||||
redirectMessage(s, m, config.ModChannel, true)
|
success := redirectMessage(s, m, config.ModChannel, true)
|
||||||
dm, _ := s.UserChannelCreate(m.Author.ID)
|
dm, _ := s.UserChannelCreate(m.Author.ID)
|
||||||
s.ChannelMessageSend(dm.ID, config.ComplaintReceivedMessage)
|
if success {
|
||||||
|
s.ChannelMessageSend(dm.ID, config.ComplaintReceivedMessage)
|
||||||
|
} else {
|
||||||
|
s.ChannelMessageSend(dm.ID, "Could not send message. Please tell kageru about this.")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func selphyComplain(s *discordgo.Session, m *discordgo.MessageCreate) {
|
func selphyComplain(s *discordgo.Session, m *discordgo.MessageCreate) {
|
||||||
dm_target, _ := s.UserChannelCreate("190958368301645824")
|
dm_target, _ := s.UserChannelCreate("190958368301645824")
|
||||||
redirectMessage(s, m, dm_target.ID, true)
|
success := redirectMessage(s, m, dm_target.ID, true)
|
||||||
dm, _ := s.UserChannelCreate(m.Author.ID)
|
dm, _ := s.UserChannelCreate(m.Author.ID)
|
||||||
s.ChannelMessageSend(dm.ID, config.ComplaintReceivedMessage)
|
if success {
|
||||||
|
s.ChannelMessageSend(dm.ID, config.ComplaintReceivedMessage)
|
||||||
|
} else {
|
||||||
|
s.ChannelMessageSend(dm.ID, "Could not send message. Please tell kageru about this.")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func redirectMessage(s *discordgo.Session, m *discordgo.MessageCreate, target string, isEmbed bool) {
|
func redirectMessage(s *discordgo.Session, m *discordgo.MessageCreate, target string, isEmbed bool) bool {
|
||||||
|
var err error
|
||||||
if isEmbed {
|
if isEmbed {
|
||||||
embed := &discordgo.MessageEmbed{
|
embed := &discordgo.MessageEmbed{
|
||||||
// Embed are anonymized by default for now. Fits the use case.
|
// Embed are anonymized by default for now. Fits the use case.
|
||||||
|
@ -224,10 +233,15 @@ func redirectMessage(s *discordgo.Session, m *discordgo.MessageCreate, target st
|
||||||
Color: 0xbb0000,
|
Color: 0xbb0000,
|
||||||
Description: m.Content,
|
Description: m.Content,
|
||||||
}
|
}
|
||||||
s.ChannelMessageSendEmbed(target, embed)
|
_, err = s.ChannelMessageSendEmbed(target, embed)
|
||||||
return
|
} else {
|
||||||
|
_, err = s.ChannelMessageSend(target, messageToString(m.Message))
|
||||||
}
|
}
|
||||||
s.ChannelMessageSend(target, messageToString(m.Message))
|
if err != nil {
|
||||||
|
log.Printf("Could not redirect message", err)
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
func echoMessage(s *discordgo.Session, m *discordgo.MessageCreate) {
|
func echoMessage(s *discordgo.Session, m *discordgo.MessageCreate) {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user